Source: http://www.google.com/patents/US8127353?dq=4393663
Timestamp: 2017-06-28 06:38:05
Document Index: 424327155

Matched Legal Cases: ['Application No. 60', 'application No. 07', 'application No. 07015003', 'application No. 05773540', 'application No. 07014575', 'application No. 05773501', 'application No. 06837333', 'Application No. 2007', 'application No. 05773501', 'application No. 2007', 'application No. 2007']

Patent US8127353 - Real-time user awareness for a computer network - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inPatentsA computer system, device, computer software, and/or method performed by a computer system, is provided for determining a user name likely to be associated with an attack, a configuration, or a vulnerability. First data is obtained which associates user names with individual IP addresses onto which the...http://www.google.com/patents/US8127353?utm_source=gb-gplus-sharePatent US8127353 - Real-time user awareness for a computer networkAdvanced Patent SearchTry the new Google Patents, with machine-classified Google Scholar results, and Japanese and South Korean patents.Publication numberUS8127353 B2Publication typeGrantApplication numberUS 12/149,196Publication dateFeb 28, 2012Filing dateApr 29, 2008Priority dateApr 30, 2007Fee statusPaidAlso published asCA2685292A1, CA2685292C, EP2156290A1, EP2156290A4, US20080276319, WO2008134057A1Publication number12149196, 149196, US 8127353 B2, US 8127353B2, US-B2-8127353, US8127353 B2, US8127353B2InventorsBrian RittermannOriginal AssigneeSourcefire, Inc.Export CitationBiBTeX, EndNote, RefManPatent Citations (155), Non-Patent Citations (176), Referenced by (10), Classifications (10), Legal Events (4) External Links: USPTO, USPTO Assignment, EspacenetReal-time user awareness for a computer network
US 8127353 B2Abstract
A computer system, device, computer software, and/or method performed by a computer system, is provided for determining a user name likely to be associated with an attack, a configuration, or a vulnerability. First data is obtained which associates user names with individual IP addresses onto which the user names were logged in. Second data is obtained which associates attacks, configurations, or vulnerabilities with individual IP addresses on which the attacks occurred or on which the configurations or vulnerabilities exist. The user names from the first data are associated with the attacks, configurations or vulnerabilities from the second data based on having the same IP address during a log-in. An individual user name is indicated as being associated with attacks which occurred while the individual user name was logged in or with configurations or vulnerabilities for an IP address onto which the user logs in.
1. A method performed by a computer system, for determining a user name likely to be associated with an attack, a configuration, or a vulnerability, comprising:
obtaining first data which associates user names with individual IP addresses onto which the user names were logged in by the computer system;
obtaining second data which associates attacks, configurations, or vulnerabilities with individual IP addresses on which the attacks occurred or on which the configurations were changed or vulnerabilities existed;
determining whether the user name from the first data was logged-in to the IP address at a time of the attack, the configuration change, or the vulnerability existence; and
associating the user names from the first data with the attacks, configurations or vulnerabilities from the second data based on having the same IP address during a log-in,
wherein an individual user name is indicated as being associated with attacks which occurred or with configurations which were changed or with vulnerabilities which existed, while the individual user name was logged in instead of while logged out for an IP address onto which the user logs in.
2. The method according to claim 1, further comprising displaying a list of attacks, configurations or vulnerabilities and respective user names individually associated therewith.
3. The method according to claim 1, further comprising deriving vulnerabilities for the configurations from the second data, and displaying a list of configurations which have the derived vulnerabilities and respective user names individually associated therewith.
4. The method according to claim 1, further comprising querying for respective real names of the user names, and providing the respective real names and attacks, configurations or vulnerabilities individually associated therewith.
5. The method according to claim 1, wherein the user name is determined to be no longer associated with the IP address if there is another log-in on the IP address.
6. The method according to claim 1, wherein the user name includes an e-mail address or an IM (instant message) address.
7. The method according to claim 1, further comprising writing rules for a compliance policy or remediation system based on the user name.
8. A non-transitory computer-readable medium comprising instructions being executed by a computer, the instructions including a computer-implemented method for determining a user name likely to be associated with an attack, a configuration, or a vulnerability, the instructions for implementing:
obtaining first data which associates user names with individual IP addresses onto which the user names were logged in;
obtaining second data which associates attacks, configurations or vulnerabilities with individual IP addresses on which the attacks occurred or on which the configurations were changed or vulnerabilities existed;
wherein an individual user name is indicated as being associated with attacks which occurred with configurations which were changed or with vulnerabilities which existed, while the individual user name was logged in instead of while logged out for an IP address onto which the user logs in.
9. The non-transitory computer-readable medium according to claim 8, further comprising instructions for displaying a list of attacks, configurations or vulnerabilities and respective user names individually associated therewith.
10. The non-transitory computer-readable medium according to claim 8, further comprising instructions for deriving vulnerabilities for the configurations from the second data, and displaying a list of configurations which have the derived vulnerabilities and respective user names individually associated therewith.
11. The non-transitory computer-readable medium according to claim 8, further comprising instructions for querying for respective real names of the user names, and providing the respective real names and attacks, configurations or vulnerabilities individually associated therewith.
12. The non-transitory computer-readable medium according to claim 8, wherein the user name is determined to be no longer associated with the IP address if there is another log-in on the IP address.
13. The non-transitory computer-readable medium according to claim 8, wherein the user name includes an e-mail address or an IM (instant message) address.
14. The non-transitory computer-readable medium according to claim 8, further comprising instructions for writing rules for a compliance engine or remediation system based on the user name.
15. A computer system for determining a user name likely to be associated with an attack, a configuration, or a vulnerability, comprising:
a processor cooperatively operable with the memory and the display, and configured to facilitate:
wherein an individual user name is indicated in a screen to be displayed to a user as being associated with attacks which occurred or with configurations which were changed or with vulnerabilities which existed, while the individual user name was logged in instead of while logged out for an IP address onto which the user logs in.
16. The computer system according to claim 15, wherein the processor is further configured to display, on the display, a list of attacks, configurations or vulnerabilities and respective user names individually associated therewith.
17. The computer system according to claim 15, wherein the processor is further configured to derive vulnerabilities for the configurations from the second data, and to display a list of configurations which have the derived vulnerabilities and respective user names individually associated therewith.
18. The computer system according to claim 15, wherein the processor is further configured to query for respective real names of the user names, and providing the respective real names and attacks, configurations or vulnerabilities individually associated therewith.
19. The computer system according to claim 15, wherein the processor is further configured to determine that the user name is no longer associated with the IP address if there is another log-in on the IP address.
20. The computer system according to claim 15, wherein the user name includes an e-mail address or an IM (instant message) address.
This application claims the benefit of U.S. Provisional Application No. 60/924,070, filed Apr. 30, 2007, which is expressly incorporated herein by reference.
The technical field relates in general to computer network security, and more specifically to linking computer security-related network behavior, traffic, and events to individual users.
Previously, network intrusion detection technologies can determine that there are security problems, for example, an attack, a configuration problem, or a vulnerability, related to a particular computer system or network device. For example, network intrusion detection technologies and network intrusion prevention technologies such as Sourcefire SNORT sensors can analyze network traffic to notice attacks. As another example, Sourcefire RNA technology can maintain a list of IP (Internet Protocol) addresses and corresponding configurations, such as operating system, services, client applications, TCP (transmission control protocol) and UDP (user datagram protocol) protocols, and the like. Thus, a security administrator can obtain information about which particular systems have experienced attacks, or have problematic configurations, or have vulnerabilities.
A security administrator might want to talk to the user that operates the system having the security problems, for example, to discuss the user's activities, such as opening of e-mails, visiting of internet sites, installing the latest virus software, or other reasons regarding the user's actions or inaction which may affect or compromise security. In practice, to track the computers of individual users, administrators typically maintain a spreadsheet of computers assigned to users. Unfortunately, computers tend to be shuffled between users at an organization without necessarily informing the administrators. Consequently, the administrators' spreadsheets tend to not reflect the current user. The security administrator does not have the capability readily to find out which user is actually connected to various activities which cause security problems.
Other available technology includes software which can match network traffic to a user which logged in, for example eTelemetry™ “LOCATE” software, which outputs a user name and IP address pair. However, users can log in to different machines. Moreover, such software does not track when the user logs out. Hence, an administrator that attempted to utilize the information output by the network intrusion detection/prevention system as well as the output from the eTelemetry software would have great difficulty determining with any certainty which user is responsible for the security problems.
Accordingly, if an awareness of the user and a computer system is to be provided, the data about the operational network environment and attacks, and the users logging in and out must be updated in real-time.
Therefore, one or more embodiments provide systems, computer readable mediums, and methods performed by a computer system, for determining a user name likely to be associated with an attack, a configuration, or a vulnerability. First data is obtained which associates user names with individual IP addresses onto which the user names were logged in. Second data is obtained which associates attacks, configurations, or vulnerabilities with individual IP addresses on which the attacks occurred or on which the configurations or vulnerabilities exist. The user names from the first data are associated with the attacks, configurations or vulnerabilities from the second data based on having the same IP address during a log-in. An individual user name is indicated as being associated with attacks which occurred while the individual user name was logged in or with configurations or vulnerabilities for an IP address onto which the user logs in.
Another embodiment provides a computer system or a device for determining a user name likely to be associated with an attack, a configuration, or a vulnerability. The computer system or device includes a display operable to receive screens to be displayed to a user. Also included is a processor cooperatively operable with the memory and the display. The processor is configured to facilitate: obtaining first data which associates user names with individual IP addresses onto which the user names were logged in; obtaining second data which associates attacks, configurations or vulnerabilities with individual IP addresses on which the attacks occurred or on which the configurations or vulnerabilities exist; and associating the user names from the first data with the attacks, configurations or vulnerabilities from the second data based on having the same IP address during a log-in. An individual user name is indicated in a screen to be displayed to a user as being associated with attacks which occurred while the individual user name was logged in and with configurations or vulnerabilities for an IP address onto which the user logs in.
The accompanying figures, where like reference numerals refer to identical or functionally similar elements and which together with the detailed description below are incorporated in and form part of the specification, serve to further illustrate various exemplary embodiments and to explain various principles and advantages in accordance with the embodiments.
FIG. 1 is a block diagram illustrating a simplified and representative architecture associated with user awareness;
FIG. 2 is a block diagram illustrating components of a computer system related to user awareness;
FIG. 3 is a display illustrating user login history for a host;
FIG. 4 is an example message of a user login;
FIG. 5 is an example message of a user account update;
FIG. 6 is an example user interface display;
FIG. 7 is another example user interface display;
FIG. 8 is a flow chart illustrating a procedure for user awareness;
FIG. 9 is a flow chart illustrating a procedure for user name login/IP address data; and
FIG. 10 is a flow chart illustrating a procedure for attack/configuration/vulnerability/IP address data.
In overview, the present disclosure concerns analysis of network traffic on communication networks, often referred to as packet switching networks, which support communication from wireless and/or wire line devices to a destination. Communications on such communication networks may be analyzed for intrusion detection/prevention, for example according to various rules, and the communications further may be analyzed to determine when users log in. More particularly, various inventive concepts and principles are embodied in systems, devices, and methods therein for providing real time user awareness for a computer network, optionally in connection with intrusion detection/prevention systems.
The instant disclosure is provided to further explain in an enabling fashion the best modes of performing one or more embodiments. The disclosure is further offered to enhance an understanding and appreciation for the inventive principles and advantages thereof, rather than to limit in any manner the invention. The invention is defined solely by the appended claims including any amendments made during the pendency of this application and all equivalents of those claims as issued.
Relational terms such as first and second, and the like, if any, are used herein solely to distinguish one from another entity, item, or action without necessarily requiring or implying any actual such relationship or order between such entities, items or actions. Some embodiments may include a plurality of processes or steps, which can be performed in any order, unless expressly and necessarily limited to a particular order; i.e., processes or steps that are not so limited may be performed in any order.
Much of the inventive functionality and many of the inventive principles when implemented, are best supported with or in software or integrated circuits (ICs), such as a digital signal processor and software therefore, and/or application specific ICs. It is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by, for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein will be readily capable of generating such software instructions or ICs with minimal experimentation. Therefore, in the interest of brevity and minimization of any risk of obscuring the principles and concepts, further discussion of such software and ICs, if any, will be limited to the essentials with respect to the principles and concepts used by the exemplary embodiments.
As further discussed herein below, various inventive principles and combinations thereof are advantageously employed to provide real time user awareness (RUA). RUA can deliver powerful user identification capabilities to speed incident containment, enhance control, eliminate manual efforts and associated costs, and improve security decision-making. “User awareness” refers to the capability of identifying a particular user name as being associated with particular attacks, configurations, and/or vulnerabilities; “real-time” refers to the capability of providing the user awareness at or shortly after the event leading to the user awareness occurs.
RUA enables customers for the first time to correlate threat, endpoint, and network intelligence with user identity information, equipping them to identify the source of policy breaches, attacks, or network vulnerabilities immediately. By linking network behavior, traffic, and events directly to individual users, RUA empowers administrators to mitigate risk, block users or user activity, and take action to protect others from disruption-tightening security without hindering business operations or employee productivity. These capabilities also significantly improve customers' audit controls and assure regulatory compliance.
RUA is the latest industry altering technology to fill what has been a significant hole in companies' security strategies. Building on network awareness, such as provided by Sourcefire RNA, customers are provided with user awareness, so that they can set and enforce policies based on exact knowledge of specific users and their activities on the network. This is a significant advantage for any company that has implemented a NAC strategy only to find out that they are still having network usage issues.
Furthermore, when used as part of an integrated Enterprise Threat Management (ETM) approach, RUA allows customers to create user-based policy and response rules and apply these across, for example, intrusion prevention, NBA (network behavior analysis), NAC (network access control), and Vulnerability Assessment security components. This enables users to implement and enforce policies specific to individuals, departments, or other user characteristics.
RUA delivers integrated user awareness never before available, including 24×7 passive identity discovery with comprehensive user identity information capture which can include, e.g., e-mail address, IM (instant message) address, and IP address. Optionally, it can also identify all the IP addresses to which a user is connected, along with a time stamp, to support long-time horizon analysis and forensics. With the user intelligence provided by RUA, administrators can immediately identify, list, and respond to users, for example, those who continually download enormous files or run unauthorized applications.
Further in accordance with exemplary embodiments, a real time user awareness (RUA) is provided to allow a customer to see user names that are associated with IP addresses on the network. For example, a hypertext transfer protocol (HTTP) flow is seen that downloaded two gigabytes of information. The administrator can see the user name (such as an e-mail address or IM address) of the person who initiated that flow.
A goal of RUA is to allow an administrator to see not only which hosts are on the network, and what they are doing, but also what users are on the network and what the users are doing. This disclosure includes a discussion of detection of user names on the network and communication and display of this information.
Referring now to FIG. 1, a block diagram illustrating a simplified and representative architecture associated with user awareness will be discussed and described. In this illustration, there is a sensor and location functional block 101 and a computer system 103.
The computer system 103 can include an attack/configuration/vulnerability/user name correlator 131, an optional real name and contact info locator 133, user name/attack/vulnerability/configuration association data 135, optional configuration/vulnerability correlator 137, policy engine rule processor 139, and policy rules 141.
The attack/configuration/vulnerability/user name correlator 131 can associate a user name from the first data, with an attack, or a configuration, or a vulnerability from the second data. The correlation can be made by referring, in the second data, to an attack, configuration, or vulnerability and IP address associated therewith, as well as the time of the attack, configuration, or vulnerability. Then, the correlator 131 can determine which user name was logged on to that IP address during the time of the attack, configuration or vulnerability; and the correlator 131 can indicate that user name (which was logged on that IP address) as being associated with the attack, configuration, or vulnerability from the second data. The correlator 131 can perform this association in reverse, that is, beginning with the attack, configuration, or vulnerability on an IP address, and can determine the user which was logged on that IP address at that time. The correlator 131 can perform this association repetitively, for example, when new attacks, configurations, or vulnerabilities are received in the first data, or when new users are received in the first data. The user name/attack/vulnerability/configuration association data 135 can store each user name from the first data, which was logged on that IP address, which was determined to be associated with the attack, configuration, or vulnerability from the second data, for example, as a list or addressable database.
The optional real name and contact info locator 133 can provide a user's real name and/or contact information based on a user name. The real name and contact information corresponding to a user can be obtained using an address book application, for example, LDAP (lightweight directory access protocol). The real name and contact information can be used, for example, by a system administrator to contact the user and discuss suggestions for maintaining network security for the IP address onto which the user logs in (e.g., updating software, changing a password, or similar). Accordingly, one or more embodiments include querying for respective real names of the user names, and providing the respective real names and attacks, configurations or vulnerabilities individually associated therewith.
The configuration/vulnerability correlator 137 can be provided with a configuration, and can return an indication of one or more vulnerabilities associated with the configuration. Known software can be utilized as the correlator 137, for example, Sourcefire RNA or Sourcefire Decense Center. The correlator 137 can be included, for example, if the optional vulnerability detection engine 117 is not included, or if additional checking of vulnerabilities is desired in addition to the vulnerability detection engine 117. Accordingly, one or more embodiments provides for deriving vulnerabilities for the configurations from the second data, and displaying a list of configurations which have the derived vulnerabilities and respective user names individually associated therewith.
The policy rules 141 are the rules that can be used by, for example, an intrusion detection system or intrusion prevention system, to define an attack, and are conventionally created in conjunction with a policy engine rule processor 139. Techniques are known for creating policy rules. The user name with associated attack, configuration, and/or vulnerability can be provided to the policy engine rule processor 139, to be used in connection with creating policy rules.
The sensor and locate functional block 101 can include a user identity detection engine 107, a user name/IP address correlator 105, an intrusion detection system 109, an event/IP address correlator 111, a configuration detection engine 113, a configuration/IP address correlator 115, an optional vulnerability detection engine 117, and an optional vulnerability/IP address correlator 119.
The sensor and locate functional block 101 provides first data 121 which associates user names with individual IP addresses onto which the user names were logged, and second data 123 which associates attacks, configurations, or vulnerabilities with individual IP addresses on which the attacks occurred, or on which the vulnerability or configuration exists.
The user name/IP address correlator 105 receives the user identities which are detected on the network by the user identity detection engine 107, correlates the user names for the user events (such as logging on) and the IP addresses on which the user names are used for example in connection with known techniques, and outputs user identity events 121. A user identity event indicates an individual user name and an individual IP address onto which the user name is logged. User identities are extracted from network traffic. A commercially available software product can be used to do this, for example, “LOCATE” by eTelemetry. Optionally, the user identity event also includes the time of login. However, since the user name/IP address correlator 105 is driven by events output from the event/IP address correlator 107, the user identity events 121 are output by the user name/IP address correlator in real time.
The event/IP address correlator 111 receives attack events which are detected on the network by the intrusion detection system 109, correlates the events and the IP addresses on which the events occurred for example using known software, and outputs attack events. An attack event indicates one or more attacks and an individual IP address on which the attack occurred. Optionally, the attack event can include other information such as the time and/or type of attack. Since the event/IP address correlator 111 is driven by events output from the intrusion detection system 109, the attack events are output by the event/IP address correlator 111 in real time. The SNORT sensor or other passive or active traffic monitor is an example of an event/IP address correlator 111. The event/IP address correlator 111 can monitor traffic to/from a computer system, and can apply detection policies and rules to determine whether an attack occurred. The traffic monitor can be provided some distance from the network being monitored, if desired.
The configuration/IP address correlator 115 receives configurations which are detected on the network by the configuration detection engine 113, correlates the configurations and the IP addresses on which the configurations are used for example using known software, and outputs configurations. A configuration output from the configuration/IP address correlator 115 indicates a configuration and a particular IP address having that configuration; optionally the configuration can also include additional information regarding, as will be appreciated by one of skill in the art. Since the configuration/IP address correlator 115 is driven by events output from the configuration detection engine 113, the configurations are output by the configuration/IP address correlator 115 in real time.
An appropriate configuration/IP address correlator 115 is RNA, available from Sourcefire, or other network discovery sensors which can provide an intimate knowledge of the local network's configuration. For example, the RNA can perform network discovery, by passively collecting configuration information on network hosts and providing that information. The network discovery can alternatively be active, for example by using a scanning tool to probe systems (this technique studies how systems respond to probes to discover information), or by including user provided information about network assets. Other passive or active network discovery sensors may be used to obtain configuration information. Alternatively, or in addition, the configuration can be manually entered and/or modified.
The optional vulnerability/IP address correlator 119 receives vulnerabilities which are detected on the network by the optional vulnerability detection engine 117, correlates the vulnerabilities and the IP addresses on which the vulnerabilities exist, and outputs the vulnerabilities. Known software can be used as the vulnerability/IP address correlator 119. A vulnerability output by the vulnerability/IP address correlator 119 indicates a vulnerability and a particular IP address on which that vulnerability exists. The vulnerability/IP address correlator can be driven by vulnerability events output from the optional vulnerability detection engine 117, such that vulnerabilities are output by the vulnerability/IP address correlator 119 in real time.
Referring now to FIG. 2, a block diagram illustrating components of a computer system related to user awareness will be discussed and described. The computer system 201 may include one or more controllers 205, which can receive signals from a sensor with IP address location detection functionality 203 (such as described above) which senses communications from a network 213 in accordance with known techniques. The controller 205 can include a processor, a memory 215, an optional display 209, and/or an optional user input device such as a keyboard 211.
The processor may comprise one or more microprocessors and/or one or more digital signal processors. The memory 215 may be coupled to the processor and may comprise a read-only memory (ROM), a random-access memory (RAM), a programmable ROM (PROM), and/or an electrically erasable read-only memory (EEPROM). The memory 215 may include multiple memory locations for storing, among other things, an operating system, data and variables 217 for programs executed by the processor; computer programs for causing the processor to operate in connection with various functions such as obtaining 219 first data with user names and individual IP addresses onto which the user names were logged; obtaining 221 second data with attack or vulnerability or configuration and individual IP addresses on which the attacks occurred or the configurations or vulnerabilities exist; associating 223 user names from the first data with attacks, vulnerabilities or configurations from the second data base on having the same IP address during a login; displaying 225 a list of attacks, vulnerabilities, and/or configurations with user names individually associated therewith; deriving 227 vulnerabilities for configurations in the second data, and displaying a list of configurations and user names individually associated therewith; determining 229 when a user name stops being associated with the IP address by subsequent logins by that user name or to that IP address; querying 231 for a real name corresponding to the user name; preparing 233 rules for rule-driven security system based on the user name; and/or other processing; a user name-IP map table 235; an attack-IP map table 237; a configuration-IP map table 239; a vulnerability-IP map table 241; and a database 243 for other information used by the processor. The computer programs may be stored, for example, in ROM or PROM and may direct the processor in controlling the operation of the computer system 201.
The processor may be programmed for obtaining 219 first data with user names and individual IP addresses onto which the user names were logged. For example, the processor can receive an event stream of events which are generated when a user logs in, including the user name and the IP address, optionally including the time of log-in. The processor 207 can timestamp the user name and the IP address, for example, with a time of receipt. Optionally, the event stream with the log-ins can be stored separately, for example, as the user name-IP map table 235. The first data can be obtained from the events as received and/or as stored.
The processor 207 may be programmed for obtaining 221 second data with attack or vulnerability or configuration and individual IP addresses on which the attacks occurred or the configurations or vulnerabilities exist. For example, the processor can receive an event stream of events which are generated when an attack occurs, including the attack and the IP address, optionally including the time of attack. Also, the processor can receive an event stream of events which are generated when a configuration is detected (for example, due to a configuration change or new IP address), and the IP address having the configuration, optionally with a time of configuration. Furthermore, the processor can receive an event stream of events which are generated when a vulnerability is detected and the IP address having the vulnerability, optionally with the time the vulnerability is detected. The processor 207 can time stamp the received events, for example with a time of receipt. Optionally, the event stream(s) with the attack, vulnerability, and/or configuration can be stored separately, such as in the attack-IP map table 237, configuration-IP map table 239, and/or vulnerability-IP map table 241. The second data can be obtained from the events as received and/or as stored.
The processor 207 may be programmed for associating 223 user names from the first data with attacks, vulnerabilities or configurations from the second data base on having the same IP address during a login. For example, the processor 207 can refer to an attack, configuration, or vulnerability and IP address associated therewith, as well as the time of the attack, configuration, or vulnerability, for example, stored in the attack-IP map table 237, configuration-IP map table 239, or vulnerability-IP map table 241. The processor 207 can determine which user name was logged on to the IP address listed in the respective table during the time of the attack, configuration or vulnerability, by referring to the user name-IP map table 235 by IP address and time to look up the user name.
The processor 207 may be programmed for displaying 225 a list of attacks, vulnerabilities, and/or configurations with user names individually associated therewith, for example, the list developed by associating 223 user names from the first data with the vulnerability. For example, the list can be displayed as part of a user interface on the display 209, or provided as a report. The user interface can be interactive, so that a user can drill down to various aspects of the list which are of interest, or can sort the list to be displayed as preferred. User interfaces are discussed in more detail below.
The processor 207 may be programmed for deriving 227 vulnerabilities for configurations in the second data, and displaying a list of configurations and user names individually associated therewith. Certain configurations have particular vulnerabilities, while other configurations do not have those vulnerabilities. The vulnerabilities can be derived by using known techniques, or by accessing known software which can indicate the vulnerabilities based on input configurations.
The processor 207 may be programmed for determining 229 when a user name stops being associated with the IP address by subsequent logins to that IP address. For example, a chronological list of user names on each IP address can be maintained, together with time of log-in. It can be assumed that a user name has logged out of the IP address when the chronologically subsequent user name is logged in to the same IP address. Optionally, a time of an express or implied log out can be stored, if provided (for example with the user log-in events).
The processor 207 may be programmed for querying 231 for a real name corresponding to the user name. This is discussed in detail elsewhere, for example, an LDAP query of an address book database based on the user name can return the real name, optionally together with any stored contact information.
The processor 207 may be programmed for preparing 233 rules for rule-driven security system based on the user name. This is discussed in more detail elsewhere herein.
The processor 207 may be programmed for a user name-IP map table 235; an attack-IP map table 237; a configuration-IP map table 239; and a vulnerability-IP map table 241. The user name-IP map table 235 can include entries associating a user name with an IP address, for example, the user name and corresponding IP address and corresponding time of log-in, and optionally time of log-out. The attack-IP map table 237 can include entries associating an IP address with an attack, for example, an attack, an IP address, and a time of attack. The configuration-IP map table 239 can include entries associating an IP address with a configuration, for example, an IP address, a configuration of the IP address, and optionally a time the configuration was detected. The vulnerability-IP map table 241 can include entries associating an IP address with a vulnerability, for example, an IP address, a vulnerability, and optionally a time the vulnerability was detected. One or more of the user name-IP map table 235, the attack-IP map table 237, the configuration-IP map table 239, and the vulnerability-IP map table 241, alternatively can be stored remotely and accessed as needed. Optionally, the user name-IP map table 235, the attack-IP map table 237, the configuration-IP map table 239, and/or the vulnerability-IP map table 241 can be stored in a database rather than a table.
Accordingly, one or more embodiments provide a computer system for determining a user name likely to be associated with an attack, a configuration, or a vulnerability. The computer system can include a display operable to receive screens to be displayed to a user, and a processor cooperatively operable with the memory and the display. The processor can be configured to facilitate obtaining first data which associates user names with individual IP addresses onto which the user names were logged in; obtaining second data which associates attacks, configurations or vulnerabilities with individual IP addresses on which the attacks occurred or on which the configurations or vulnerabilities exist; and associating the user names from the first data with the attacks, configurations or vulnerabilities from the second data based on having the same IP address during a log-in. An individual user name is indicated in a screen to be displayed to a user as being associated with attacks which occurred while the individual user name was logged in and with configurations or vulnerabilities for an IP address onto which the user logs in.
It should be understood that various logical groupings of functions are described herein. Different realizations may omit one or more of these logical groupings. Likewise, in various realizations, functions may be grouped differently, combined, or augmented. Furthermore, functions including those identified as optional can be omitted from various realizations. Similarly, the present description may describe or suggest a database, table or other type of collection of data and information. One or more embodiments can provide that the table, database, and/or collection of data and information can be distributed, combined, or augmented, or provided locally (as illustrated) and/or remotely (not illustrated).
Referring now to FIG. 3, a display illustrating user login history for a host will be discussed and described. In this display 301, there is provided a history of user names 305, user logins 303 and time of log-in 307A, 307B, 307C for a particular IP address. In this representation, the time of log-in is represented as a bar graph. Furthermore, in this example, the display includes the real names (if known) and corresponding user names 305. The user can change the window of time provided in the display 301, in order to view user history over any period of time. Accordingly, one or more embodiments provides that the user name is determined to be no longer associated with the IP address if there is another log-in to the IP address.
Referring now to FIG. 4, an example message of a user login will be discussed and described. FIG. 4 illustrates a data structure representing a log-in event, such as might be received as a user log-in event, and includes a timestamp, an IP address, a user name, an optional protocol, and an optional authorized server IP address. The timestamp, IP address, and user name can be stored as the first data discussed herein. Accordingly, one or more embodiments provide that the user name includes an e-mail address or an IM (instant message) address.
Referring now to FIG. 5, an example message of a user account update will be discussed and described. FIG. 5 illustrates a data structure representing a user account, that is, information which relates to a user name which can be added to an address book. This data structure includes the user name, real name (e.g., first name, initials, last name, full name), and contact information (title, staff identification number, street address, city, state, country or region, postal code, building, location, room, company, division, department, office, mail stop, dmail, phone, IP phone, and email aliases).
Various user interface displays can be provided to display view to a user. FIG. 6 and FIG. 7 illustrate example user interfaces, and suggest the range of interfaces. The user interfaces allow an administrator to see what users are on the network and what the users are doing, including individual user names and configurations, vulnerabilities, and/or events which correlate to the user. Example variations on user interface displays are discussed after the detailed discussion of FIG. 7.
Referring now to FIG. 6, an example user interface display will be discussed and described. The user interface 601 provides an example of analysis and reporting of intrusion events, which are a type of attack. Here, the user interface 601 includes a time of the attack 607, an impact flag 609 to indicate the importance of the attack, a source IP address 611 of the attack, a destination IP address 613 of the attack, a source user name 615 of the attack, a destination user name (if any) 617 of the attack, a port and ICMP code 619 during the attack, a message 621 which identifies the attack 623 (here, a type of packet), and a count 623 of occurrences of this event (the attack 623).
A user can interact with the user interface to select, for example, one of the user names 615, 617, which will cause a query to return the real name corresponding to the user name. Also, note that the user interface can be changed to configurations (e.g., hosts, host attributes, services, client applications, flows), other types of attacks (e.g., RNA events, compliance events, white list events), and/or vulnerabilities.
Note that in this case, the user interface 601 provides a level of display 603 which is specific to packets which cause the intrusion events.
Accordingly, one or more embodiment provides for displaying a list of attacks, configurations or vulnerabilities and respective user names individually associated therewith.
Referring now to FIG. 7, another example user interface display will be discussed and described. The user interface 701 provides an example of creating a policy rule using a user name.
The user interface 701 includes rule information 703, a type of event for this rule 705, a user identity qualification 707, and rule options 729. The rule information 703 includes a rule name 709, rule description 711, and rule grouping 713. The type of event for this rule 705 includes the type of event 715 (e.g., RNA (configuration), vulnerability, log-in, attack), the details of the event 717 (e.g., a new TCP service is detected), and the conditions 719. The user identity qualification 707 includes a rule for indicating a user identity event, for example, identity on host 721, department 723, logical condition 725, and user name 727. The rule options 729 include options for snoozing and defining inactive periods.
Other examples of variations on user interface displays will now be discussed and described. A variation of a user interface display is a user table view, which shows all users by user name in the system, the current IP address for that user, and user metadata. If the user's mappings to current IP address have timed out, this can be indicated, for example, by displaying an IP address field that is blank. The user name and metadata can be that which is provided from the first data, that is, the user login events.
Yet another example of user interface displays, user tracking and/or alerting features can be provided. A user-based bandwidth tracking feature can be provided. In the user-based bandwidth tracking feature, an alert and display is provided when any user, regardless of machine, downloads more than a pre-determined number of bytes, e.g., more than 200 megabytes in any given hour. A chatty user feature can be provided. With this feature, a display and/or alert are provided to indicate which users are the top talkers for a specific service or client application.
Accordingly, one or more embodiments provide for writing rules for a compliance policy or remediation system based on the user name.
Further examples of displays can assist an administrator to determine the owner of a new host, where an administrator does not know who a new host belongs to on the network, and needs to find out who is using it.
Another example is to determine whose computer was compromised by an attack. In this example, the administrator sees an intrusion event against a host and wants to alert the user of that host to a possible breach of security.
Yet another example is to determine the users compromised by a specific attack. The administrator sees a flurry of attacks on the network, and wants to get a list of all the users that may be compromised.
Another display is a user table view that displays the users in the system, as well as their last seen IP address (if available). This view contains information such as phone number, email address, department and/or location. The user can navigate to the host, flow, intrusion sensor event, or compliance event table view from the user table view, for example, by using quick link buttons at the top of the table view. The user table view can link to those tables, optionally constraining by the user name.
Another display provides for searching and drilling down on the user name field, including wildcards.
Yet another display provides flow graphs that contain an x-axis field of user name. It can be fully interactive.
A still further table view provides real-time user awareness (RUA) events, with the new user and user login events. This table contains at least the user name, and also contains an IP address if there is a “user login” event. The table can utilize, e.g., link buttons, to allow the user to switch between table views while keeping the User constraint and/or the IP constraint.
Host profile displays can be provided. For example, a user interface can display the last user to be detected on an IP address. The user name can be a link to information (such as metadata) about that user.
Another example is a policy and response display. A user can constrain a rule on a user name by using a User Profile Qualification. For example, if the user wants to alert when a flow is seen which is initiated by user name jsmith to the 10.5 network, the user would create a new rule: a Flow is detected and the responder IP is in 10.5.0.0/16. Then the user would add a user profile qualification: the initiator host's user is jsmith.
Similarly, reporting can be provided, which include the user name as well as other information described above.
FIG. 8 illustrates a procedure for user awareness using the IP address data to map between user name login and attack/configuration/vulnerability. FIG. 9 illustrates a procedure for obtaining user name login/IP address data and FIG. 10 illustrates a procedure for obtaining attack/configuration/vulnerability/IP address data. The procedures can advantageously be implemented on, for example, a processor of a controller, described in connection with FIG. 2 or other apparatus appropriately arranged. Each of these procedures is discussed in more detail below.
Referring now to FIG. 8, a flow chart illustrating a procedure for user awareness will be discussed and described. A procedure 801 to determine user name likely to be associated with an attack, vulnerability or configuration can include the following. Much of the details relating to the following have been discussed in detail above; such detailed discussions will not be repeated.
The procedure 801 can include obtaining 803 first data which associates user names (e.g., e-mail or IP address) with individual IP addresses onto which the user names were logged in. Also, the procedure 801 can include obtaining 805 second data which associates attacks (e.g., determined by an IDS (intrusion detection system) or IPS (intrusion prevention system)) or configurations (for example, operating system, application services, settings, and the like) or vulnerabilities with an individual IP address on which the attacks occurred, or on which the configurations or vulnerabilities exist.
The procedure 801 also includes individually associating 807 user names from the first data with the attacks, configurations or vulnerabilities from the second data based on the user name being logged in to the same IP address at a time during which the attack occurred or configuration or vulnerability existed on that same IP address.
Also, if 809 vulnerability information is not provided in the second data, the procedure 801 optionally can derive 811 vulnerabilities from the configurations (such as operating system, application services, settings, and the like) in the second data, and can individually associate user names from the first data with the derived vulnerabilities. Then, the procedure 801 can provide 813 a list of attacks, configurations, and/or vulnerabilities in association with individual user names.
Accordingly, one or more embodiments provide a method performed by a computer system, for determining a user name likely to be associated with an attack, a configuration. The method includes obtaining first data which associates user names with individual IP addresses onto which the user names were logged in. Also included is obtaining second data which associates attacks, configurations, or vulnerabilities with individual IP addresses on which the attacks occurred or on which the configurations or vulnerabilities exist. Also, the method includes associating the user names from the first data with the attacks, configurations or vulnerabilities from the second data based on having the same IP address during a log-in. An individual user name is indicated as being associated with attacks which occurred while the individual user name was logged in or with configurations or vulnerabilities for an IP address onto which the user logs in.
Referring now to FIG. 9, a flow chart illustrating a procedure for user name login/IP address data will be discussed and described. A procedure for user name login/IP address data 901 includes receiving 903 a user identity event, for example, indicating that a user name has logged in to an IP address. The procedure 901 can store 905 the user name, the IP address, and a timestamp or time of log in, for example, in a user name-IP map table 905. If an event does not include a timestamp, then the time of receipt (or similar) can be used as a timestamp. Then, in the user name-IP map table 907, the procedure 901 can determine the logout. For example, the procedure 901 can locate the most recent user name for the present IP address, and can store the present time of log-in as the time of log-out of the most recent previous user name at the present IP address. That is, when a new user name logs in to an IP address, the previous user name on the same IP address is indicated as being logged out. Optionally, a user identity event can expressly indicate that a user name on an IP address has logged out. The procedure 901 can loop to continuously receive and process user identity events, thereby building a chronological history of user name login/IP address data pairs.
Referring now to FIG. 10, a flow chart illustrating a procedure 1001 for attack/configuration/vulnerability/IP address data will be discussed and described. The procedure 1001 can include receiving 1003 one of several events: an attack event (for example, indicating that an attack, flow, or compliance has occurred on an IP address), a configuration event (such as a host attribute, a host setting, a host service, and/or an application on a host), or a vulnerability event. The events include an IP address on which the event occurred, and optionally include a time stamp. If an event does not include a timestamp, then the time of receipt (or similar) can be used as a timestamp. The procedure 1001 then branches based on the type of the event.
If 1005 the attack event was received, then the attack, IP address, and timestamp are stored, for example, in an attack-IP map table. If 1007 a configuration was received, then the configuration, IP address, and timestamp are stored, for example, in a configuration-IP map table. If 1009 a vulnerability was received, the vulnerability, IP address, and timestamp are stored, for example, in a vulnerability-IP map table. The procedure 1001 can loop to continuously receive and process attack events, configuration events, and vulnerability events, thereby building a chronological history of attack/configuration/vulnerability/IP address pairs.
Moreover, one or more embodiments provide a computer-readable medium comprising instructions being executed by a computer, the instructions including a computer-implemented method for determining a user name likely to be associated with an attack, a configuration, or a vulnerability, the instructions for implementing the foregoing method.
It should be noted that the communication networks of interest include those that transmit information in packets, for example, those known as packet switching networks that transmit data, where data can be divided into packets before transmission, the packets are transmitted, and the packets are routed over network infrastructure devices, which are sent to a destination. Such networks include, by way of example, the Internet, intranets, local area networks (LAN), wireless LANs (WLAN), wide area networks (WAN), and others. Protocols supporting communication networks that utilize packets include one or more of various networking protocols having any link layers that support the TCP transport layer, or any application that rides over the transport layer, and other wireless application protocols or wireline application protocols and/or other protocol structures, and variants and evolutions thereof. Such networks can provide wireless communication capability and/or utilize wireline connections such as cable and/or a connector, or similar.
Furthermore, the designation “intrusion detection system” (IDS) is used herein to denote a device or software that passively or actively analyzes network traffic for intrusions, also referred to herein as “attacks”. Examples of such devices or software are sometimes referred to as “intrusion detection system”, “intrusion prevention system”, “network intrusion detection system”, “network intrusion protection system”, and the like, and variants or evolutions thereof. An intrusion detection system may be host-based, or may monitor traffic to a target system using, for example, sensors, anywhere between the target system and the intruder, typically after a final router or firewall, or in other software or device which incorporates an intrusion detection/prevention function, such as a firewall, proxy, or the like.
The term “attack” as used herein indicate activity or intrusions, that are typically malicious, for example, denial of service attacks, port scans, attempts to hack into a computer, unauthorized downloads or accesses, and other variations, which have occurred. Software is conventionally available which can identify attacks, for example, SNORT™ from Sourcefire, and other intrusion detection systems, as will be known to one of skill in the art.
Also, the designation “configuration” as used herein indicates the settings and software of a particular computer or device on a network, for example, type and version of operating system, types and versions of services running or installed on the computer or device, types and versions of client applications running or installed on the computer or device, TCP and/or UDP protocols used by the computer or device, other settings and software on the computer or device that can affect the security of a computer or network, and the like, as may be understood and/or varied from time-to-time. Software is conventionally available which can identify configurations of a particular computer system, for example, RNA™ from Sourcefire that can maintain a list of IP addresses and corresponding configurations, such as operating system, services, client applications, TCP and UDP protocols, and the like.
The term “vulnerability” indicates a weakness in a system that can be exploited by an attacker to violate the integrity of that system. Vulnerabilities may result from, for example, software bugs and design flaws, operating system flaws, passwords, backdoors, malware such as a computer virus, a script code injection, or the like. Vulnerabilities of a particular computer system can be determined in various ways, including from a known configuration of that particular computer system, since certain configurations can be determined to be corresponding vulnerabilities. Various commercially available software and/or websites can provide information indicating known vulnerabilities; various commercially available technology can identify specific vulnerabilities in a particular computer system.
The term “IP address” (Internet Protocol address) as used herein is a unique address that devices on a communication network use in order to identify and communicate with each other on a utilizing the Internet Protocol standards (for example, IPv4 or IPv6, further specified in RFC 791, 1519, 1918, 1, 2, 4291), variants, and evolutions thereof, and can include, for example, a dynamic IP address, a static IP address, possibly translated by a network address translator (NAT). The IP address can act as a locator for devices within the network to locate each other, and is unique within the scope of the specific network, such as the global Internet, or a local area network, or an enterprise network.
The term “user name” as used herein refers to a unique sequence of characters which is entered into a computer system to identify a particular user or a particular role (e.g., admin) to the computer system, ordinarily for purposes of accounting, security, logging, and resource management. A user name can be an e-mail address, an IM (instant message) address, a nickname (sometimes known as a “nick” or a “handle”), a user identifier (an integer or unique identifier sometimes used internally within the computer system once a user has logged on), or the like. A user name may or may not resemble the user's real name. Frequently, a user name is used with a password in order to effect a log-in.
This specification also refers to “logging in” or similar. To “log in,” as used herein, refers to a known process whereby a user identifies himself or herself by a user name to the computer system in order to obtain access; this establishes what is referred to herein as a “log-in” on the IP address of that computer system for that user name. A user can “log out” when finished accessing the computer system. To log in, a computer system generally requires a user name, frequently with a password which is authenticated. To “log out”, as used herein, may be done explicitly by the user performing some action, such as entering a logout command or clicking a logout button; or may be done implicitly, such as by powering the machine off, closing a window, leaving a website, or timing out for lack of activity within a pre-defined period.
The designation “real name” or “real names” is used herein to indicate a name by which a user is known in the real world, typically in the form of a first name or initial and last name or last initial, and can be stored as part of an address book application such as Microsoft Outlook™ Contacts, or other database configured to store address book information such as real name, department, position, user name(s), telephone number(s), and the like. An example address book application which can be queried to return a real name when the user name is input is known as a DAP (directory access protocol) or LDAP (lightweight directory access protocol). Other address book look-up routines and/or applications, variations, and evolutions also may be used to return a real name given the user name.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS4550436Jul 26, 1983Oct 29, 1985At&T Bell LaboratoriesParallel text matching methods and apparatusUS4570157Dec 6, 1983Feb 11, 1986Uro Denski Kogyo, K.K.Infrared intrusion alarm system capable of preventing false signalsUS4857912Jul 27, 1988Aug 15, 1989The United States Of America As Represented By The Secretary Of The NavyIntelligent security assessment systemUS4912748Sep 23, 1988Mar 27, 1990Matsushita Electric Works, Ltd.Infrared intrusion detector with a plurality of infrared ray detecting elementsUS4985863Jul 30, 1990Jan 15, 1991Hitachi, Ltd.Document storage and retrieval systemUS5193192Aug 23, 1990Mar 9, 1993Supercomputer Systems Limited PartnershipVectorized LR parsing of computer programsUS5222081Jun 28, 1991Jun 22, 1993Universal Data Systems, Inc.Method of performing an autobaud function using a state flow machineUS5404488Oct 1, 1993Apr 4, 1995Lotus Development CorporationRealtime data feed engine for updating an application with the most currently received data from multiple data feedsUS5430842May 29, 1992Jul 4, 1995Hewlett-Packard CompanyInsertion of network data checksums by a network adapterUS5459841Dec 28, 1993Oct 17, 1995At&T Corp.Finite state machine with minimized vector processingUS5495409Oct 28, 1994Feb 27, 1996Matsushita Electric Industrial Co., Ltd.Constructing method of finite-state machine performing transitions according to a partial type of success function and a failure functionUS5497463Sep 25, 1992Mar 5, 1996Bull Hn Information Systems Inc.Ally mechanism for interconnecting non-distributed computing environment (DCE) and DCE systems to operate in a network systemUS5604910Oct 17, 1989Feb 18, 1997Hitachi, Ltd.Method of and vector processor for searching text for key words based on candidate character strings obtained from the text using parallel processingUS5666293Jul 3, 1995Sep 9, 1997Bell Atlantic Network Services, Inc.Downloading operating system software through a broadcast channelUS5796942Nov 21, 1996Aug 18, 1998Computer Associates International, Inc.Method and apparatus for automated network-wide surveillance and security breach interventionUS5870554Apr 1, 1996Feb 9, 1999Advanced Micro Devices, Inc.Server selection method where a client selects a server according to address, operating system and found frame for remote bootingUS5901307Jul 22, 1996May 4, 1999International Business Machines CorporationProcessor having a selectively configurable branch prediction unit that can access a branch prediction utilizing bits derived from a plurality of sourcesUS5917821Dec 21, 1994Jun 29, 1999Newbridge Networks CorporationLook-up engine for packet-based networkUS5919257Aug 8, 1997Jul 6, 1999Novell, Inc.Networked workstation intrusion detection systemUS5963942Dec 24, 1996Oct 5, 1999Fujitsu LimitedPattern search apparatus and methodUS5987473Dec 29, 1997Nov 16, 1999Beologic A/SInteractive configuration via networkUS5995963Mar 4, 1997Nov 30, 1999Fujitsu LimitedApparatus and method of multi-string matching based on sparse state transition listUS5999937Jun 6, 1997Dec 7, 1999Madison Information Technologies, Inc.System and method for converting data between data setsUS6002427Sep 15, 1997Dec 14, 1999Kipust; Alan J.Security system with proximity sensing for an electronic deviceUS6141686Jun 23, 1998Oct 31, 2000Deterministic Networks, Inc.Client-side application-classifier gathering network-traffic statistics and application and user names using extensible-service provider plugin for policy-based network controlUS6199181Sep 9, 1998Mar 6, 2001Perfecto Technologies Ltd.Method and system for maintaining restricted operating environments for application programs or operating systemsUS6219786Sep 9, 1998Apr 17, 2001Surfcontrol, Inc.Method and system for monitoring and controlling network accessUS6320848Apr 30, 1999Nov 20, 2001Hewlett-Packard CompanyMethods of altering dynamic decision treesUS6321338Nov 9, 1998Nov 20, 2001Sri InternationalNetwork surveillanceUS6324656Jun 30, 1998Nov 27, 2001Cisco Technology, Inc.System and method for rules-driven multi-phase network vulnerability assessmentUS6334121Mar 12, 1999Dec 25, 2001Virginia Commonwealth UniversityUsage pattern based user authenticatorUS6343362Jan 21, 1999Jan 29, 2002Networks Associates, Inc.System and method providing custom attack simulation language for testing networksUS6393474Dec 31, 1998May 21, 20023Com CorporationDynamic policy management apparatus and method using active network devicesUS6415321Dec 29, 1998Jul 2, 2002Cisco Technology, Inc.Domain mapping method and systemUS6477648Mar 23, 1997Nov 5, 2002Novell, Inc.Trusted workstation in a networked client/server computing systemUS6487666Jan 15, 1999Nov 26, 2002Cisco Technology, Inc.Intrusion detection signature analysis using regular expressions and logical operatorsUS6499107Dec 29, 1998Dec 24, 2002Cisco Technology, Inc.Method and system for adaptive network security using intelligent packet analysisUS6539381Apr 21, 1999Mar 25, 2003Novell, Inc.System and method for synchronizing database informationUS6546493Nov 30, 2001Apr 8, 2003Networks Associates Technology, Inc.System, method and computer program product for risk assessment scanning based on detected anomalous eventsUS6587876Aug 24, 1999Jul 1, 2003Hewlett-Packard Development CompanyGrouping targets of management policiesUS6590885Jul 9, 1999Jul 8, 2003Malibu Networks, Inc.IP-flow characterization in a wireless point to multi-point (PTMP) transmission systemUS6678734Nov 13, 1999Jan 13, 2004Ssh Communications Security Ltd.Method for intercepting network packets in a computing deviceUS6678824Nov 2, 1999Jan 13, 2004Agere Systems Inc.Application usage time limiterUS6684332Jun 10, 1998Jan 27, 2004International Business Machines CorporationMethod and system for the exchange of digitally signed objects over an insecure networkUS6711127Jul 31, 1998Mar 23, 2004General Dynamics Government Systems CorporationSystem for intrusion detection and vulnerability analysis in a telecommunications signaling networkUS6754826Mar 31, 1999Jun 22, 2004International Business Machines CorporationData processing system and method including a network access connector for limiting access to the networkUS6766320Aug 24, 2000Jul 20, 2004Microsoft CorporationSearch engine with natural language-based robust parsing for user query and relevance feedback learningUS6772196Jul 27, 2000Aug 3, 2004Propel Software Corp.Electronic mail filtering system and methodsUS6789202Oct 15, 1999Sep 7, 2004Networks Associates Technology, Inc.Method and apparatus for providing a policy-driven intrusion detection systemUS6816973Nov 13, 2002Nov 9, 2004Cisco Technology, Inc.Method and system for adaptive network security using intelligent packet analysisUS6851061Aug 24, 2000Feb 1, 2005Networks Associates, Inc.System and method for intrusion detection data collection using a network protocol stack multiplexorUS6957348Jan 10, 2001Oct 18, 2005Ncircle Network Security, Inc.Interoperability of vulnerability and intrusion detection systemsUS6983323Aug 12, 2002Jan 3, 2006Tippingpoint Technologies, Inc.Multi-level packet screening with dynamically selected filtering criteriaUS6993706Jan 15, 2002Jan 31, 2006International Business Machines CorporationMethod, apparatus, and program for a state machine frameworkUS6999998Oct 4, 2001Feb 14, 2006Hewlett-Packard Development Company, L.P.Shared memory coupling of network infrastructure devicesUS7032114Aug 30, 2000Apr 18, 2006Symantec CorporationSystem and method for using signatures to detect computer intrusionsUS7054930Oct 26, 2000May 30, 2006Cisco Technology, Inc.System and method for propagating filtersUS7058821Jan 17, 2002Jun 6, 2006Ipolicy Networks, Inc.System and method for detection of intrusion attacks on packets transmitted on a networkUS7065657Aug 30, 2000Jun 20, 2006Symantec CorporationExtensible intrusion detection systemUS7073198Aug 25, 2000Jul 4, 2006Ncircle Network Security, Inc.Method and system for detecting a vulnerability in a networkUS7076803Jan 28, 2002Jul 11, 2006International Business Machines CorporationIntegrated intrusion detection servicesUS7096503Jun 29, 2001Aug 22, 2006Mcafee, Inc.Network-based risk-assessment tool for remotely detecting local computer vulnerabilitiesUS7113789Sep 24, 2001Sep 26, 2006Bellsouth Intellectual Property CorporationMethod and system for tracking facilities related informationUS7133916Jul 28, 2003Nov 7, 2006Etelemetry, Inc.Asset tracker for identifying user of current internet protocol addresses within an organization's communications networkUS7134141Jun 12, 2001Nov 7, 2006Hewlett-Packard Development Company, L.P.System and method for host and network based intrusion detection and responseUS7152105Jan 15, 2002Dec 19, 2006Mcafee, Inc.System and method for network vulnerability detection and reportingUS7174566Feb 1, 2002Feb 6, 2007Intel CorporationIntegrated network intrusion detectionUS7181769Jun 6, 2003Feb 20, 2007Ncircle Network Security, Inc.Network security system having a device profiler communicatively coupled to a traffic monitorUS7257630Mar 10, 2003Aug 14, 2007Mcafee, Inc.System and method for network vulnerability detection and reportingUS7305708Mar 8, 2004Dec 4, 2007Sourcefire, Inc.Methods and systems for intrusion detectionUS7310688Aug 29, 2000Dec 18, 2007Ciena CorporationRelative addressing for network elementsUS7313695Mar 23, 2004Dec 25, 2007Sourcefire, Inc.Systems and methods for dynamic threat assessmentUS7315801Jan 14, 2000Jan 1, 2008Secure Computing CorporationNetwork security modeling system and methodUS7317693May 12, 2004Jan 8, 2008Sourcefire, Inc.Systems and methods for determining the network topology of a networkUS7346922 *Jul 26, 2004Mar 18, 2008Netclarity, Inc.Proactive network security system to protect against hackersUS7350077Apr 17, 2003Mar 25, 2008Cisco Technology, Inc.802.11 using a compressed reassociation exchange to facilitate fast handoffUS7363656Nov 3, 2003Apr 22, 2008Mazu Networks, Inc.Event detection/anomaly correlation heuristicsUS7467202Sep 10, 2003Dec 16, 2008Fidelis Security SystemsHigh-performance network content analysis platformUS7519954Apr 8, 2004Apr 14, 2009Mcafee, Inc.System and method of operating system identificationUS7596807Oct 14, 2003Sep 29, 2009Arbor Networks, Inc.Method and system for reducing scope of self-propagating attack code in networkUS7644275Apr 15, 2003Jan 5, 2010Microsoft CorporationPass-thru for client authenticationUS20010027485Mar 29, 2001Oct 4, 2001Tomohiko OgishiMethod for collecting statistical traffic dataUS20010034847Mar 27, 2001Oct 25, 2001Gaul,Jr. Stephen E.Internet/network security method and system for checking security of a client from a remote facilityUS20020035639Aug 16, 2001Mar 21, 2002Wei XuSystems and methods for a packet directorUS20020066034Sep 21, 2001May 30, 2002Schlossberg Barry J.Distributed network security deception systemUS20020083344Jun 27, 2001Jun 27, 2002Vairavan Kannan P.Integrated intelligent inter/intra networking deviceUS20020087716Dec 4, 2000Jul 4, 2002Shakeel MustafaSystem and method for transmitting customized multi priority services on a single or multiple links over data link layer framesUS20020112185Feb 26, 2001Aug 15, 2002Hodges Jeffrey D.Intrusion threat detectionUS20020123995Jan 11, 2002Sep 5, 2002Tetsuo ShibuyaPattern search method, pattern search apparatus and computer program therefor, and storage medium thereofUS20020165707Feb 26, 2001Nov 7, 2002Call Charles G.Methods and apparatus for storing and processing natural language text data as a sequence of fixed length integersUS20030009699Jun 13, 2002Jan 9, 2003Gupta Ramesh M.Method and apparatus for detecting intrusions on a computer systemUS20030014662Jun 13, 2002Jan 16, 2003Gupta Ramesh M.Protocol-parsing state machine and method of using sameUS20030046388Sep 4, 2002Mar 6, 2003Milliken Walter ClarkSystems and methods for network performance measurement using packet signature collectionUS20030065817Sep 28, 2001Apr 3, 2003Uri BenchetritExtended internet protocol network address translation systemUS20030083847Oct 31, 2001May 1, 2003Schertz Richard L.User interface for presenting data for an intrusion protection systemUS20030093517Oct 31, 2001May 15, 2003Tarquini Richard P.System and method for uniform resource locator filteringUS20030101353Oct 31, 2001May 29, 2003Tarquini Richard PaulMethod, computer-readable medium, and node for detecting exploits based on an inbound signature of the exploit and an outbound signature in response theretoUS20030126472Dec 31, 2002Jul 3, 2003Banzhof Carl E.Automated computer vulnerability resolution systemUS20030140250Mar 7, 2002Jul 24, 2003Yoshihito TaninakaMethod and system of monitoring vulnerabilitiesUS20030195874Mar 7, 2003Oct 16, 2003Fujitsu LimitedSearch apparatus and method using order pattern including repeating patternUS20030212910Mar 28, 2003Nov 13, 2003Rowland Craig H.Method and system for reducing the false alarm rate of network intrusion detection systemsUS20030217283Jun 3, 2002Nov 20, 2003Scott HrastarMethod and system for encrypted network management and intrusion detectionUS20030229726Mar 18, 2003Dec 11, 2003Daseke Michael J.Default device configuration system and method for thin devicesUS20040010684Jun 10, 1998Jan 15, 2004Ibm CorporationMethod and system for the exchange of digitally signed objects over an insecure networkUS20040015728Mar 10, 2003Jan 22, 2004Cole David M.System and method for network vulnerability detection and reportingUS20040034773Aug 19, 2002Feb 19, 2004Balabine Igor V.Establishing authenticated network connectionsUS20040064726Sep 30, 2002Apr 1, 2004Mario GirouardVulnerability management and tracking system (VMTS)US20040073800May 22, 2003Apr 15, 2004Paragi ShahAdaptive intrusion detection systemUS20040093582Oct 31, 2003May 13, 2004Segura Tim E.Method for allowing a computer to be used as an information kiosk while lockedUS20040098618Aug 14, 2003May 20, 2004Kim Hyun JooSystem and method for defending against distributed denial-of-service attack on active networkUS20040123153Apr 11, 2003Jun 24, 2004Michael WrightAdministration of protection of data accessible by a mobile deviceUS20040172234Oct 3, 2003Sep 2, 2004Dapp Michael C.Hardware accelerator personality compilerUS20040179477Mar 15, 2004Sep 16, 2004Lincoln Patrick DenisMethod and apparatus for processing network packetsUS20040193943Feb 12, 2004Sep 30, 2004Robert AngelinoMultiparameter network fault detection system using probabilistic and aggregation analysisUS20040210756Apr 15, 2003Oct 21, 2004Microsoft CorporationPass-thru for client authenticationUS20040218532Apr 29, 2003Nov 4, 2004Stanislav KhirmanMethod and system for transport protocol reconstruction and timer synchronization for non-intrusive capturing and analysis of packets on a high-speed distributed networkUS20040221176Apr 29, 2003Nov 4, 2004Cole Eric B.Methodology, system and computer readable medium for rating computer system vulnerabilitiesUS20040250032Jun 6, 2003Dec 9, 2004Minwen JiState machine and system for data redundancyUS20040268358Jun 30, 2003Dec 30, 2004Microsoft CorporationNetwork load balancing with host status informationUS20050005169Apr 9, 2004Jan 6, 2005Samir Gurunath KelekarSystem for real-time network-based vulnerability assessment of a host/device via real-time tracking, vulnerability assessment of services and a method thereofUS20050015623Feb 13, 2004Jan 20, 2005Williams John LeslieSystem and method for security information normalizationUS20050044422Aug 31, 2004Feb 24, 2005Craig CantrellActive network defense system and methodUS20050076066Oct 7, 2003Apr 7, 2005International Business Machines CorporationMethod, system, and program for retaining versions of filesUS20050108393Oct 31, 2003May 19, 2005International Business Machines CorporationHost-based network intrusion detection systemsUS20050113941Dec 28, 2004May 26, 2005Digital Electronics CorporationControl system, display device, control-use host computer, and data transmission methodUS20050114700Aug 13, 2003May 26, 2005Sensory Networks, Inc.Integrated circuit apparatus and method for high throughput signature based network applicationsUS20050160095Feb 16, 2005Jul 21, 2005Dick Kevin S.System, method and computer program product for guaranteeing electronic transactionsUS20050172019Jan 11, 2005Aug 4, 2005Williamson Matthew M.Network managementUS20050188079Feb 24, 2004Aug 25, 2005Covelight Systems, Inc.Methods, systems and computer program products for monitoring usage of a server applicationUS20050229255Dec 21, 2004Oct 13, 2005Gula Ronald JSystem and method for scanning a networkUS20050240604Apr 27, 2004Oct 27, 2005International Business Machines CorporationMethod and system for compressing a search tree structure used in rule classificationUS20050251500Jun 27, 2005Nov 10, 2005Vahalia Uresh KFile server system providing direct data sharing between clients with a server acting as an arbiter and coordinatorUS20050268331May 25, 2004Dec 1, 2005Franck LeExtension to the firewall configuration protocols and featuresUS20050268332Jul 2, 2004Dec 1, 2005Franck LeExtensions to filter on IPv6 headerUS20050273673May 19, 2005Dec 8, 2005Paul GassowaySystems and methods for minimizing security logsUS20050273857Mar 29, 2005Dec 8, 2005Check Point Software Technologies, Inc.System and Methodology for Intrusion Detection and PreventionUS20060174337Feb 3, 2005Aug 3, 2006International Business Machines CorporationSystem, method and program product to identify additional firewall rules that may be neededUS20060265748May 23, 2005Nov 23, 2006Potok Thomas EMethod for detecting sophisticated cyber attacksUS20060294588Jun 24, 2005Dec 28, 2006International Business Machines CorporationSystem, method and program for identifying and preventing malicious intrusionsUS20070027913Jul 26, 2005Feb 1, 2007Invensys Systems, Inc.System and method for retrieving information from a supervisory control manufacturing/production databaseUS20070058631Aug 12, 2005Mar 15, 2007Microsoft CorporationDistributed network managementUS20070162463Jan 18, 2007Jul 12, 2007Websense, Inc.System and method of monitoring and controlling application filesUS20070192863Dec 13, 2006Aug 16, 2007Harsh KapoorSystems and methods for processing data flowsUS20070195797Feb 23, 2006Aug 23, 2007Patel Alpesh SNetwork device that determines application-level network latency by monitoring option values in a transport layer messageUS20070271371May 22, 2006Nov 22, 2007Reconnex CorporationAttributes of captured objects in a capture systemUS20070288579Sep 7, 2006Dec 13, 2007Schunemann Alan JNetwork asset tracker for identifying users of networked computersUS20080168561Oct 21, 2007Jul 10, 2008Durie Anthony RobertHost intrusion prevention serverUS20090028147Sep 28, 2008Jan 29, 2009Russell Paul FSegmenting data packets for over-network transmission at adjustable fragment boundaryUS20090041020Aug 7, 2007Feb 12, 2009Avaya Technology LlcClock management between two endpointsUS20090182864Jan 15, 2008Jul 16, 2009Faud KhanMethod and apparatus for fingerprinting systems and operating systems in a networkGB2432933A Title not availableWO2001037511A2Nov 15, 2000May 25, 2001Secureworks, Inc.Method and system for remotely configuring and monitoring a communication deviceWO2004100011A1Apr 30, 2003Nov 18, 2004Threatguard, Inc.System and method for network security scanningWO2005064884A1Dec 24, 2004Jul 14, 2005Veritas Software CorporationMethod and system for identifyingthe content of files in a networkWO2006025050A2Aug 24, 2005Mar 9, 2006Finjan Software Ltd.Method and system for adaptive rule-based content scanners* Cited by examinerNon-Patent CitationsReference1"Enhanced Operating System Identification with Nessus," Tenable Network Security (2007), obtained from: http://blog.tenablesecurity.com/2009/02/enhanced-operat.html, posted by R. Gula on Feb. 16, 2009 (3 pp. total).2"Enhanced Operating System Identification with Nessus," Tenable Network Security (2007), obtained from: http://blog.tenablesecurity.com/2009/02/enhanced—operat.html, posted by R. Gula on Feb. 16, 2009 (3 pp. total).3"Snort(TM) Users Manual 2.6.0," The Snort Project (May 23, 2006), pp. 1-126.4"Snort™ Users Manual 2.2.0RC1," The Snort Project, Jun. 28, 2004, Retrieved from the Internet: URL:http://cvs.snort.org/viewcvs.cgi/*checkout*/snort/doc/snort—manual.pdf?rev=1.25&content-type=application/pdf [retrieved on Nov. 18, 2010 ] (XP002610157).5"Snort™ Users Manual 2.6.0," The Snort Project (May 23, 2006), pp. 1-126.6"TaoSecurity-Dedicated to FreeBSD, network security monitoring, incident response, and network forensics," (Oct. 1, 2007), obtained from: http://taosecurity.blogspot.com/2005/02/shmoocon-concludes-shmoocon-finished.html.7"TaoSecurity—Dedicated to FreeBSD, network security monitoring, incident response, and network forensics," (Oct. 1, 2007), obtained from: http://taosecurity.blogspot.com/2005/02/shmoocon-concludes-shmoocon-finished.html.8"toupper( )-convert lowercase character to uppercase," http://www.mkssoftware.com, printed on Sep. 20, 2008 from http://web.archive.org, archive date Jun. 30, 2006, 2 pp.9"toupper( )—convert lowercase character to uppercase," http://www.mkssoftware.com, printed on Sep. 20, 2008 from http://web.archive.org, archive date Jun. 30, 2006, 2 pp.10Advisory Action issued by the U.S. Patent Office on Aug. 3, 2010 in connection with related U.S. Appl. No. 10/843,374.11Advisory Action issued by the U.S. Patent Office on Dec. 2, 2009 in connection with related U.S. Appl. No. 10/843,398.12Advisory Action issued by the U.S. Patent Office on Feb. 24, 2010 in connection with related U.S. Appl. No. 11/272,035.13Advisory Action issued by the U.S. Patent Office on Nov. 28, 2011 in connection with related U.S. Appl. No. 12/230,338.14Advisory Action issued by the U.S. Patent Office on Sep. 29, 2009 in connection with related U.S. Appl. No. 10/843,459.15Aho et al., "Efficient String Matching: An Aid to Bibliographic Search," Communications from the ACM (Jun. 1975), vol. 18, No. 6, pp. 333-340.16B. Krishnamurthy, "Web Protocols and Practice," (May 1, 2001), pp. 518-520.17D. Joseph, et al., "A Policy-aware Switching Layer for Data Centers," SIGCOMM, Aug. 17-22, 2008, pp. 51-62.18D. Roekler, "HTTP IDS Evasions Revisited," Jan. 8, 2003, Retrieved from the Internet: URL:http://docs.idsresearch.org/http—ids—evasions.pdf [Nov. 18, 2010] (XP002610155).19D. Roelker, "HTTP IDS Evasions Revisited" (Aug. 1, 2003) [online] (retrieved on Nov. 9, 2006). Retrieved from the Internet .20D. Roelker, "HTTP IDS Evasions Revisited" (Aug. 1, 2003) [online] (retrieved on Nov. 9, 2006). Retrieved from the Internet <URL: http://docs.idsresearch.org/http—ids—evasions.pdf>.21European Office Action issued by the European Patent Office on Nov. 28, 2008 in connection with European patent application No. 07 015 003.2-2413, which corresponds to related U.S. Appl. No. 11/501,776.22European Search Report issued by the European Patent Office on Dec. 27, 2007 in connection with European patent application No. 07015003.2-2413, which corresponds to related U.S. Appl. No. 11/501,776.23European Search Report issued by the European Patent Office on Dec. 6, 2010 in connection with European patent application No. 05773540.9-2413, which corresponds to related U.S. Patent No. 7,496,962.24European Search Report issued by the European Patent Office on Nov. 22, 2007 in connection with European patent application No. 07014575.0-1244, which corresponds to related U.S. Appl. No. 11/493,934.25European Search Report issued by the European Patent Office on Oct. 12, 2009 in connection with European patent application No. 05773501.1-2201, which corresponds to related U.S. Appl. Nos. 10/898,220, 11/785,609 and 12/010,900.26Extended European Search Report issued by the European Patent Office on Jul. 19, 2011 in connection with European patent application No. 06837333.1-2413, which corresponds to related U.S. Patent No. 7,733,803.27Final Office Action issued by the U.S. Patent Office on Aug. 19, 2008 in connection with related U.S. Appl. No. 10/843,373.28Final Office Action issued by the U.S. Patent Office on Aug. 20, 2008 in connection with related U.S. Appl. No. 10/843,353.29Final Office Action issued by the U.S. Patent Office on Aug. 6, 2008 in connection with related U.S. Appl. No. 10/843,375.30Final Office Action issued by the U.S. Patent Office on Dec. 8, 2009 in connection with related U.S. Appl. No. 11/272,034.31Final Office Action issued by the U.S. Patent Office on Dec. 9, 2009 in connection with related U.S. Appl. No. 11/272,035.32Final Office Action issued by the U.S. Patent Office on Jul. 17, 2008 in connection with related U.S. Appl. No. 10/843,459.33Final Office Action issued by the U.S. Patent Office on Jun. 26, 2008 in connection with related U.S. Appl. No. 10/898,220.34Final Office Action issued by the U.S. Patent Office on Jun. 4, 2008 in connection with related U.S. Appl. No. 10/843,398.35Final Office Action issued by the U.S. Patent Office on Mar. 17, 2010 in connection with related U.S. Appl. No. 10/843,374.36Final Office Action issued by the U.S. Patent Office on May 13, 2009 in connection with related U.S. Appl. No. 10/843,374.37Final Office Action issued by the U.S. Patent Office on May 9, 2008 in connection with related U.S. Appl. No. 10/843,353.38Final Office Action issued by the U.S. Patent Office on Nov. 24, 2010 in connection with related U.S. Appl. No. 12/010,900.39Final Office Action issued by the U.S. Patent Office on Nov. 4, 2010 in connection with related U.S. Appl. No. 10/843,459.40Final Office Action issued by the U.S. Patent Office on Oct. 25, 2010 in connection with related U.S. Appl. No. 11/272,035.41Final Office Action issued by the U.S. Patent Office on Oct. 29, 2009 in connection with related U.S. Appl. No. 11/501,776.42Final Office Action issued by the U.S. Patent Office on Sep. 14, 2011 in connection with related U.S. Appl. No. 12/230,338.43Final Office Action issued by the U.S. Patent Office on Sep. 17, 2010 in connection with related U.S. Appl. No. 11/711,876.44Final Office Action issued by the U.S. Patent Office on Sep. 30, 2010 in connection with related U.S. Appl. No. 11/493,934.45Final Office Action issued by the U.S. Patent Office on Sep. 8, 2010 in connection with related U.S. Appl. No. 10/843,459.46Francois Gagnon et al.: "A Hybrid Approach to Operating System Discovery using Answer Set Programming", Integrated Network Management, 2007. IM'07, 10th IFIP/IEEE International Symposium on, IEEE, PI, May 1, 2007, pp. 391-400, XP031182713, ISBN: 978-1-4244-0798-9, p. 293, 394-397.47Full Band and Matrix Algorithms (Jun. 9, 2004), http://web.archive.org/web20040109154658/http://www.netlib.org/utk/Isi/pcwLSI/text/node150.html.48G. Lyon, "Remote OS detection via TCP/IP Stack Fingerprinting"(Jun. 30, 2002), pp. 1-12, obtained from: http://web.archive.org/web20021017063625/www.insecure.org/nmap/nmap-fingerprinting-article.html.49International Preliminary Report on Patentability and Written Opinion of the International Searching Authority mailed on Mar. 17, 2009 in connection with corresponding PCT application No. PCT/US06/43820, which corresponds to related U.S. Appl. No. 11/272,035.50International Preliminary Report on Patentability and Written Opinion of the International Searching Authority mailed on Mar. 3, 2009 in connection with PCT application No. PCT/US05/025584, which corresponds to related U.S. Appl. No. 10/898,220.51International Preliminary Report on Patentability mailed on Apr. 7, 2009 in connection with PCT application No. PCT/US07/021351, which corresponds to U.S. Appl. No. 11/905/980.52International Preliminary Report on Patentability mailed on May 22, 2008 in connection with PCT application No. PCT/US06/43800, which corresponds to U.S. Appl. No. 11/272,034.53International Preliminary Report on Patentability mailed on Nov. 12, 2009 in corresponding PCT application No. PCT/US08/005466.54International Preliminary Report on Patentability mailed on Oct. 19, 2010 in connection with PCT application No. PCT/US2009/02210, which corresponds to U.S. Appl. No. 12/230,338.55International Preliminary Report on Patentability mailed on Sep. 11, 2009 in connection with PCT application No. PCT/US08/002454, which corresponds to U.S. Appl. No. 11/711,876.56International Search Report and Written Opinion of the International Searching Authority issued on Aug. 18, 2008 in connection with corresponding PCT application No. PCT/US08/05466.57International Search Report and Written Opinion of the International Searching Authority issued on Dec. 5, 2007 in connection with PCT application No. PCT/US05/25583, which corresponds to U.S. Appl. No. 10/951,796.58International Search Report and Written Opinion of the International Searching Authority issued on Jul. 2, 2008 in connection with PCT application No. PCT/US08/02454, which corresponds to U.S. Appl. No. 11/711,876.59International Search Report and Written Opinion of the International Searching Authority issued on Jul. 28, 2011 in connection with PCT application No. PCT/US2011/032489, which corresponds to U.S. Appl. No. 13/086,819.60International Search Report and Written Opinion of the International Searching Authority issued on Jul. 7, 2008 in connection with PCT application No. PCT/US06/43820, which corresponds to U.S. Appl. No. 11/272,035.61International Search Report and Written Opinion of the International Searching Authority issued on Jun. 19, 2008 in connection with PCT application No. PCT/US05/25584, which corresponds to U.S. Appl. No. 10/898,220.62International Search Report and Written Opinion of the International Searching Authority issued on Jun. 30, 2008 in connection with PCT application No. PCT/US07/21351, which corresponds to U.S. Appl. No. 11/905,980.63International Search Report and Written Opinion of the International Searching Authority issued on Mar. 16, 2010 in connection with PCT application No. PCT/US09/59965, which corresponds to U.S. Appl. No. 12/575,612.64International Search Report and Written Opinion of the International Searching Authority issued on Oct. 9, 2007 in connection with PCT application No. PCT/US06/43800, which corresponds to U.S. Appl. No. 11/272,034.65International Search Report and Written Opinion of the International Searching Authority issued on Sep. 1, 2011 in connection with PCT application No. PCT/US2011/035874, which corresponds to U.S. Appl. No. 12/820,227.66International Search Report and Written Opinion of the International Searching Authority mailed on May 27, 2009 in connection with PCT application No. PCT/US09/02210, which corresponds to U.S. Appl. No. 12/230,338.67J. Howe, "An Environment for "Sniffing" DCE-RPC Traffic," CITI Technical Report 93-4, Jun. 21, 1993, 12 pages total.68J. Novak et al., "Target-Based TCP Stream Reassembly" (Aug. 3, 2007), Revision 1.0, pp. 1-23, obtained from: http://www.snort/org/docs/stream5-modelAUg032007.pdf.69J. Novak, "Target-Based Fragmentation Reassembly" (Apr. 2005), Revision 2.0, pp. 1-32.70L. Spitzner, "Passive Fingerprinting," FOCUS on Intrusion Detection: Passive Fingerprinting (May 3, 2000), pp. 1-4; obtained from: http://www.stillhq.com/pdfdb/000183/data.pdf.71M. Norton, "Optimizing Pattern Matching for Intrusion Detection" (Jul. 4, 2004) [online] (retrieved on Nov. 9, 2006). Retrieved from the Internet .72M. Norton, "Optimizing Pattern Matching for Intrusion Detection" (Jul. 4, 2004) [online] (retrieved on Nov. 9, 2006). Retrieved from the Internet <URL: http://docs.idsresearch.org/OptimizingPatternMatchingForIDS.pdf>.73M. Norton, et al., "The New Snort," Computer Security Journal, CSI Security Institute, XIX, No. 3, (Jan. 1, 2003), pp. 37-47, ISSN: 0277-0865 (XP008039475).74Matthew Olney et al.: "What would you do with a pointer and a size? A New Detection Framework", Apr. 22, 2010, XP55002567, http://labs.snort.org/nrt/sfvrt-nrt.pdf (retrieved on Jul. 12, 2011) the whole document.75N. Brownlee, et al., "Methodology for Passive Analysis of a University Internet Link," PAM2001 Passive and Active Measurement Workshop, Apr. 2001 (7 pp.).76N. Chase, "Active Server Pages 3.0 from Scratch" (Dec. 1999), Searching for products section, 13 pp.77Norton et al., "Multi-Patten Search Engine Aho-Corasick State Machine" (Mar. 17, 2004), Version 2.0, 36 pp.78Norton et al., "Sourcefire Optimizing Pattern Matching for Intrusion Detection" (Sep. 2004), 14 pp.79Notice of Allowance issued by the Japanese Patent Office on Sep. 30, 2011 in connection with Japanese Patent Application No. 2007-523640, which corresponds to related U.S. Appl. No. 10/898,220, now U.S. Patent No. 7,539,681.80Notice of Allowance issued by the U.S. Patent Office on Apr. 6, 2011 in connection with related U.S. Appl. No. 12/010,900.81Notice of Allowance issued by the U.S. Patent Office on Aug. 18, 2008 in connection with related U.S. Appl. No. 11/272,033.82Notice of Allowance issued by the U.S. Patent Office on Dec. 8, 2009 in connection with related U.S. Appl. No. 11/501,776.83Notice of Allowance issued by the U.S. Patent Office on Feb. 24, 2011 in connection with related U.S. Appl. No. 11/493,934.84Notice of Allowance issued by the U.S. Patent Office on Feb. 5, 2010 in connection with related U.S. Appl. No. 11/272,034.85Notice of Allowance issued by the U.S. Patent Office on Jan. 21, 2009 in connection with related U.S. Appl. No. 10/898,220.86Notice of Allowance issued by the U.S. Patent Office on Jan. 24, 2011 in connection with related U.S. Appl. No. 10/843,459.87Notice of Allowance issued by the U.S. Patent Office on Jan. 7, 2010 in connection with related U.S. Appl. No. 10/843,353.88Notice of Allowance issued by the U.S. Patent Office on Jan. 8, 2010 in connection with related U.S. Appl. No. 10/843,373.89Notice of Allowance issued by the U.S. Patent Office on Jul. 22, 2011 in connection with related U.S. Appl. No. 11/711,876.90Notice of Allowance issued by the U.S. Patent Office on Jun. 11, 2009 in connection with related U.S. Appl. No. 10/843,373.91Notice of Allowance issued by the U.S. Patent Office on Jun. 22, 2011 in connection with related U.S. Appl. No. 11/272,035.92Notice of Allowance issued by the U.S. Patent Office on Mar. 5, 2010 in connection with related U.S. Appl. No. 11/785,609.93Notice of Allowance issued by the U.S. Patent Office on May 24, 2010 in connection with related U.S. Appl. No. 10/843,398.94Notice of Allowance issued by the U.S. Patent Office on Oct. 15, 2008 in connection with related U.S. Appl. No. 10/951,796.95Notice of Allowance issued by the U.S. Patent Office on Oct. 21, 2008 in connection with related U.S. Appl. No. 10/843,375.96Notice of Allowance issued by the U.S. Patent Office on Oct. 5, 2007 in connection with related U.S. Appl. No. 10/793,887.97Notice of Allowance issued by the U.S. Patent Office on Oct. 5, 2010 in connection with related U.S. Appl. No. 10/843,374.98Notice of Allowance issued by the U.S. Patent Office on Sep. 6, 2007 in connection with related U.S. Appl. No. 10/843,376.99Office Action issued by the European Patent Office on Jan. 15, 2010 in connection with European patent application No. 05773501.1-2201, which corresponds to related U.S. Appl. Nos. 10/898,220, 11/785,609 and 12/010,900.100Office Action issued by the U.S. Patent Office on Apr. 13, 2011 in connection with related U.S. Appl. No. 12/230,338.101Office Action issued by the U.S. Patent Office on Apr. 15, 2010 in connection with related U.S. Appl. No. 12/010,900.102Office Action issued by the U.S. Patent Office on Apr. 21, 2010 in connection with related U.S. Appl. No. 10/843,459.103Office Action issued by the U.S. Patent Office on Apr. 28, 2009 in connection with related U.S. Appl. No. 11/501,776.104Office Action issued by the U.S. Patent Office on Apr. 6, 2011 in connection with related U.S. Appl. No. 11/711,876.105Office Action issued by the U.S. Patent Office on Apr. 7, 2010 in connection with related U.S. Appl. No. 11/711,876.106Office Action issued by the U.S. Patent Office on Aug. 20, 2009 in connection with related U.S. Appl. No. 10/843,374.107Office Action issued by the U.S. Patent Office on Dec. 17, 2008 in connection with related U.S. Appl. No. 10/843,398.108Office Action issued by the U.S. Patent Office on Dec. 17, 2009 in connection with related U.S. Appl. No. 11/493,934.109Office Action issued by the U.S. Patent Office on Dec. 22, 2010 in connection with related U.S. Appl. No. 11/905,980.110Office Action issued by the U.S. Patent Office on Dec. 23, 2008 in connection with related U.S. Appl. No. 11/272,034.111Office Action issued by the U.S. Patent Office on Feb. 21, 2008 in connection with related U.S. Appl. No. 11/272,033.112Office Action issued by the U.S. Patent Office on Feb. 4, 2009 in connection with related U.S. Appl. No. 10/843,373.113Office Action issued by the U.S. Patent Office on Feb. 5, 2008 in connection with related U.S. Appl. No. 10/843,375.114Office Action issued by the U.S. Patent Office on Feb. 9, 2009 in connection with related U.S. Appl. No. 10/843,459.115Office Action issued by the U.S. Patent Office on Jan. 10, 2008 in connection with related U.S. Appl. No. 10/843,373.116Office Action issued by the U.S. Patent Office on Jan. 16, 2009 in connection with related U.S. Appl. No. 10/843,353.117Office Action issued by the U.S. Patent Office on Jan. 21, 2009 in connection with related U.S. Appl. No. 11/493,934.118Office Action issued by the U.S. Patent Office on Jul. 11, 2008 in connection with related U.S. Appl. No. 11/272,034.119Office Action issued by the U.S. Patent Office on Jul. 16, 2007 in connection with related U.S. Appl. No. 10/898,220.120Office Action issued by the U.S. Patent Office on Jul. 28, 2009 in connection with related U.S. Appl. No. 10/843,353.121Office Action issued by the U.S. Patent Office on Jul. 30, 2009 in connection with related U.S. Appl. No. 11/493,934.122Office Action issued by the U.S. Patent Office on Jul. 6, 2009 in connection with related U.S. Appl. No. 10/843,459.123Office Action issued by the U.S. Patent Office on Jul. 7, 2009 in connection with related U.S. Appl. No. 10/843,398.124Office Action issued by the U.S. Patent Office on Jun. 1, 2009 in connection with related U.S. Appl. No. 11/272,035.125Office Action issued by the U.S. Patent Office on Jun. 23, 2009 in connection with related U.S. Appl. No. 11/785,609.126Office Action issued by the U.S. Patent Office on Mar. 12, 2008 in connection with related U.S. Appl. No. 10/843,459.127Office Action issued by the U.S. Patent Office on Mar. 16, 2010 in connection with related U.S. Appl. No. 11/272,035.128Office Action issued by the U.S. Patent Office on Mar. 20, 2008 in connection with related U.S. Appl. No. 10/843,374.129Office Action issued by the U.S. Patent Office on Mar. 22, 2010 in connection with related U.S. Appl. No. 11/493,934.130Office Action issued by the U.S. Patent Office on May 14, 2009 in connection with related U.S. Appl. No. 11/272,034.131Office Action issued by the U.S. Patent Office on May 31, 2011 in connection with related U.S. Appl. No. 12/688,400.132Office Action issued by the U.S. Patent Office on Nov. 19, 2010 in connection with related U.S. Appl. No. 10/843,459.133Office Action issued by the U.S. Patent Office on Nov. 21, 2007 in connection with related U.S. Appl. No. 10/843,398.134Office Action issued by the U.S. Patent Office on Oct. 21, 2011 in connection with related U.S. Appl. No. 12/969,682.135Office Action issued by the U.S. Patent Office on Oct. 4, 2007 in connection with related U.S. Appl. No. 10/951,796.136Office Action issued by the U.S. Patent Office on Oct. 6, 2008 in connection with related U.S. Appl. No. 10/843,374.137Office Action issued by the U.S. Patent Office on Sep. 26, 2007 in connection with related U.S. Appl. No. 10/843,353.138Office Action issued by the U.S. Patent Office on Sep. 6, 2007 in connection with related U.S. Appl. No. 10/843,374.139Office Action mailed Mar. 1, 2011 from the Japan Patent Office for Japanese patent application No. 2007-523640 in connection with related U.S. Appl. No. 10/898,220, now U.S. patent No. 7,539,681, U.S. Appl. No. 11/785,609, now U.S. patent No. 7,756,885, and U.S. Appl. No. 12/010,900 (English translation enclosed).140Office Action mailed Sep. 7, 2010 from the Japan Patent Office for Japanese patent application No. 2007-523639 in connection with related U.S. Appl. No. 10/951,796, now U.S. patent No. 7,496,962 (English translation enclosed).141PCT International Preliminary Report on Patentability mailed on Apr. 21, 2011 by the International Bureau of WIPO in connection with PCT patent application No. PCT/US2009/059965, which corresponds to U.S. Appl. No. 12/575,612.142Press Release, "FaceTime Protects Enterprises from Information Leaks over Collaborative Suites like Microsoft OCS and IBM Sametime", issued by FaceTime Communications, Belmont, California, Jul. 14, 2008, retrieved from www.facetime.com/pr/pr080714.aspx , Dec. 1, 2009.143R. Deraison, et al., "Nessus Network Auditing," Sungress Publishing, Jul. 20, 2004, pp. 1-13.144R. Deraison, et al., "Passive Vulnerability Scanning: Introduction to NeVO," Tenable Network Security, May 30, 2004, pp. 1-13.145R. Gula, "Passive Vulnerability Detection. Techniques to passively find network security vulnerabilities," Sep. 9, 1999 (5 pp.).146R. Hiyoshi, "Practical Guide to Intrusion Detection System: Snort & Tripwire," Japan, Apr. 25, 2004, pp. 57-230 (concise English explanation of relevance attached).147R.P. Lippmann et al., "Passive Operating System Identification from TCP/IP Packet Headers," Proceedings Workshop on Data Mining for Computer Security (DMSEC ), Nov. 2003 (10 pp.).148S.Siddharth, "Evading NIDS, revisited" (Dec. 12, 2005).149T. Ptacek, et al., "Insertion, Evasion, and Denial of Service: Eluding Network Intrusion Detection", Jan. 1998, pp. 1-63.150Tarjan, et al., "Storing a Sparse Table," Communications of the ACM (Nov. 1979), vol. 2, No. 11, pp. 606-620.151U. Shankar and V. Paxson, Active Mapping: Resisting NIDS Evasion Without Altering Traffic, Proc. IEEE Symposium on Security and Privacy. May 2003, pp. 1-18.152U.S. Appl. No. 10/843,353, filed May 2004, Roesch et al., System and Method for Determining Characteristics of a Network and Analyzing Vulnerabilities.153U.S. Appl. No. 10/843,373, filed May 2004, Roesch et al., Systems and Methods for Identifying the Services of a Network.154U.S. Appl. No. 10/843,374, filed May 2004, Roesch et al., System and Methods for Determining Characteristics of a Network Based on Flow Analysis.155U.S. Appl. No. 10/843,375, filed May 2004, Roesch et al., Systems and Methods for Determining Characteristics of a Network and Assessing Confidence.156U.S. Appl. No. 10/843,398, filed May 2004, Roesch et al., Systems and Methods for Determining Characteristics of a Network.157U.S. Appl. No. 10/843,459, filed May 2004, Roesch et al., Systems and Methods for Determining Characteristics of a Network and Enforcing Policy.158U.S. Appl. No. 10/898,220, filed Jul. 2004, Norton et al., Methods and Systems for Multi-Pattern Searching.159U.S. Appl. No. 10/951,796, filed Sep. 2004, Roelker et al., Intrustion Detection Strategies for Hypertext Transport Protocol.160U.S. Appl. No. 11/272,033, filed Nov. 2005, Dempster et al., Systems and Methods for Identifying the Client Applications of a Network.161U.S. Appl. No. 11/272,034, filed Nov. 2005, Vogel, III et al., Systems and Methods for Modifying Network Map Attributes.162U.S. Appl. No. 11/272,035, filed Nov. 2005, Gustafson et al., Intrustion Event Correlation with Network Discovery Information.163U.S. Appl. No. 11/493,934, filed Jul. 2006, Roesch et al., Device, System and Method for Analysis of Fragments in a Fragment Train.164U.S. Appl. No. 11/501,776, filed Aug. 2006, Roesch et al., Device, System and Method for Analysis of Segments in a Transmission Control Protocol (TCP) Session.165U.S. Appl. No. 11/711,876, filed Feb. 2007, Sturges et al., Device, System and Method for Timestamp Analysis of Segments in a Transmission Control Protocol (TCP) Session.166U.S. Appl. No. 11/785,609, filed Apr. 2007, Norton et al., Methods and Systems for Multi-Pattern Searching.167U.S. Appl. No. 11/905,980, filed Oct. 2007, Roesch, Device, System and Method for Use of Micro-Policies in Intrustion Detection/Prevention.168U.S. Appl. No. 12/010,900, filed Jan. 2008, Norton et al., Methods and Systems for Multi-Pattern Searching.169U.S. Appl. No. 12/230,338, filed Aug. 2008, Sturges et al., Speed and Memory Optimization of Intrusion Detection System (IDS) and Intrusion Prevention System (IPS) Rule Processing.170U.S. Appl. No. 12/813,859, filed Jun. 2010, Polley et al.171U.S. Appl. No. 12/820,227, filed Jun. 2010, Vogel, III et al.172U.S. Appl. No. 12/969,682, filed Dec. 2010, Roesch et al.173U.S. Appl. No. 13/046,127, filed Mar. 11, 2011, Roesch.174U.S. Appl. No. 13/086,819, filed Apr. 14, 2011, Olney et al.175V. Jacobson, et al., Request for Comments: 1323, "TCP Extensions for High Performance," May 1992 (35 pages).176V. Yegneswaran, et al., "Internet Sieve: An Architecture for Generating Resilient Signatures," May 2004, Retrieved from the Internet: URL:http://www.cc.gatech.edu/˜giffin/papers/tr1507/tr1507.pdf [retrieved on Nov. 18, 2010] (XP002610154).Referenced byCiting PatentFiling datePublication dateApplicantTitleUS8365289 *Apr 14, 2008Jan 29, 2013Core Sdi, IncorporatedSystem and method for providing network penetration testingUS9055094May 31, 2012Jun 9, 2015Cisco Technology, Inc.Target-based SMB and DCE/RPC processing for an intrusion detection system or intrusion prevention systemUS9110905Feb 28, 2013Aug 18, 2015Cisco Technology, Inc.System and method for assigning network blocks to sensorsUS9135432Aug 29, 2013Sep 15, 2015Cisco Technology, Inc.System and method for real time data awarenessUS9450975May 7, 2015Sep 20, 2016Cisco Technology, Inc.Target-based SMB and DCE/RPC processing for an intrusion detection system or intrusion prevention systemUS9531738 *Sep 21, 2015Dec 27, 2016Fair Isaac CorporationCyber security adaptive analytics threat monitoring system and methodUS9584535Aug 3, 2015Feb 28, 2017Cisco Technology, Inc.System and method for real time data awarenessUS9602525Feb 27, 2015Mar 21, 2017Cisco Technology, Inc.Classification of malware generated domain namesUS20080256638 *Apr 14, 2008Oct 16, 2008Core Sdi, Inc.System and method for providing network penetration testingUS20160014147 *Sep 21, 2015Jan 14, 2016Fair Isaac CorporationCyber security adaptive analytics threat monitoring system and method* Cited by examinerClassifications U.S. Classification726/22, 726/25, 726/23International ClassificationG06F11/00Cooperative ClassificationH04L63/1425, H04L63/1433, H04L63/1416, G06F21/552European ClassificationG06F21/55A, H04L63/14CLegal EventsDateCodeEventDescriptionApr 29, 2008ASAssignmentOwner name: SOURCEFIRE, INC., MARYLANDFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RITTERMANN, BRIAN;REEL/FRAME:020923/0723Effective date: 20080428May 28, 2013CCCertificate of correctionMar 24, 2014ASAssignmentOwner name: SOURCEFIRE LLC, DELAWAREFree format text: CHANGE OF NAME;ASSIGNOR:SOURCEFIRE, INC.;REEL/FRAME:032513/0481Effective date: 20131009Owner name: CISCO TECHNOLOGY, INC., CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SOURCEFIRE LLC;REEL/FRAME:032513/0513Effective date: 20140320Aug 28, 2015FPAYFee paymentYear of fee payment: 4RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services