NETWORK ANTI-TAMPERING SYSTEM
A system and method detects or prevents tampering of computer networks by transmitting address messages indicating that unused network addresses are in use. The systems and method handles requests for network resources, such as Address Resolution Protocol (ARP) messages, and provides fabricated information to a potential attacker to disrupt an attack on an information system.
Latest Ridgeback Network Defense, Inc. Patents:
The present application is a divisional application of U.S. patent application Ser. No. 16/212,270, filed Dec. 6, 2018 which claims priority to U.S. Provisional Patent Application Ser. No. 62/595,836, filed Dec. 7, 2017, which is incorporated herein by reference in its entirety.
TECHNICAL FIELDThe present invention relates generally to information processing systems and methods, and more particularly to the preventing or discouraging of tampering with computer networks by unauthorized persons or computer programs. These unwanted intrusions into or tampering with computer networks are also referred to as, for example, hacking, cracking, breaking into, penetrating, breaching, exploiting, and compromising.
BACKGROUND OF THE INVENTIONDetecting and preventing the tampering with computer networks used by information processing systems can be extremely difficult. The complexity of modern information processing systems is such that there almost always exist any number of software flaws or unexpected combinations of input that would allow a malicious person or specially designed computer program to gain unauthorized access to an information processing system. Although various security mechanisms, such as password authentication or encryption, can be placed in front of an information processing system, it is almost always the case that either there exist methods to circumvent the security mechanisms or the security mechanisms themselves have exploitable flaws.
In order to combat this problem, it is necessary to be able to detect tampering and unwanted access to computer networks. Three methods are already in use to detect tampering include pattern recognition, signal detection, and virtual execution, though none of the three produce satisfactory results in the face of determined attackers. Pattern recognition is based on checking for the validity of the input data using finite state automata. Signal detection is based on checking for the validity of input data using statistical methods. Virtual execution is processing the input data in a facsimile environment and watching for unexpected outputs.
Pattern recognition, or pattern matching, is the detection of valid input by using a finite state automaton. Input data are compared to previously defined patterns. Matches between input data and patterns result in some action being taken, such as discarding the input data or sending an alert to a monitoring service. Pattern recognition is deficient as an anti-tampering method because it requires comparisons to be made to a necessarily finite set of predefined patterns. However, there are a practically infinite number of arrangements of malicious data that can evade a given finite number of patterns.
Signal detection is the detection of valid input by means of statistical methods. A person or program selects a set of statistical features to analyze in potential input data. Those selected features are then measured as input data arrives and features that exceed certain variances are marked as indicative of unacceptable input data. For example, a very weak radio signal (i.e., one of low amplitude) may be seen as an unacceptable signal, while a very strong radio signal (i.e., one of high amplitude) may be seen as an acceptable signal. Signal detection is deficient as an anti-tampering method because classifiers operate according to receiver operating characteristic (ROC) curves, which always require an engineering tradeoff between false positives (i.e., false alarms) and false negatives (i.e., unacceptable or unwanted data).
Virtual execution, sometimes called sandboxing, is the processing of input in a safe, facsimile environment and watching for unexpected outputs. Malicious computer programs are sometimes encrypted or delivered by seemingly non-malicious loader programs. These methods of delivery can be used to evade pattern matching systems. In a virtual execution process, any potentially malicious computer program is isolated in an ephemeral virtual execution environment. The program is then run and the environment is monitored for exceptional conditions such as the deletion of files or privilege escalation. These exceptional conditions can be indicative of the presence of an undesirable computer program, which may then be subsequently rejected. Virtual execution is deficient as an anti-tampering method because malicious data and programs can be camouflaged to evade detection as being executable, or can be engineered to manipulate the virtual execution environment in ways that prevent the production of exceptional conditions, for example, by detecting that they are being executed in a virtual environment and altering their behavior.
One problem with all three of the common tamper-detection methods—pattern recognition, signal detection, and virtual execution—is that they are relatively static and non-adaptive. That is, a malicious person or computer program is free to try many combinations of malformed input, mapping out which input data will or will not pass through the security mechanism.
For the foregoing reasons, there exists a need for an adaptive or otherwise non-static system that prevents or discourages the tampering with information processing systems.
BRIEF SUMMARY OF THE INVENTIONThe present invention is directed to a system and method to detect or prevent tampering of computer networks. In particular, the invention is directed to a system and method that alters a computer network in such a way that it becomes very difficult for an attacker to use the computer network as a means for one information processing system to attack another information processing systems. For example, the systems or methods may handle requests for network resources, such as Address Resolution Protocol (ARP) messages, and may provide fabricated information to a potential attacker to disrupt an attack on an information system.
The present invention is directed to systems and methods to detect or prevent tampering or unauthorized access of information processing systems. Information processing systems, such as personal computers or servers, can be compromised, or controlled, by unauthorized persons or programs. Once one information processing system has been compromised, it is very common for the unauthorized user or program to attempt to spread its control to other information processing systems on the same network as the compromised information processing system. Since information processing systems are most commonly connected via computer networks, the unauthorized person or program will read and write data from and to a computer network in an attempt to break into another information processing system. This modality of attack is commonly known as lateral movement.
For illustrative purposes and without limitation, the network 100 may use the IPV4 protocol at OSI layer 3 and the Address Resolution protocol at OSI layer 2. Other protocols, such IPV6 or PPP, may be substituted by the systems and methods described herein in similar fashion to the examples described below. In order for data to be sent through a local Ethernet network to an information processing system with an assigned IP address, the sending information processing system must first determine the local MAC address associated with the destination IP address.
When an unauthorized person or program tries to spread its control of one information processing system 110 to other information processing systems 120 connected via an Ethernet network, the person or program will necessarily use messages like the ARP messages described in
The proposed system and method listens for address request messages, for example ARP request messages, transmitted across a network.
The system and method may be configured to allow anti-tampering system 510 to respond to address messages, such as if the ARP request messages, transmitted on network 100. If an ARP message is for an IP address that is not in use by any information processing systems present on network 100, the anti-tampering system 510 may be configured to respond to such messages. Anti-tampering system 510 may also be configured to monitor network traffic that passes through a specific piece of network equipment, such as switch 310, and respond to all messages for IP addresses not identified as valid for the network or any subset of the network. The anti-tampering system may also respond to requests corresponding to specific addresses where it determines that a system 110 sending an address message is not authorized to access the information system corresponding to a specific address. If the anti-tampering system 510 responds to a message, for example, an ARP request message, then the system will transmit a reply, for example an ARP reply message, that includes the IP address from the ARP request message and a fabricated MAC address that is not in use on the local Ethernet network.
The system and method do not require prior knowledge of the network addresses in use or the topology of the network, and do not require the network or information processing systems being protected to be reconfigured in any way. The system and method provide utility of network security and insight into network behavior.
The network anti-tampering systems and methods thus may prevent criminals from tampering with computer systems. A criminal or other unauthorized person or program will necessarily need to understand the topology of the local network in order to launch an efficient and effective attack on other information processing systems attached to the same network. The systems and methods will interfere with the criminal's attempts to understand the network topology, limiting the criminal's ability to access information on information processing systems present in the network.
The system and method may also detect misconfigured information processing systems. Sometimes an information processing system will be configured to contact network addresses not in use on the network. The invention makes obvious when an information processing system is attempting to send messages to local network addresses that are not in use, and can flag the particular information processing system as making such requests. The system may send communications to a network administrator or third party indicating the flagged information processing system, or may automatically take steps to remove the information processing system from the network or reconfigure the information processing system.
The system and method further provide visibility into which systems are communicating with each other on a particular network. This is possible because the systems and methods may listen to all address messages, for example ARP request messages at a specific network location (e.g., switch 310), and thus have a record of all communications between information processing systems on the network. The system and method may use this record of communications between information processing systems to generate patterns of normal communication within the network. If the system then detects aberrations or changes in the normal communication patters, it can provide an alert to a network administrator or third party, or automatically take action with respect to the information processing units determined to be communicating outside of the normal pattern.
Claims
1. A system to detect and prevent network tampering that receives ARP request messages and transmits ARP reply messages for any IP address not in use on the local Ethernet network, comprising: an information processing system, an Ethernet network interface connecting the information processing system to the Ethernet network, and a software program that receives and transmits ARP messages.
2. The system of claim 1, wherein the information processing system is a custom programmed FPGA.
3. The system of claim 1, wherein the information processing system is a custom programmed ASIC.
4. The system of claim 1, wherein the information processing system is a custom
5. The system of claim 1, wherein the information processing system is a virtual machine running under the control of a hypervisor.
6. The system of claim 1, wherein the information processing system is a virtual machine running under the control of a hypervisor and the software program is a network device driver.
Type: Application
Filed: Mar 29, 2022
Publication Date: Jul 21, 2022
Applicant: Ridgeback Network Defense, Inc. (Baltimore, MD)
Inventor: Thomas Sheppard PHILLIPS (Finksburg, MD)
Application Number: 17/707,794