Security method for detecting intrusions that exploit misinterpretation of supplied data
AssigneeVMware, Inc.
InventorsGeoffrey Pike, Edward N. Leake
Life of this patent
Estimating the term…
Loading patent…
AssigneeVMware, Inc.
InventorsGeoffrey Pike, Edward N. Leake
Estimating the term…
Mechanisms have been developed for securing computational systems against certain forms of attack. In particular, it has been discovered that, by scanning an input string for subsequences contained therein and configuring the computational system to generate a fault (or other triggered event) coincident with access to a memory location corresponding to one or more possible interpretations of data contained in the input string, it is possible to detect and/or interdict many forms of attack. For example, some realizations may scan for subsequences susceptible to interpretation as valid, canonical addresses, or as addresses in ranges that contain code, the stack, the heap, and/or system data structures such as the global offset table. Some realizations may scan for subsequences susceptible to interpretation as format strings or as machine code or code (source or otherwise) that could be executed in an execution environment (such as a Java™ virtual machine) or compiled for execution.
A security method for a computational system, the computational system including a memory system storing an application, a processor for executing the application, and an input/output system for receiving an input string, the method comprising:
A security method for a computational system, the computational system including a memory system storing an application, a processor for executing the application, and an input/output system for receiving an input string, the method comprising:
A machine readable data storage medium, the medium embodying virtualization software for execution on system hardware that includes system memory, a processor, a memory management unit, and a input/output interface, the virtualization software being configured to execute a virtual machine, the virtual machine including virtual system hardware and guest software that includes a guest operating system, and a guest application, the guest software executing on a virtual CPU implemented as part of the virtual system hardware by the virtualization software, the virtualization software further being configured to perform a method comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
No related US applications are recorded in the indexed filing history.
1. Field of the Invention
The present invention relates generally to computational systems and, more particularly, to security techniques for identifying and (in some cases) interdicting information system intrusions.
2. Description of the Related Art
The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
FIG. 1 depicts a network of computer systems in which techniques of the present invention may be employed.
FIG. 2 illustrates the flow of input data bearings subsequences that may constitute or contribute to an intrusion attempt.
The use of the same reference symbols in different drawings indicates similar or identical items.
Mechanisms have been developed for configuring an intrusion detection system to identify possible exploitations of data identified in inputs. In particular, techniques have been developed for identifying subsequences susceptible to malicious exploitation in the course of a given computation and for configuring the computation (or computational system) to trigger an evaluation and/or response when certain execution conditions suggest use of data or code implicated by the identified subsequences. The developed techniques are particularly effective against exploit strategies employed by some of most devastating Internet worms from 1988 to present.
The method(s) by which we discover an attack differ(s) significantly from conventional intrusion detection methods, which typically scan for signatures or require examination of source or binary code prior to execution. Instead, we identify data in input streams that could be misinterpreted (or maliciously exploited) and take specific steps to react to such misinterpretations (or exploits) if and when they occur. In this sense, our techniques are data-centric, rather than code-centric. Our techniques can be employed to allow most modern CPUs to execute all the binary code in the system without examination of the binaries or corresponding source codes. We employ advanced but now-commonplace hardware features to transfer control to trusted code if certain “suspicious” or “dangerous” actions are taken during the execution of the original code. Our techniques are applicable to exploits that involve operating system code as well as applications.
Computer malware detection or handling, e.g. anti-virus arrangements: static detection
Computing and data processing
About 4 years 9 months of term left · ends 31 Jul 2031 (estimated)