US20070083931A1 - Heuristic Detection and Termination of Fast Spreading Network Worm Attacks - Google Patents

Heuristic Detection and Termination of Fast Spreading Network Worm Attacks Download PDF

Info

Publication number
US20070083931A1
US20070083931A1 US11/611,584 US61158406A US2007083931A1 US 20070083931 A1 US20070083931 A1 US 20070083931A1 US 61158406 A US61158406 A US 61158406A US 2007083931 A1 US2007083931 A1 US 2007083931A1
Authority
US
United States
Prior art keywords
network
failed
worm
connection attempts
attempts
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/611,584
Inventor
Mark Spiegel
Bruce McCorkendale
William Sobel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gen Digital Inc
Original Assignee
Symantec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Symantec Corp filed Critical Symantec Corp
Priority to US11/611,584 priority Critical patent/US20070083931A1/en
Publication of US20070083931A1 publication Critical patent/US20070083931A1/en
Assigned to NortonLifeLock Inc. reassignment NortonLifeLock Inc. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: SYMANTEC CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Definitions

  • This invention pertains to the field of countering computer worm attacks, and in particular to a heuristic for detecting and responding to fast-spreading network worm attacks.
  • Computer viruses and worms are types of “malicious code,” which is defined herein as any computer program, module, or code that enters a computer system or other computing device without an authorized user's knowledge and/or without an authorized user's consent.
  • a computer worm is malicious code that has the ability to replicate itself from one computer to another, e.g., over a computer network.
  • the network may be a closed proprietary network or an open network such as the Internet.
  • Modern, fast-spreading computer worms such as CodeRed and Nimda spread over the Internet by searching for vulnerable computer systems. During these searches, the computer worm may attempt thousands (or more) of connections to essentially random addresses. Because of the large number of possible addresses relative to the number of valid addresses, most of these attempted network connections fail. A worm that has a relatively high rate of connection attempts is potentially more dangerous because it can spread faster. However, such a fast-spreading worm will also tend to generate more failed connection attempts.
  • the present invention comprises methods, apparati, and computer program products for detecting and responding to fast-spreading network worm attacks.
  • a network monitoring module ( 110 ) observes ( 205 ) failed network connection attempts from multiple sources ( 10 , 20 ). Each failed network connection attempt originates from any of a set of sources ( 10 , 20 ) and is directed to a destination network address on a network ( 50 ).
  • the sources ( 10 , 20 ) include network devices ( 10 ), and in another embodiment, the sources include processes ( 20 ) running on a network device ( 10 ).
  • a logging module ( 120 ) logs ( 220 ) the failed connection attempts, e.g., in a logged data module ( 130 ).
  • An analysis module ( 150 ) uses the logged data on the failed connection attempts to determine ( 225 ) whether a source ( 10 , 20 ) is infected with a worm. In one embodiment, this determination is based on a set of threshold criteria.
  • the threshold criteria implement a heuristic for determining whether the failed connection attempts associated with a source ( 10 , 20 ) are non-normal, indicating that the source is infected.
  • the threshold criteria for non-normalcy can implement the heuristic in a variety of ways.
  • the threshold criteria include one or more of: the number of failed network connection attempts; the diversity of destination network addresses associated with the failed network connection attempts; the randomness of the failed addresses; and a weighting for each failed network connection attempt according to an attribute thereof (e.g., source or destination address).
  • different threshold criteria are applied to different sources depending on the source, and one or more sources may be excluded completely from the threshold criteria.
  • a response module ( 160 ) responds ( 240 ) to the computer worm.
  • the response may include alerting a user or system administrator, terminating an infected process ( 20 ), and terminating the infected source's network access.
  • FIG. 1 is a block diagram of a host-based embodiment of the present invention.
  • FIG. 2 is a block diagram of a network-based embodiment of the present invention.
  • FIG. 3 is a block diagram illustrating modules of the worm detection system (WDS) 100 according to an embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating the operation of the WDS 100 to detect the presence of computer worms according to an embodiment of the present invention.
  • Computer worms typically generate a relatively high number of failed network connection attempts as they attempt to infect other computer systems over a network.
  • Embodiments of the present invention provide a heuristic to detect these computer worms by monitoring network connection attempts and noting any abnormal activity. Once a worm attack is detected, the attack can be addressed by alerting a user or system administrator to the worm, or by terminating the offending entity or denying its access to the network. These functions are carried out by a worm detection system (WDS) 100 .
  • WDS worm detection system
  • FIG. 1 is a diagram of a “host-based” embodiment of the present invention in which a WDS 100 runs as a software program on a network device 10 .
  • the network device 10 is a computer system; however, the WDS 100 can be used to protect any of a variety of other types of network devices that are susceptible to worm attacks. Therefore, as used herein, the definition of “network device” encompasses not only computer systems such as desktop computers and laptops, but also personal data assistants (PDA), mobile phones, home appliances with network capability, and any other electronic devices that are susceptible to worm attacks.
  • the WDS 100 may be implemented as software, hardware, or firmware, or any combination thereof.
  • FIG. 1 shows the WDS 100 running on the network device 10 , one or more of the function modules of the WDS 100 (shown in greater detail in FIG. 3 ) may be stored and/or executed on a remote system coupled to the network device 10 .
  • the network device 10 is capable of running one or more processes 20 , each of which is typically an instance of a program or code being executed by the device 10 . In a computer system, several processes are typically running at the same time.
  • the processes 20 are coupled to a network interface module 30 for communicating messages over a network 50 .
  • the network 50 comprises any type of communications medium over which a worm can spread, including the Internet, LAN, WAN, VPN, or a wireless network such as a cellular or PCS network.
  • the processes 20 communicate with other network devices by transmitting messages (such as connection attempts) to a destination address on the network 50 . In this embodiment, therefore, a process 20 is referred to herein as a “source” associated with a connection attempt.
  • any suitable communications protocol can be used, such as TCP/IP.
  • a process 20 that is running on the network device 10 may be infected with a computer worm. If infected, a process 20 is likely to produce a relatively large number of connection attempts to remote destination addresses over a given period of time. A relatively high fraction of these connection attempts are expected to fail because of the large number of possible destination addresses, and because the destination addresses are typically chosen at random.
  • the WDS 100 is therefore coupled to the network interface module 30 to monitor these failed connection attempts. Using heuristic techniques, the WDS 100 determines whether any of the processes 20 are infected based on whether the failed connection attempts associated with a process 20 are non-normal.
  • FIG. 2 is a diagram of a “network-based” embodiment of the present invention.
  • This embodiment (and variations thereof) is similar to the host-based embodiment in which a WDS 100 observes failed network connection attempts from a set of sources.
  • the sources are network devices 10 , not individual processes 20 running thereon.
  • the network devices 10 are coupled to a network 50 and are capable of transmitting messages to remote systems—such as connection attempts to destination addresses on the network 50 . These connection attempts are handled by a network appliance 40 while being transmitted to the network 50 .
  • the network appliance 40 can be a network firewall, a switch, a router, or any network appliance that has access to connection attempts from network devices 10 .
  • the WDS 100 is coupled to the network appliance 40 for observing these connection attempts.
  • the WDS 100 may be implemented within the network appliance 40 in full or in part, or it may be separately implemented and coupled to the appliance 40 .
  • the WDS 100 of the network-based embodiment implements a similar heuristic as that of the host-based embodiment. In this case, the WDS 100 determines whether any of the network devices 10 (i.e., sources) are infected, based on whether the failed connection attempts associated with a network device 10 are non-normal.
  • the heuristic for any of the embodiments can take a variety of forms, as the failed connection attempts associated with a particular source can be quantified in many ways.
  • the heuristic is implemented with a set of threshold criteria that embodies whether the failed connection attempts associated with a source are non-normal. A worm is thus declared (i.e., that a particular source is infected with a worm) when the source's failed network connection attempts during a period of time meet or exceed at least one of the threshold criteria.
  • the threshold criteria include any one or a combination of the following metrics:
  • the threshold criteria may simply include the number of failed network connection attempts, it may also be useful to include the diversity of the destination addresses of the failed attempts in the criteria.
  • a source is more likely to be infected if the number of unique addresses of its failed connection attempts is high. For example, a legitimate program might attempt to reconnect to a particular address many times, in which case the diversity would be relatively low.
  • a computer worm is likely to attempt to connect to many different addresses, which would lead to a relatively high diversity. Therefore, failed attempts to a small number of addresses may or may not indicate malicious behavior, but failed attempts to many addresses is a significant indicator of—and thus a good heuristic for—a computer worm.
  • the number of failed attempts and the diversity thereof can be a useful heuristic for detecting a computer worm and avoiding false positives. For example, even where diversity is extremely high, there is likely to be no problem if the actual number of failed attempts is low. Likewise, a high number of failed attempts with low diversity (i.e., failed attempts to the same address) may indicate a network error rather than a computer worm.
  • the diversity of failed network connection attempts is quantified by the number of unique addresses to which a connection attempts failed during a specified time period.
  • the diversity can be measured by the number of unique failed addresses relative to the total number of failed attempts, e.g., given as a percentage of the total number of failed attempts.
  • the diversity of failed addresses can also be quantified by collecting the addresses into a subnet mask, the size of the subnet mask indicating the diversity. A larger subnet mask indicates a more diverse set of failed connection attempts.
  • the heuristic includes a correlation of target addresses with whether a prior domain name server (DNS) lookup was performed for the failed network connection attempts. This can be implemented, for example, by including in the threshold criteria a correlation with a prior DNS lookup having not been performed before an associated failed network connection attempt.
  • DNS domain name server
  • Computer worms typically do not perform a DNS lookup before attempting a connection to a given address, whereas legitimate programs usually resolve a text-based address via DNS before attempting a connection.
  • the heuristic can be configured to ignore failed connection attempts that can be correlated with prior DNS lookups from the same entity performing the failed connection attempt.
  • the heuristic can be configured to give greater weight to failed connection attempts where no prior DNS lookup is performed, rather than ignoring altogether those failed attempts where a prior DNS lookup was performed. This strategy avoids allowing the heuristic to be easily defeated by a worm programmed to perform a simple DNS lookup, while still increasing the reliability of the heuristic and avoiding false positives.
  • the threshold criteria are based on historical data for failed connection attempts and the diversity thereof that are obtained over time. These collected data are taken and defined as typical failure rates for normal operating conditions.
  • the threshold specifies a deviation from the normal operating conditions such that an observed actual condition outside this specified deviation is considered non-normal. For example, the threshold can specify a percentage increase over normal connection failures rates and/or destination address diversity.
  • the WDS 100 thus declares a computer worm when it detects rates above these thresholds. This technique allows for the threshold criteria to be dynamic, adapting to the particular operating environment of each system.
  • the actual thresholds chosen for detecting a computer worm are design parameters and thus depend on the particular application of the WDS 100 .
  • the thresholds can be chosen based upon empirical data for a given situation.
  • the thresholds can be set very strictly (high) to avoid false positives, or they can be set less strictly (low) for greater security.
  • Typical computer worms are designed to spread very rapidly, so they tend to cause a significantly higher number of failed connections and diversity thereof compared to normal conditions. Accordingly, relatively strict thresholds are still expected to detect these worms reliably.
  • the time period during which the threshold is measured is a parameter that can be set depending on the system requirements. Setting a short period leads to quicker detection but allows for less data to be gathered. Long periods allow for more data and are thus more reliable, but they allow a computer worm to operate for longer before being detected.
  • the failed attempts are weighted according to an attribute thereof, such as the source 10 , 20 of the failed attempt or the destination address. This allows the heuristic to be fine tuned, for example, to increase the indication of malicious behavior when a particular source 10 , 20 has a failed connection attempt to a suspect address.
  • different threshold criteria are applied to different sources 10 , 20 depending on the source. Accordingly, the threshold criteria allow for stricter limits on certain sources while allowing looser limits on other sources, enabling the heuristic to be highly configurable. This function can be employed to avoid false positives (i.e., declaring a computer worm where the source 10 , 20 is not infected) in cases where a source's failed connection attempts are expected to be legitimately above the set threshold criteria. For example, mail servers naturally have more failed attempts, and a higher diversity thereof, because they perform operations like responding to spam email. Setting the mail server's threshold criteria differently (higher, in this example) than other sources' threshold criteria helps to avoid false positives associated with the mail server while not reducing the heuristic's effectiveness in detecting worms in other sources 10 , 20 .
  • another embodiment of the invention includes support for exclusions in the threshold criteria. Exclusions can be supported by excepting particular addresses from being logged as a failed connection attempt, or by excluding a particular process or a particular host computer from being subject to alert or termination. Additionally, there are many ways of supporting exclusions, and the exclusions can be configured to exclude completely a source 10 , 20 , or to exclude particular source-destination address combinations.
  • FIG. 3 shows an embodiment of the WDS 100 , which comprises a group of operatively coupled modules including a network monitoring module 110 , a logging module 120 , a logged data module 130 , a criteria data module 140 , an analysis module 150 , and a response module 160 .
  • the term “module” refers to computer program logic and/or any hardware or circuitry utilized to provide the functionality attributed to the module.
  • a module may be implemented in hardware, software, firmware, or any combination thereof.
  • any of the modules or a portion thereof may be stored and/or executed by a remote device coupled to the WDS 100 .
  • the flowchart of FIG. 4 illustrates the operation of the WDS 100 according to an embodiment of the present invention.
  • the network monitoring module 110 observes 205 a network connection attempt by a source 10 , 20 .
  • the connection attempt and whether the attempt failed are messages transmitted from and to the source 10 , 20 , so accessing these messages allows the network monitoring module 110 to observe 205 network connection attempts.
  • the network monitoring module 110 is coupled to the network interface module 30 for observing network messages sent by a process 20 .
  • the network monitoring module 110 is coupled to the network appliance 40 to observe 205 the connection attempts.
  • the network monitoring module 110 can use any suitable method to observe 205 the connection attempts.
  • the WDS 100 is a computer program running on a UNIX or WINDOWS computer system
  • the network monitoring module 110 can observe 205 connection attempts using the Libpcap functions to “hook” the network stack.
  • Other methods of observing 205 the connection attempts include implementing a network card shim, hooking the TDI layer, using MICROSOFT Firewall APIs or proprietary APIs, replacing winsock, and implementing a winsock-layered provider. It can be appreciated that a variety of known techniques for observing 205 failed connection attempts are possible and are within the scope of the present invention.
  • the WDS 100 determines 215 whether the failed connection attempt is excluded from the heuristic. If 215 the failed connection attempt is excluded, the WDS 100 continues to observe 205 connection attempts. Whether a failed connection attempt is excluded may depend on any of the attempt's characteristics, such as the source of the failed attempt and its destination address, or a combination thereof.
  • the data for determining 215 the exclusion may be stored, for example, in the criteria data module 140 .
  • the logging module 120 logs 220 the failed connection attempt in the logged data module 130 .
  • the data stored in the logged data module 130 for each failed attempt may include the identification of the source 10 , 20 of the attempt, the destination address, and whether there was a prior DNS lookup.
  • the data that must be stored depend on the threshold criteria (described above) selected, such as whether the criteria are based on diversity of destination addresses and/or prior DNS lookup.
  • a date/time stamp is also included in one embodiment. Because the threshold criteria test the failed connection attempts for a given period of time in one embodiment, the date/time stamp allows the WDS 100 to determine the whether each failed attempt occurred within that time period.
  • the logging module 120 may periodically purge the logged data module 130 of this data; therefore, the time period in which the logged failed connection attempts occurred would be known. This method may be particularly useful when the WDS 100 is implemented in a network appliance 40 having limited data storage capability.
  • the analysis module determines 225 whether any source's failed network connection attempts during a period of time meet or exceed the threshold criteria.
  • the analysis module 150 can be configured to make this determination at regular intervals, at predetermined times, in response to certain events (e.g., a new failed attempt), or upon any other desired schedule.
  • the analysis module 150 can be configured to use any combination of threshold criteria that indicate whether a source's failed connection attempts are non-normal, such as the threshold criteria described above.
  • the analysis module 150 declares 230 a computer worm. This declaration by the analysis module 150 indicates that the source is possibly infected with a worm according to the heuristic. Being a heuristic method, this declaration is not necessarily determinative, and it may be combined with additional tests to provide a more accurate detection of the computer worm.
  • the response module 160 is coupled to the analysis module 150 .
  • the response module 160 when the analysis module 150 declares 230 a worm, the response module 160 responds 240 to the worm attack.
  • the appropriate response depends on the system involved, and it may include alerting a user or system administrator to the computer worm.
  • the response module 240 terminates the infected process 20 .
  • the response module 240 may terminate the network access of the network device 10 that is executing the infected process 20 , rather than terminating the process 20 itself. This allows the user to control when and whether a process 20 is terminated (e.g., allowing a user to save before closing an application), while still protecting any other devices coupled to the network 50 .
  • the response module 140 terminates the network access of the infected network device 10 .
  • a hybrid embodiment incorporates elements from both host and network-based embodiments, wherein the WDS 100 observes connection attempts from a number of processes 20 running on a number of network devices 10 .
  • the WDS 100 could then provide the functionality of both embodiments, tracking the network connection attempts of multiple systems on a network to the process level.

Abstract

Methods, apparati, and computer program products for detecting and responding to fast-spreading network worm attacks include a network monitoring module, which observes failed network connection attempts from multiple sources. A logging module logs the failed connection attempts. An analysis module uses the logged data on the failed connection attempts to determine whether a sources is infected with a worm using a set of threshold criteria. The threshold criteria indicate whether a source's failed connection attempts are non-normal. In one embodiment, a response module responds to the computer worm by, e.g., alerting a user or system administrator, terminating an infected process, or terminating the infected source's network access.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. application Ser. No. 10/280,586, filed Oct. 24, 2002, now U.S. Pat. No. 7,159,149, which is incorporated by reference in its entirety.
  • BACKGROUND
  • This invention pertains to the field of countering computer worm attacks, and in particular to a heuristic for detecting and responding to fast-spreading network worm attacks.
  • Computer viruses and worms are types of “malicious code,” which is defined herein as any computer program, module, or code that enters a computer system or other computing device without an authorized user's knowledge and/or without an authorized user's consent. In particular, a computer worm is malicious code that has the ability to replicate itself from one computer to another, e.g., over a computer network. The network may be a closed proprietary network or an open network such as the Internet. Ször, Péter, “Attacks on Win32,” Proceedings of the Virus Bulletin Conference, October 1998, England, and Ször, Péter, “Attacks on Win32—Part II,” Proceedings of the Virus Bulletin Conference, September 2000, England, describe various attacks by malicious code, including worms, on computer systems, with particular applicability to the Win32 API (Application Programming Interface) of Microsoft Corporation.
  • Modern, fast-spreading computer worms such as CodeRed and Nimda spread over the Internet by searching for vulnerable computer systems. During these searches, the computer worm may attempt thousands (or more) of connections to essentially random addresses. Because of the large number of possible addresses relative to the number of valid addresses, most of these attempted network connections fail. A worm that has a relatively high rate of connection attempts is potentially more dangerous because it can spread faster. However, such a fast-spreading worm will also tend to generate more failed connection attempts.
  • As writers of malicious code continue to develop fast-spreading computer worms, the need persists for reliable techniques for detecting these worms and responding to them as early as possible in order to minimize any damage they can do.
  • SUMMARY
  • The present invention comprises methods, apparati, and computer program products for detecting and responding to fast-spreading network worm attacks. In one embodiment, a network monitoring module (110) observes (205) failed network connection attempts from multiple sources (10,20). Each failed network connection attempt originates from any of a set of sources (10,20) and is directed to a destination network address on a network (50). In one embodiment, the sources (10,20) include network devices (10), and in another embodiment, the sources include processes (20) running on a network device (10). A logging module (120) logs (220) the failed connection attempts, e.g., in a logged data module (130). An analysis module (150) uses the logged data on the failed connection attempts to determine (225) whether a source (10,20) is infected with a worm. In one embodiment, this determination is based on a set of threshold criteria. The threshold criteria implement a heuristic for determining whether the failed connection attempts associated with a source (10,20) are non-normal, indicating that the source is infected.
  • The threshold criteria for non-normalcy can implement the heuristic in a variety of ways. In various embodiments, the threshold criteria include one or more of: the number of failed network connection attempts; the diversity of destination network addresses associated with the failed network connection attempts; the randomness of the failed addresses; and a weighting for each failed network connection attempt according to an attribute thereof (e.g., source or destination address). In other embodiments, different threshold criteria are applied to different sources depending on the source, and one or more sources may be excluded completely from the threshold criteria.
  • In one embodiment, if the analysis module (150) declares (230) the presence of a computer worm, a response module (160) responds (240) to the computer worm. The response may include alerting a user or system administrator, terminating an infected process (20), and terminating the infected source's network access.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • These and other more detailed and specific objects and features of the present invention are more fully disclosed in the following specification, reference being had to the accompany drawings, in which:
  • FIG. 1 is a block diagram of a host-based embodiment of the present invention.
  • FIG. 2 is a block diagram of a network-based embodiment of the present invention.
  • FIG. 3 is a block diagram illustrating modules of the worm detection system (WDS) 100 according to an embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating the operation of the WDS 100 to detect the presence of computer worms according to an embodiment of the present invention.
  • DETAILED DESCRIPTION
  • Computer worms typically generate a relatively high number of failed network connection attempts as they attempt to infect other computer systems over a network. Embodiments of the present invention provide a heuristic to detect these computer worms by monitoring network connection attempts and noting any abnormal activity. Once a worm attack is detected, the attack can be addressed by alerting a user or system administrator to the worm, or by terminating the offending entity or denying its access to the network. These functions are carried out by a worm detection system (WDS) 100.
  • FIG. 1 is a diagram of a “host-based” embodiment of the present invention in which a WDS 100 runs as a software program on a network device 10. In one embodiment, the network device 10 is a computer system; however, the WDS 100 can be used to protect any of a variety of other types of network devices that are susceptible to worm attacks. Therefore, as used herein, the definition of “network device” encompasses not only computer systems such as desktop computers and laptops, but also personal data assistants (PDA), mobile phones, home appliances with network capability, and any other electronic devices that are susceptible to worm attacks. In other embodiments, such as where the network device 10 is a mobile phone, the WDS 100 may be implemented as software, hardware, or firmware, or any combination thereof. Moreover, although FIG. 1 shows the WDS 100 running on the network device 10, one or more of the function modules of the WDS 100 (shown in greater detail in FIG. 3) may be stored and/or executed on a remote system coupled to the network device 10.
  • The network device 10 is capable of running one or more processes 20, each of which is typically an instance of a program or code being executed by the device 10. In a computer system, several processes are typically running at the same time. The processes 20 are coupled to a network interface module 30 for communicating messages over a network 50. The network 50 comprises any type of communications medium over which a worm can spread, including the Internet, LAN, WAN, VPN, or a wireless network such as a cellular or PCS network. The processes 20 communicate with other network devices by transmitting messages (such as connection attempts) to a destination address on the network 50. In this embodiment, therefore, a process 20 is referred to herein as a “source” associated with a connection attempt. Depending on the type of network device 10 and network 50, any suitable communications protocol can be used, such as TCP/IP.
  • A process 20 that is running on the network device 10 may be infected with a computer worm. If infected, a process 20 is likely to produce a relatively large number of connection attempts to remote destination addresses over a given period of time. A relatively high fraction of these connection attempts are expected to fail because of the large number of possible destination addresses, and because the destination addresses are typically chosen at random. The WDS 100 is therefore coupled to the network interface module 30 to monitor these failed connection attempts. Using heuristic techniques, the WDS 100 determines whether any of the processes 20 are infected based on whether the failed connection attempts associated with a process 20 are non-normal.
  • FIG. 2 is a diagram of a “network-based” embodiment of the present invention. This embodiment (and variations thereof) is similar to the host-based embodiment in which a WDS 100 observes failed network connection attempts from a set of sources. In this embodiment, however, the sources are network devices 10, not individual processes 20 running thereon. The network devices 10 are coupled to a network 50 and are capable of transmitting messages to remote systems—such as connection attempts to destination addresses on the network 50. These connection attempts are handled by a network appliance 40 while being transmitted to the network 50. The network appliance 40 can be a network firewall, a switch, a router, or any network appliance that has access to connection attempts from network devices 10. The WDS 100 is coupled to the network appliance 40 for observing these connection attempts. The WDS 100 may be implemented within the network appliance 40 in full or in part, or it may be separately implemented and coupled to the appliance 40. The WDS 100 of the network-based embodiment implements a similar heuristic as that of the host-based embodiment. In this case, the WDS 100 determines whether any of the network devices 10 (i.e., sources) are infected, based on whether the failed connection attempts associated with a network device 10 are non-normal.
  • The heuristic for any of the embodiments can take a variety of forms, as the failed connection attempts associated with a particular source can be quantified in many ways. In one embodiment, the heuristic is implemented with a set of threshold criteria that embodies whether the failed connection attempts associated with a source are non-normal. A worm is thus declared (i.e., that a particular source is infected with a worm) when the source's failed network connection attempts during a period of time meet or exceed at least one of the threshold criteria. In various embodiments, the threshold criteria include any one or a combination of the following metrics:
      • (1) the number of failed network connection attempts;
      • (2) the diversity of destination network addresses associated with the failed network connection attempts;
      • (3) the randomness of the failed addresses; and
      • (4) a weighting for each failed network connection attempt according to an attribute thereof (e.g., source or destination address).
        Moreover, different threshold criteria may be applied to different sources depending on the source. In addition to applying different threshold criteria, a set of sources may be excluded completely from the threshold criteria. These and various other types of suitable threshold criteria are discussed in further detail below.
  • Although the threshold criteria may simply include the number of failed network connection attempts, it may also be useful to include the diversity of the destination addresses of the failed attempts in the criteria. A source is more likely to be infected if the number of unique addresses of its failed connection attempts is high. For example, a legitimate program might attempt to reconnect to a particular address many times, in which case the diversity would be relatively low. On the other hand, a computer worm is likely to attempt to connect to many different addresses, which would lead to a relatively high diversity. Therefore, failed attempts to a small number of addresses may or may not indicate malicious behavior, but failed attempts to many addresses is a significant indicator of—and thus a good heuristic for—a computer worm. Most legitimate applications will not have a high number of failed connection attempts, even to a small set of distinct addresses. Used in combination, the number of failed attempts and the diversity thereof can be a useful heuristic for detecting a computer worm and avoiding false positives. For example, even where diversity is extremely high, there is likely to be no problem if the actual number of failed attempts is low. Likewise, a high number of failed attempts with low diversity (i.e., failed attempts to the same address) may indicate a network error rather than a computer worm.
  • In one embodiment, the diversity of failed network connection attempts is quantified by the number of unique addresses to which a connection attempts failed during a specified time period. Alternatively, the diversity can be measured by the number of unique failed addresses relative to the total number of failed attempts, e.g., given as a percentage of the total number of failed attempts. The diversity of failed addresses can also be quantified by collecting the addresses into a subnet mask, the size of the subnet mask indicating the diversity. A larger subnet mask indicates a more diverse set of failed connection attempts.
  • In another embodiment, the heuristic includes a correlation of target addresses with whether a prior domain name server (DNS) lookup was performed for the failed network connection attempts. This can be implemented, for example, by including in the threshold criteria a correlation with a prior DNS lookup having not been performed before an associated failed network connection attempt. Computer worms typically do not perform a DNS lookup before attempting a connection to a given address, whereas legitimate programs usually resolve a text-based address via DNS before attempting a connection. The heuristic can be configured to ignore failed connection attempts that can be correlated with prior DNS lookups from the same entity performing the failed connection attempt. Alternatively, the heuristic can be configured to give greater weight to failed connection attempts where no prior DNS lookup is performed, rather than ignoring altogether those failed attempts where a prior DNS lookup was performed. This strategy avoids allowing the heuristic to be easily defeated by a worm programmed to perform a simple DNS lookup, while still increasing the reliability of the heuristic and avoiding false positives.
  • In another embodiment, the threshold criteria are based on historical data for failed connection attempts and the diversity thereof that are obtained over time. These collected data are taken and defined as typical failure rates for normal operating conditions. The threshold specifies a deviation from the normal operating conditions such that an observed actual condition outside this specified deviation is considered non-normal. For example, the threshold can specify a percentage increase over normal connection failures rates and/or destination address diversity. The WDS 100 thus declares a computer worm when it detects rates above these thresholds. This technique allows for the threshold criteria to be dynamic, adapting to the particular operating environment of each system.
  • The actual thresholds chosen for detecting a computer worm are design parameters and thus depend on the particular application of the WDS 100. For example, the thresholds can be chosen based upon empirical data for a given situation. The thresholds can be set very strictly (high) to avoid false positives, or they can be set less strictly (low) for greater security. Typical computer worms are designed to spread very rapidly, so they tend to cause a significantly higher number of failed connections and diversity thereof compared to normal conditions. Accordingly, relatively strict thresholds are still expected to detect these worms reliably. However, it is possible that creators of computer worms in the future will design worms that are more subtle, causing fewer failed connection attempts or lower diversity thereof (e.g., by attempting to connect to the same address several times before giving up, or over a long period of time). In such a case, these thresholds can be easily reconfigured to catch new breeds of worms.
  • In addition, the time period during which the threshold is measured is a parameter that can be set depending on the system requirements. Setting a short period leads to quicker detection but allows for less data to be gathered. Long periods allow for more data and are thus more reliable, but they allow a computer worm to operate for longer before being detected.
  • In another embodiment of the threshold criteria, the failed attempts are weighted according to an attribute thereof, such as the source 10,20 of the failed attempt or the destination address. This allows the heuristic to be fine tuned, for example, to increase the indication of malicious behavior when a particular source 10,20 has a failed connection attempt to a suspect address.
  • In another embodiment, different threshold criteria are applied to different sources 10,20 depending on the source. Accordingly, the threshold criteria allow for stricter limits on certain sources while allowing looser limits on other sources, enabling the heuristic to be highly configurable. This function can be employed to avoid false positives (i.e., declaring a computer worm where the source 10,20 is not infected) in cases where a source's failed connection attempts are expected to be legitimately above the set threshold criteria. For example, mail servers naturally have more failed attempts, and a higher diversity thereof, because they perform operations like responding to spam email. Setting the mail server's threshold criteria differently (higher, in this example) than other sources' threshold criteria helps to avoid false positives associated with the mail server while not reducing the heuristic's effectiveness in detecting worms in other sources 10,20.
  • To allow for legitimate network administration tools such as network scanners and vulnerability assessment tools, another embodiment of the invention includes support for exclusions in the threshold criteria. Exclusions can be supported by excepting particular addresses from being logged as a failed connection attempt, or by excluding a particular process or a particular host computer from being subject to alert or termination. Additionally, there are many ways of supporting exclusions, and the exclusions can be configured to exclude completely a source 10,20, or to exclude particular source-destination address combinations.
  • FIG. 3 shows an embodiment of the WDS 100, which comprises a group of operatively coupled modules including a network monitoring module 110, a logging module 120, a logged data module 130, a criteria data module 140, an analysis module 150, and a response module 160. As used herein, the term “module” refers to computer program logic and/or any hardware or circuitry utilized to provide the functionality attributed to the module. A module may be implemented in hardware, software, firmware, or any combination thereof. In addition, any of the modules or a portion thereof may be stored and/or executed by a remote device coupled to the WDS 100.
  • The flowchart of FIG. 4 illustrates the operation of the WDS 100 according to an embodiment of the present invention. The network monitoring module 110 observes 205 a network connection attempt by a source 10,20. The connection attempt and whether the attempt failed are messages transmitted from and to the source 10,20, so accessing these messages allows the network monitoring module 110 to observe 205 network connection attempts. In one host-based embodiment, the network monitoring module 110 is coupled to the network interface module 30 for observing network messages sent by a process 20. In one network-based embodiment, the network monitoring module 110 is coupled to the network appliance 40 to observe 205 the connection attempts.
  • The network monitoring module 110 can use any suitable method to observe 205 the connection attempts. For example, where the WDS 100 is a computer program running on a UNIX or WINDOWS computer system, the network monitoring module 110 can observe 205 connection attempts using the Libpcap functions to “hook” the network stack. Other methods of observing 205 the connection attempts include implementing a network card shim, hooking the TDI layer, using MICROSOFT Firewall APIs or proprietary APIs, replacing winsock, and implementing a winsock-layered provider. It can be appreciated that a variety of known techniques for observing 205 failed connection attempts are possible and are within the scope of the present invention.
  • If 210 the observed connection attempt failed, the WDS 100 continues to observe 205 connection attempts. Otherwise, in one embodiment, the WDS 100 determines 215 whether the failed connection attempt is excluded from the heuristic. If 215 the failed connection attempt is excluded, the WDS 100 continues to observe 205 connection attempts. Whether a failed connection attempt is excluded may depend on any of the attempt's characteristics, such as the source of the failed attempt and its destination address, or a combination thereof. The data for determining 215 the exclusion may be stored, for example, in the criteria data module 140.
  • Otherwise, the logging module 120 logs 220 the failed connection attempt in the logged data module 130. In one embodiment, the data stored in the logged data module 130 for each failed attempt may include the identification of the source 10,20 of the attempt, the destination address, and whether there was a prior DNS lookup. Clearly, the data that must be stored depend on the threshold criteria (described above) selected, such as whether the criteria are based on diversity of destination addresses and/or prior DNS lookup. In addition, a date/time stamp is also included in one embodiment. Because the threshold criteria test the failed connection attempts for a given period of time in one embodiment, the date/time stamp allows the WDS 100 to determine the whether each failed attempt occurred within that time period. Alternatively, the logging module 120 may periodically purge the logged data module 130 of this data; therefore, the time period in which the logged failed connection attempts occurred would be known. This method may be particularly useful when the WDS 100 is implemented in a network appliance 40 having limited data storage capability.
  • Once the failed connection attempts have been logged 220 (or if there are no failed attempts), the analysis module determines 225 whether any source's failed network connection attempts during a period of time meet or exceed the threshold criteria. The analysis module 150 can be configured to make this determination at regular intervals, at predetermined times, in response to certain events (e.g., a new failed attempt), or upon any other desired schedule. The analysis module 150 can be configured to use any combination of threshold criteria that indicate whether a source's failed connection attempts are non-normal, such as the threshold criteria described above.
  • If the failed connection attempts associated with any source meet or exceed the threshold criteria, the analysis module 150 declares 230 a computer worm. This declaration by the analysis module 150 indicates that the source is possibly infected with a worm according to the heuristic. Being a heuristic method, this declaration is not necessarily determinative, and it may be combined with additional tests to provide a more accurate detection of the computer worm.
  • The response module 160 is coupled to the analysis module 150. In one embodiment, when the analysis module 150 declares 230 a worm, the response module 160 responds 240 to the worm attack. The appropriate response depends on the system involved, and it may include alerting a user or system administrator to the computer worm. In one host-based embodiment, the response module 240 terminates the infected process 20. Alternatively, the response module 240 may terminate the network access of the network device 10 that is executing the infected process 20, rather than terminating the process 20 itself. This allows the user to control when and whether a process 20 is terminated (e.g., allowing a user to save before closing an application), while still protecting any other devices coupled to the network 50. In one network-based embodiment, the response module 140 terminates the network access of the infected network device 10.
  • The above description is included to illustrate the operation of various embodiments of the invention and is not meant to limit the scope of the invention. The scope of the invention is to be limited only by the following claims. For example, a hybrid embodiment incorporates elements from both host and network-based embodiments, wherein the WDS 100 observes connection attempts from a number of processes 20 running on a number of network devices 10. The WDS 100 could then provide the functionality of both embodiments, tracking the network connection attempts of multiple systems on a network to the process level. Accordingly, from the above discussion, many variations will be apparent to one skilled in the art that would yet be encompassed by the spirit and scope of the present invention.

Claims (34)

1. A computer-implemented method for detecting a worm infection on a set of sources coupled to a network, the method comprising:
observing a plurality of failed network connection attempts, each failed network connection attempt originating from one of the sources and directed to a destination network address; and
responsive to a source's failed network connection attempts during a period of time meeting at least one of a set of threshold criteria, declaring a presence of a worm.
2. The method of claim 1, wherein at least one source is a process running on a network device.
3. The method of claim 2, further comprising:
responsive to a declaration of a worm, terminating the process associated with the declared worm.
4. The method of claim 1, wherein at least one source is a network device coupled to a network.
5. The method of claim 4, further comprising:
responsive to a declaration of a worm, terminating network access of the network device associated with the declared worm.
6. The method of claim 1, further comprising:
responsive to a declaration of a worm, alerting a user.
7. The method of claim 1, further comprising:
responsive to a declaration of a worm, alerting a system administrator.
8. The method of claim 1, wherein the threshold criteria comprise:
a number of failed network connection attempts; and
a diversity of destination network addresses associated with the failed network connection attempts.
9. The method of claim 1, wherein the threshold criteria comprise a weighting associated with at least one of the failed network connection attempts according to an attribute thereof.
10. The method of claim 1, wherein a threshold criterion applied to a source depends on the source, and different threshold criteria are used for different sources.
11. The method of claim 1, wherein declaring a worm comprises excluding a source from the threshold criteria, whereby the source's failed network connection attempts do not cause a presence of a worm to be declared.
12. A computer-implemented method for detecting a worm on a network device, the method comprising:
monitoring attempts to connect to a destination network address by any of a set of processes running on the network device;
logging the process and the destination network address associated with a set of failed connection attempts; and
responsive to the failed connection attempts associated with a process being determined non-normal, declaring a presence of a worm.
13. The method of claim 12, further comprising:
responsive to a declaration of a worm, terminating the process associated with the non-normal failed connection attempts.
14. The method of claim 12, further comprising:
responsive to a declaration of a worm, terminating network access of the network device.
15. The method of claim 12, wherein the determination of non-normalcy is based at least in part on:
a number of failed network connection attempts; and
a diversity of destination network addresses associated with the failed network connection attempts.
16. A computer-implemented method for detecting a worm on a network, the method comprising:
monitoring attempts to connect to a destination network address by any of a set of network devices coupled to the network;
logging the network device and the destination network address associated with a set of failed connection attempts; and
responsive to the failed connection attempts associated with a network device being determined non-normal, declaring a presence of a worm.
17. The method of claim 16, further comprising:
responsive to a declaration of a worm, terminating network access of the network device.
18. The method of claim 16, wherein the determination of non-normalcy is based at least in part on:
a number of failed network connection attempts; and
a diversity of destination network addresses associated with the failed network connection attempts.
19. A computer program product comprising a computer-readable medium containing computer program code for detecting a worm infection on a set of sources coupled to a network, the computer program code comprising instructions for:
observing a plurality of failed network connection attempts, each failed network connection attempt originating from one of the sources and directed to a destination network address; and
responsive to a source's failed network connection attempts during a period of time meeting at least one of a set of threshold criteria, declaring a presence of a worm.
20. The computer program product of claim 19, wherein at least one source is a process running on a network device.
21. The computer program product of claim 20, the instructions for further performing:
responsive to a declaration of a worm, terminating the process associated with the declared worm.
22. The computer program product of claim 19, wherein at least one source is a network device coupled to a network.
23. The computer program product of claim 22, the computer program code further comprising instructions for:
responsive to a declaration of a worm, terminating network access of the network device associated with the declared worm.
24. The computer program product of claim 19, wherein the threshold criteria comprise:
a number of failed network connection attempts; and
a diversity of destination network addresses associated with the failed network connection attempts.
25. A computer program product comprising a computer-readable medium containing computer program code for detecting a worm on a network device, the computer program code comprising instructions for:
monitoring attempts to connect to a destination network address by any of a set of processes running on the network device;
logging the process and the destination network address associated with a set of failed connection attempts; and
responsive to the failed connection attempts associated with a process being determined non-normal, declaring a presence of a worm.
26. A computer program product comprising a computer-readable medium containing computer program code for detecting a worm on a network, the computer program code comprising instructions for:
monitoring attempts to connect to a destination network address by any of a set of network devices coupled to the network;
logging the network device and the destination network address associated with a set of failed connection attempts; and
responsive to the failed connection attempts associated with a network device being determined non-normal, declaring a presence of a worm.
27. A system for detecting a worm, the system comprising:
a network monitoring module configured to observe a plurality of failed network connection attempts, each failed network connection attempt originating from any of a set of sources and directed to a destination network address;
a logging module coupled to the network monitoring module for logging the failed attempts; and
an analysis module coupled to the logging module for declaring a presence of a worm responsive to a source's failed network connection attempts during a period of time meeting at least one of a set of threshold criteria.
28. The system of claim 27, wherein the threshold criteria comprise:
a number of failed network connection attempts; and
a diversity of destination network addresses associated with the failed network connection attempts.
29. The system of claim 27, wherein the threshold criteria comprise a weighting associated with at least one of the failed network connection attempts according to an attribute thereof.
30. The system of claim 27, further comprising:
a response module coupled to the analysis module, the response module configured to respond to the worm upon a declaration thereof.
31. The system of claim 30, wherein the response module is configured to alert a user of a declared worm.
32. The system of claim 27, wherein at least one source is a process running on a network device, and the response module is configured to terminate the process associated with a declared worm.
33. The system of claim 27, wherein at least one source is a network device coupled to a network, and the response module is configured to terminate network access of the network device associated with a declared worm.
34. The system of claim 27, wherein the analysis module is configured to exclude a source from the threshold criteria, whereby the source's failed network connection attempts do not cause the analysis module to declare a worm.
US11/611,584 2002-10-24 2006-12-15 Heuristic Detection and Termination of Fast Spreading Network Worm Attacks Abandoned US20070083931A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/611,584 US20070083931A1 (en) 2002-10-24 2006-12-15 Heuristic Detection and Termination of Fast Spreading Network Worm Attacks

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/280,586 US7159149B2 (en) 2002-10-24 2002-10-24 Heuristic detection and termination of fast spreading network worm attacks
US11/611,584 US20070083931A1 (en) 2002-10-24 2006-12-15 Heuristic Detection and Termination of Fast Spreading Network Worm Attacks

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/280,586 Continuation US7159149B2 (en) 2002-10-24 2002-10-24 Heuristic detection and termination of fast spreading network worm attacks

Publications (1)

Publication Number Publication Date
US20070083931A1 true US20070083931A1 (en) 2007-04-12

Family

ID=32106976

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/280,586 Active 2024-04-17 US7159149B2 (en) 2002-10-24 2002-10-24 Heuristic detection and termination of fast spreading network worm attacks
US11/611,584 Abandoned US20070083931A1 (en) 2002-10-24 2006-12-15 Heuristic Detection and Termination of Fast Spreading Network Worm Attacks

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/280,586 Active 2024-04-17 US7159149B2 (en) 2002-10-24 2002-10-24 Heuristic detection and termination of fast spreading network worm attacks

Country Status (1)

Country Link
US (2) US7159149B2 (en)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040098482A1 (en) * 2002-11-19 2004-05-20 Fujitsu Limited Hub unit for preventing the spread of viruses, method and program therefor
US20060101279A1 (en) * 2004-11-09 2006-05-11 Konica Minolta Business Technologies, Inc. Image processor
US20080005555A1 (en) * 2002-10-01 2008-01-03 Amnon Lotem System, method and computer readable medium for evaluating potential attacks of worms
US20080028463A1 (en) * 2005-10-27 2008-01-31 Damballa, Inc. Method and system for detecting and responding to attacking networks
US20090172815A1 (en) * 2007-04-04 2009-07-02 Guofei Gu Method and apparatus for detecting malware infection
US20100037314A1 (en) * 2008-08-11 2010-02-11 Perdisci Roberto Method and system for detecting malicious and/or botnet-related domain names
US20110167495A1 (en) * 2010-01-06 2011-07-07 Antonakakis Emmanouil Method and system for detecting malware
US20110179491A1 (en) * 2005-01-14 2011-07-21 Mcafee, Inc., A Delaware Corporation System, method and computer program product for context-driven behavioral heuristics
US20120102368A1 (en) * 2010-10-21 2012-04-26 Unisys Corp. Communicating errors between an operating system and interface layer
CN103488487A (en) * 2013-09-26 2014-01-01 深圳市金立通信设备有限公司 Event reminding method and terminal
US8631489B2 (en) 2011-02-01 2014-01-14 Damballa, Inc. Method and system for detecting malicious domain names at an upper DNS hierarchy
US8826438B2 (en) 2010-01-19 2014-09-02 Damballa, Inc. Method and system for network-based detecting of malware from behavioral clustering
US8856929B1 (en) * 2012-03-13 2014-10-07 Sprint Communications Company L.P. Wireless communication device with circuitry to invoke a physically independent non-IP communication capability
US20150264078A1 (en) * 2014-03-11 2015-09-17 Vectra Networks, Inc. Detecting network reconnaissance by tracking intranet dark-net communications
US9166994B2 (en) 2012-08-31 2015-10-20 Damballa, Inc. Automation discovery to identify malicious activity
US9507944B2 (en) 2002-10-01 2016-11-29 Skybox Security Inc. Method for simulation aided security event management
US9516058B2 (en) 2010-08-10 2016-12-06 Damballa, Inc. Method and system for determining whether domain names are legitimate or malicious
US9680861B2 (en) 2012-08-31 2017-06-13 Damballa, Inc. Historical analysis to identify malicious activity
US9894088B2 (en) 2012-08-31 2018-02-13 Damballa, Inc. Data mining to identify malicious activity
US9930065B2 (en) 2015-03-25 2018-03-27 University Of Georgia Research Foundation, Inc. Measuring, categorizing, and/or mitigating malware distribution paths
US10050986B2 (en) 2013-06-14 2018-08-14 Damballa, Inc. Systems and methods for traffic classification
US10084806B2 (en) 2012-08-31 2018-09-25 Damballa, Inc. Traffic simulation to identify malicious activity
US10547674B2 (en) 2012-08-27 2020-01-28 Help/Systems, Llc Methods and systems for network flow analysis

Families Citing this family (226)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155608B1 (en) * 2001-12-05 2006-12-26 Bellsouth Intellectual Property Corp. Foreign network SPAM blocker
US8479057B2 (en) * 2002-11-04 2013-07-02 Riverbed Technology, Inc. Aggregator for connection based anomaly detection
US8504879B2 (en) * 2002-11-04 2013-08-06 Riverbed Technology, Inc. Connection based anomaly detection
US7376732B2 (en) * 2002-11-08 2008-05-20 Federal Network Systems, Llc Systems and methods for preventing intrusion at a web host
US7353538B2 (en) 2002-11-08 2008-04-01 Federal Network Systems Llc Server resource management, analysis, and intrusion negation
US20040111531A1 (en) * 2002-12-06 2004-06-10 Stuart Staniford Method and system for reducing the rate of infection of a communications network by a software worm
US7418730B2 (en) * 2002-12-17 2008-08-26 International Business Machines Corporation Automatic client responses to worm or hacker attacks
GB2401281B (en) * 2003-04-29 2006-02-08 Hewlett Packard Development Co Propagation of viruses through an information technology network
US7796515B2 (en) * 2003-04-29 2010-09-14 Hewlett-Packard Development Company, L.P. Propagation of viruses through an information technology network
US7814542B1 (en) * 2003-06-30 2010-10-12 Cisco Technology, Inc. Network connection detection and throttling
US7610341B2 (en) * 2003-10-14 2009-10-27 At&T Intellectual Property I, L.P. Filtered email differentiation
US7664812B2 (en) * 2003-10-14 2010-02-16 At&T Intellectual Property I, L.P. Phonetic filtering of undesired email messages
US20050080642A1 (en) * 2003-10-14 2005-04-14 Daniell W. Todd Consolidated email filtering user interface
JP4051020B2 (en) * 2003-10-28 2008-02-20 富士通株式会社 Worm determination program, computer-readable storage medium storing worm determination program, worm determination method, and worm determination device
EP1716676B1 (en) 2004-02-17 2012-06-13 Cisco Technology, Inc. Collecting, aggregating, and managing information relating to electronic messages
US7587537B1 (en) * 2007-11-30 2009-09-08 Altera Corporation Serializer-deserializer circuits formed from input-output circuit registers
US8375444B2 (en) 2006-04-20 2013-02-12 Fireeye, Inc. Dynamic signature creation and enforcement
US9027135B1 (en) 2004-04-01 2015-05-05 Fireeye, Inc. Prospective client identification using malware attack detection
US8584239B2 (en) 2004-04-01 2013-11-12 Fireeye, Inc. Virtual machine with dynamic data flow analysis
US9106694B2 (en) 2004-04-01 2015-08-11 Fireeye, Inc. Electronic message analysis for malware detection
US8539582B1 (en) 2004-04-01 2013-09-17 Fireeye, Inc. Malware containment and security analysis on connection
US8793787B2 (en) 2004-04-01 2014-07-29 Fireeye, Inc. Detecting malicious network content using virtual environment components
US8171553B2 (en) 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
US8898788B1 (en) 2004-04-01 2014-11-25 Fireeye, Inc. Systems and methods for malware attack prevention
US8204984B1 (en) 2004-04-01 2012-06-19 Fireeye, Inc. Systems and methods for detecting encrypted bot command and control communication channels
US8566946B1 (en) 2006-04-20 2013-10-22 Fireeye, Inc. Malware containment on connection
US8006305B2 (en) * 2004-06-14 2011-08-23 Fireeye, Inc. Computer worm defense system and method
US8881282B1 (en) 2004-04-01 2014-11-04 Fireeye, Inc. Systems and methods for malware attack detection and identification
US8549638B2 (en) 2004-06-14 2013-10-01 Fireeye, Inc. System and method of containing computer worms
US8528086B1 (en) 2004-04-01 2013-09-03 Fireeye, Inc. System and method of detecting computer worms
US8561177B1 (en) 2004-04-01 2013-10-15 Fireeye, Inc. Systems and methods for detecting communication channels of bots
GB2431316B (en) * 2005-10-12 2008-05-21 Hewlett Packard Development Co Propagation of malicious code through an information technology network
WO2005114356A1 (en) * 2004-05-19 2005-12-01 Computer Associates Think, Inc. Method and systems for computer security
US8203941B2 (en) * 2004-05-28 2012-06-19 Hewlett-Packard Development Company, L.P. Virus/worm throttle threshold settings
US7756930B2 (en) * 2004-05-28 2010-07-13 Ironport Systems, Inc. Techniques for determining the reputation of a message sender
US7624445B2 (en) * 2004-06-15 2009-11-24 International Business Machines Corporation System for dynamic network reconfiguration and quarantine in response to threat conditions
US7748038B2 (en) * 2004-06-16 2010-06-29 Ironport Systems, Inc. Method and apparatus for managing computer virus outbreaks
US7343624B1 (en) 2004-07-13 2008-03-11 Sonicwall, Inc. Managing infectious messages as identified by an attachment
US9154511B1 (en) 2004-07-13 2015-10-06 Dell Software Inc. Time zero detection of infectious messages
GB2416954B (en) * 2004-07-30 2007-10-31 Hewlett Packard Development Co Method of and apparatus for monitoring traffic emanating from a source in a network
US8752129B1 (en) * 2004-10-12 2014-06-10 Alex I. Alten Systems and methods for a self-defending wireless computer network
US7810158B2 (en) * 2004-12-16 2010-10-05 At&T Intellectual Property I, L.P. Methods and systems for deceptively trapping electronic worms
US7607170B2 (en) 2004-12-22 2009-10-20 Radware Ltd. Stateful attack protection
US7647430B2 (en) * 2005-01-19 2010-01-12 Microsoft Corporation Remote command framework for devices
US7765596B2 (en) 2005-02-09 2010-07-27 Intrinsic Security, Inc. Intrusion handling system and method for a packet network with dynamic network address utilization
CN101558398B (en) * 2005-05-05 2012-11-28 思科埃恩波特系统有限公司 Detecting unwanted electronic mail messages based on probabilistic analysis of referenced resources
JP2007013263A (en) * 2005-06-28 2007-01-18 Fujitsu Ltd Program, method and apparatus for worm determination
GB0513375D0 (en) 2005-06-30 2005-08-03 Retento Ltd Computer security
US20070118759A1 (en) * 2005-10-07 2007-05-24 Sheppard Scott K Undesirable email determination
US8510833B2 (en) * 2005-10-27 2013-08-13 Hewlett-Packard Development Company, L.P. Connection-rate filtering using ARP requests
US8160062B2 (en) * 2006-01-31 2012-04-17 Microsoft Corporation Network connectivity determination based on passive analysis of connection-oriented path information
JP5144075B2 (en) * 2006-03-30 2013-02-13 日本碍子株式会社 Honeycomb structure and manufacturing method thereof
US8479174B2 (en) * 2006-04-05 2013-07-02 Prevx Limited Method, computer program and computer for analyzing an executable computer file
US20080115215A1 (en) * 2006-10-31 2008-05-15 Jeffrey Scott Bardsley Methods, systems, and computer program products for automatically identifying and validating the source of a malware infection of a computer system
JP2008165601A (en) * 2006-12-28 2008-07-17 Secure Ware:Kk Communication monitoring system, communication monitoring device and communication control device
US8677479B2 (en) * 2007-04-16 2014-03-18 Microsoft Corporation Detection of adversaries through collection and correlation of assessments
JP5003556B2 (en) * 2008-03-28 2012-08-15 富士通株式会社 Communication detection device, communication detection method, and communication detection program
US9576157B2 (en) * 2008-04-02 2017-02-21 Yougetitback Limited Method for mitigating the unauthorized use of a device
US9886599B2 (en) 2008-04-02 2018-02-06 Yougetitback Limited Display of information through auxiliary user interface
US8248237B2 (en) * 2008-04-02 2012-08-21 Yougetitback Limited System for mitigating the unauthorized use of a device
US8719909B2 (en) 2008-04-01 2014-05-06 Yougetitback Limited System for monitoring the unauthorized use of a device
US20090253406A1 (en) * 2008-04-02 2009-10-08 William Fitzgerald System for mitigating the unauthorized use of a device
US8932368B2 (en) 2008-04-01 2015-01-13 Yougetitback Limited Method for monitoring the unauthorized use of a device
US20090249443A1 (en) * 2008-04-01 2009-10-01 William Fitzgerald Method for monitoring the unauthorized use of a device
US9838877B2 (en) 2008-04-02 2017-12-05 Yougetitback Limited Systems and methods for dynamically assessing and mitigating risk of an insured entity
US9031536B2 (en) * 2008-04-02 2015-05-12 Yougetitback Limited Method for mitigating the unauthorized use of a device
US9881152B2 (en) * 2008-04-01 2018-01-30 Yougetitback Limited System for monitoring the unauthorized use of a device
US9916481B2 (en) 2008-04-02 2018-03-13 Yougetitback Limited Systems and methods for mitigating the unauthorized use of a device
US8600405B2 (en) 2008-08-12 2013-12-03 Apogee Technology Consultants, Llc Location-based recovery device and risk management system for portable computing devices and data
US8582444B2 (en) * 2008-08-28 2013-11-12 Telefonaktiebolaget L M Ericsson (Publ) Method for detecting hardware faults by determining a ratio of released connections
US8850571B2 (en) 2008-11-03 2014-09-30 Fireeye, Inc. Systems and methods for detecting malicious network content
US8997219B2 (en) 2008-11-03 2015-03-31 Fireeye, Inc. Systems and methods for detecting malicious PDF network content
US8595829B1 (en) * 2009-04-30 2013-11-26 Symantec Corporation Systems and methods for automatically blacklisting an internet domain based on the activities of an application
US8832829B2 (en) * 2009-09-30 2014-09-09 Fireeye, Inc. Network-based binary file extraction and analysis for malware detection
US20110107422A1 (en) * 2009-10-30 2011-05-05 Patrick Choy Ming Wong Email worm detection methods and devices
US8656490B1 (en) 2010-09-14 2014-02-18 Symantec Corporation Safe and secure access to dynamic domain name systems
EP2437429A1 (en) * 2010-10-01 2012-04-04 Mancala Networks Network policy controller
US9413721B2 (en) 2011-02-15 2016-08-09 Webroot Inc. Methods and apparatus for dealing with malware
US20130247184A1 (en) * 2011-04-27 2013-09-19 Mcafee, Inc. Stealth Network Attack Monitoring
US8650166B1 (en) * 2011-07-11 2014-02-11 Symantec Corporation Systems and methods for classifying files
US20130097203A1 (en) * 2011-10-12 2013-04-18 Mcafee, Inc. System and method for providing threshold levels on privileged resource usage in a mobile network environment
US9519782B2 (en) 2012-02-24 2016-12-13 Fireeye, Inc. Detecting malicious network content
US10572665B2 (en) 2012-12-28 2020-02-25 Fireeye, Inc. System and method to create a number of breakpoints in a virtual machine via virtual machine trapping events
US9367681B1 (en) 2013-02-23 2016-06-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications using symbolic execution to reach regions of interest within an application
US9824209B1 (en) 2013-02-23 2017-11-21 Fireeye, Inc. Framework for efficient security coverage of mobile software applications that is usable to harden in the field code
US9176843B1 (en) 2013-02-23 2015-11-03 Fireeye, Inc. Framework for efficient security coverage of mobile software applications
US9009822B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for multi-phase analysis of mobile applications
US9009823B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
US9159035B1 (en) 2013-02-23 2015-10-13 Fireeye, Inc. Framework for computer application analysis of sensitive information tracking
US8990944B1 (en) 2013-02-23 2015-03-24 Fireeye, Inc. Systems and methods for automatically detecting backdoors
US9195829B1 (en) 2013-02-23 2015-11-24 Fireeye, Inc. User interface with real-time visual playback along with synchronous textual analysis log display and event/time index for anomalous behavior detection in applications
US9626509B1 (en) 2013-03-13 2017-04-18 Fireeye, Inc. Malicious content analysis with multi-version application support within single operating environment
US9104867B1 (en) 2013-03-13 2015-08-11 Fireeye, Inc. Malicious content analysis using simulated user interaction without user involvement
US9355247B1 (en) 2013-03-13 2016-05-31 Fireeye, Inc. File extraction from memory dump for malicious content analysis
US9565202B1 (en) 2013-03-13 2017-02-07 Fireeye, Inc. System and method for detecting exfiltration content
US9430646B1 (en) 2013-03-14 2016-08-30 Fireeye, Inc. Distributed systems and methods for automatically detecting unknown bots and botnets
US9311479B1 (en) 2013-03-14 2016-04-12 Fireeye, Inc. Correlation and consolidation of analytic data for holistic view of a malware attack
US10713358B2 (en) 2013-03-15 2020-07-14 Fireeye, Inc. System and method to extract and utilize disassembly features to classify software intent
WO2014145805A1 (en) 2013-03-15 2014-09-18 Mandiant, Llc System and method employing structured intelligence to verify and contain threats at endpoints
US9251343B1 (en) 2013-03-15 2016-02-02 Fireeye, Inc. Detecting bootkits resident on compromised computers
US9495180B2 (en) 2013-05-10 2016-11-15 Fireeye, Inc. Optimized resource allocation for virtual machines within a malware content detection system
US9635039B1 (en) 2013-05-13 2017-04-25 Fireeye, Inc. Classifying sets of malicious indicators for detecting command and control communications associated with malware
US10133863B2 (en) 2013-06-24 2018-11-20 Fireeye, Inc. Zero-day discovery system
US9536091B2 (en) 2013-06-24 2017-01-03 Fireeye, Inc. System and method for detecting time-bomb malware
US9300686B2 (en) 2013-06-28 2016-03-29 Fireeye, Inc. System and method for detecting malicious links in electronic messages
US9888016B1 (en) 2013-06-28 2018-02-06 Fireeye, Inc. System and method for detecting phishing using password prediction
US9491189B2 (en) * 2013-08-26 2016-11-08 Guardicore Ltd. Revival and redirection of blocked connections for intention inspection in computer networks
US9628507B2 (en) 2013-09-30 2017-04-18 Fireeye, Inc. Advanced persistent threat (APT) detection center
US10515214B1 (en) 2013-09-30 2019-12-24 Fireeye, Inc. System and method for classifying malware within content created during analysis of a specimen
US9171160B2 (en) 2013-09-30 2015-10-27 Fireeye, Inc. Dynamically adaptive framework and method for classifying malware using intelligent static, emulation, and dynamic analyses
US9690936B1 (en) 2013-09-30 2017-06-27 Fireeye, Inc. Multistage system and method for analyzing obfuscated content for malware
US10089461B1 (en) 2013-09-30 2018-10-02 Fireeye, Inc. Page replacement code injection
US10192052B1 (en) 2013-09-30 2019-01-29 Fireeye, Inc. System, apparatus and method for classifying a file as malicious using static scanning
US9736179B2 (en) 2013-09-30 2017-08-15 Fireeye, Inc. System, apparatus and method for using malware analysis results to drive adaptive instrumentation of virtual machines to improve exploit detection
US9294501B2 (en) 2013-09-30 2016-03-22 Fireeye, Inc. Fuzzy hash of behavioral results
US9921978B1 (en) 2013-11-08 2018-03-20 Fireeye, Inc. System and method for enhanced security of storage devices
US9189627B1 (en) 2013-11-21 2015-11-17 Fireeye, Inc. System, apparatus and method for conducting on-the-fly decryption of encrypted objects for malware detection
US9491190B2 (en) 2013-12-26 2016-11-08 Guardicore Ltd. Dynamic selection of network traffic for file extraction shellcode detection
US9756074B2 (en) 2013-12-26 2017-09-05 Fireeye, Inc. System and method for IPS and VM-based detection of suspicious objects
US9747446B1 (en) 2013-12-26 2017-08-29 Fireeye, Inc. System and method for run-time object classification
US9507935B2 (en) 2014-01-16 2016-11-29 Fireeye, Inc. Exploit detection system with threat-aware microvisor
US9262635B2 (en) 2014-02-05 2016-02-16 Fireeye, Inc. Detection efficacy of virtual machine-based analysis with application specific events
US9241010B1 (en) 2014-03-20 2016-01-19 Fireeye, Inc. System and method for network behavior detection
US10242185B1 (en) 2014-03-21 2019-03-26 Fireeye, Inc. Dynamic guest image creation and rollback
US9591015B1 (en) 2014-03-28 2017-03-07 Fireeye, Inc. System and method for offloading packet processing and static analysis operations
US9432389B1 (en) 2014-03-31 2016-08-30 Fireeye, Inc. System, apparatus and method for detecting a malicious attack based on static analysis of a multi-flow object
US9223972B1 (en) 2014-03-31 2015-12-29 Fireeye, Inc. Dynamically remote tuning of a malware content detection system
US9438623B1 (en) 2014-06-06 2016-09-06 Fireeye, Inc. Computer exploit detection using heap spray pattern matching
US9973531B1 (en) 2014-06-06 2018-05-15 Fireeye, Inc. Shellcode detection
US9594912B1 (en) 2014-06-06 2017-03-14 Fireeye, Inc. Return-oriented programming detection
US9667637B2 (en) 2014-06-09 2017-05-30 Guardicore Ltd. Network-based detection of authentication failures
US10084813B2 (en) 2014-06-24 2018-09-25 Fireeye, Inc. Intrusion prevention and remedy system
US9398028B1 (en) 2014-06-26 2016-07-19 Fireeye, Inc. System, device and method for detecting a malicious attack based on communcations between remotely hosted virtual machines and malicious web servers
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US10002252B2 (en) 2014-07-01 2018-06-19 Fireeye, Inc. Verification of trusted threat-aware microvisor
US9363280B1 (en) 2014-08-22 2016-06-07 Fireeye, Inc. System and method of detecting delivery of malware using cross-customer data
US10671726B1 (en) 2014-09-22 2020-06-02 Fireeye Inc. System and method for malware analysis using thread-level event monitoring
US10027689B1 (en) 2014-09-29 2018-07-17 Fireeye, Inc. Interactive infection visualization for improved exploit detection and signature generation for malware and malware families
US9773112B1 (en) 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
US9690933B1 (en) 2014-12-22 2017-06-27 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US10075455B2 (en) 2014-12-26 2018-09-11 Fireeye, Inc. Zero-day rotating guest image profile
US9934376B1 (en) 2014-12-29 2018-04-03 Fireeye, Inc. Malware detection appliance architecture
US9838417B1 (en) 2014-12-30 2017-12-05 Fireeye, Inc. Intelligent context aware user interaction for malware detection
US9690606B1 (en) 2015-03-25 2017-06-27 Fireeye, Inc. Selective system call monitoring
US10148693B2 (en) 2015-03-25 2018-12-04 Fireeye, Inc. Exploit detection system
US9438613B1 (en) 2015-03-30 2016-09-06 Fireeye, Inc. Dynamic content activation for automated analysis of embedded objects
US10474813B1 (en) 2015-03-31 2019-11-12 Fireeye, Inc. Code injection technique for remediation at an endpoint of a network
US9483644B1 (en) 2015-03-31 2016-11-01 Fireeye, Inc. Methods for detecting file altering malware in VM based analysis
US10417031B2 (en) 2015-03-31 2019-09-17 Fireeye, Inc. Selective virtualization for security threat detection
US9654485B1 (en) 2015-04-13 2017-05-16 Fireeye, Inc. Analytics-based security monitoring system and method
US9594904B1 (en) 2015-04-23 2017-03-14 Fireeye, Inc. Detecting malware based on reflection
CN106295333B (en) * 2015-05-27 2018-08-17 安一恒通(北京)科技有限公司 method and system for detecting malicious code
US10642753B1 (en) 2015-06-30 2020-05-05 Fireeye, Inc. System and method for protecting a software component running in virtual machine using a virtualization layer
US10454950B1 (en) 2015-06-30 2019-10-22 Fireeye, Inc. Centralized aggregation technique for detecting lateral movement of stealthy cyber-attacks
US10726127B1 (en) 2015-06-30 2020-07-28 Fireeye, Inc. System and method for protecting a software component running in a virtual machine through virtual interrupts by the virtualization layer
US11113086B1 (en) 2015-06-30 2021-09-07 Fireeye, Inc. Virtual system and method for securing external network connectivity
US9462010B1 (en) 2015-07-07 2016-10-04 Accenture Global Services Limited Threat assessment level determination and remediation for a cloud-based multi-layer security architecture
US10715542B1 (en) 2015-08-14 2020-07-14 Fireeye, Inc. Mobile application risk analysis
US10176321B2 (en) 2015-09-22 2019-01-08 Fireeye, Inc. Leveraging behavior-based rules for malware family classification
US10033747B1 (en) 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
US10210329B1 (en) 2015-09-30 2019-02-19 Fireeye, Inc. Method to detect application execution hijacking using memory protection
US10601865B1 (en) 2015-09-30 2020-03-24 Fireeye, Inc. Detection of credential spearphishing attacks using email analysis
US10706149B1 (en) 2015-09-30 2020-07-07 Fireeye, Inc. Detecting delayed activation malware using a primary controller and plural time controllers
US9825976B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Detection and classification of exploit kits
US9825989B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Cyber attack early warning system
US10817606B1 (en) 2015-09-30 2020-10-27 Fireeye, Inc. Detecting delayed activation malware using a run-time monitoring agent and time-dilation logic
US10284575B2 (en) 2015-11-10 2019-05-07 Fireeye, Inc. Launcher for setting analysis environment variations for malware detection
US20170155667A1 (en) * 2015-11-30 2017-06-01 Symantec Corporation Systems and methods for detecting malware infections via domain name service traffic analysis
US10447728B1 (en) 2015-12-10 2019-10-15 Fireeye, Inc. Technique for protecting guest processes using a layered virtualization architecture
US10846117B1 (en) 2015-12-10 2020-11-24 Fireeye, Inc. Technique for establishing secure communication between host and guest processes of a virtualization architecture
US10108446B1 (en) 2015-12-11 2018-10-23 Fireeye, Inc. Late load technique for deploying a virtualization layer underneath a running operating system
US10565378B1 (en) 2015-12-30 2020-02-18 Fireeye, Inc. Exploit of privilege detection framework
US10133866B1 (en) 2015-12-30 2018-11-20 Fireeye, Inc. System and method for triggering analysis of an object for malware in response to modification of that object
US10621338B1 (en) 2015-12-30 2020-04-14 Fireeye, Inc. Method to detect forgery and exploits using last branch recording registers
US10050998B1 (en) 2015-12-30 2018-08-14 Fireeye, Inc. Malicious message analysis system
US9824216B1 (en) 2015-12-31 2017-11-21 Fireeye, Inc. Susceptible environment detection system
US10581874B1 (en) 2015-12-31 2020-03-03 Fireeye, Inc. Malware detection system with contextual analysis
US11552986B1 (en) 2015-12-31 2023-01-10 Fireeye Security Holdings Us Llc Cyber-security framework for application of virtual features
US10785255B1 (en) 2016-03-25 2020-09-22 Fireeye, Inc. Cluster configuration within a scalable malware detection system
US10671721B1 (en) 2016-03-25 2020-06-02 Fireeye, Inc. Timeout management services
US10601863B1 (en) 2016-03-25 2020-03-24 Fireeye, Inc. System and method for managing sensor enrollment
US10616266B1 (en) 2016-03-25 2020-04-07 Fireeye, Inc. Distributed malware detection system and submission workflow thereof
US10893059B1 (en) 2016-03-31 2021-01-12 Fireeye, Inc. Verification and enhancement using detection systems located at the network periphery and endpoint devices
US10169585B1 (en) 2016-06-22 2019-01-01 Fireeye, Inc. System and methods for advanced malware detection through placement of transition events
US10462173B1 (en) 2016-06-30 2019-10-29 Fireeye, Inc. Malware detection verification and enhancement by coordinating endpoint and malware detection systems
WO2018022111A1 (en) * 2016-07-29 2018-02-01 Hewlett-Packard Development Company, L.P. Load time anti-propagation protection for a machine executable module
US10592678B1 (en) 2016-09-09 2020-03-17 Fireeye, Inc. Secure communications between peers using a verified virtual trusted platform module
US10491627B1 (en) 2016-09-29 2019-11-26 Fireeye, Inc. Advanced malware detection using similarity analysis
US10795991B1 (en) 2016-11-08 2020-10-06 Fireeye, Inc. Enterprise search
US10587647B1 (en) 2016-11-22 2020-03-10 Fireeye, Inc. Technique for malware detection capability comparison of network security devices
US10552610B1 (en) 2016-12-22 2020-02-04 Fireeye, Inc. Adaptive virtual machine snapshot update framework for malware behavioral analysis
US10581879B1 (en) 2016-12-22 2020-03-03 Fireeye, Inc. Enhanced malware detection for generated objects
US10523609B1 (en) 2016-12-27 2019-12-31 Fireeye, Inc. Multi-vector malware detection and analysis
US10904286B1 (en) 2017-03-24 2021-01-26 Fireeye, Inc. Detection of phishing attacks using similarity analysis
US10848397B1 (en) 2017-03-30 2020-11-24 Fireeye, Inc. System and method for enforcing compliance with subscription requirements for cyber-attack detection service
US10798112B2 (en) 2017-03-30 2020-10-06 Fireeye, Inc. Attribute-controlled malware detection
US10902119B1 (en) 2017-03-30 2021-01-26 Fireeye, Inc. Data extraction system for malware analysis
US10791138B1 (en) 2017-03-30 2020-09-29 Fireeye, Inc. Subscription-based malware detection
US10601848B1 (en) 2017-06-29 2020-03-24 Fireeye, Inc. Cyber-security system and method for weak indicator detection and correlation to generate strong indicators
US10855700B1 (en) 2017-06-29 2020-12-01 Fireeye, Inc. Post-intrusion detection of cyber-attacks during lateral movement within networks
US10503904B1 (en) 2017-06-29 2019-12-10 Fireeye, Inc. Ransomware detection and mitigation
US10893068B1 (en) 2017-06-30 2021-01-12 Fireeye, Inc. Ransomware file modification prevention technique
US10747872B1 (en) 2017-09-27 2020-08-18 Fireeye, Inc. System and method for preventing malware evasion
US10805346B2 (en) 2017-10-01 2020-10-13 Fireeye, Inc. Phishing attack detection
US11108809B2 (en) 2017-10-27 2021-08-31 Fireeye, Inc. System and method for analyzing binary code for malware classification using artificial neural network techniques
US11240275B1 (en) 2017-12-28 2022-02-01 Fireeye Security Holdings Us Llc Platform and method for performing cybersecurity analyses employing an intelligence hub with a modular architecture
US11005860B1 (en) 2017-12-28 2021-05-11 Fireeye, Inc. Method and system for efficient cybersecurity analysis of endpoint events
US11271955B2 (en) 2017-12-28 2022-03-08 Fireeye Security Holdings Us Llc Platform and method for retroactive reclassification employing a cybersecurity-based global data store
DE102018100629A1 (en) * 2018-01-12 2019-07-18 Krohne Messtechnik Gmbh System with an electrical device
US10826931B1 (en) 2018-03-29 2020-11-03 Fireeye, Inc. System and method for predicting and mitigating cybersecurity system misconfigurations
US11558401B1 (en) 2018-03-30 2023-01-17 Fireeye Security Holdings Us Llc Multi-vector malware detection data sharing system for improved detection
US10956477B1 (en) 2018-03-30 2021-03-23 Fireeye, Inc. System and method for detecting malicious scripts through natural language processing modeling
US11003773B1 (en) 2018-03-30 2021-05-11 Fireeye, Inc. System and method for automatically generating malware detection rule recommendations
US11075930B1 (en) 2018-06-27 2021-07-27 Fireeye, Inc. System and method for detecting repetitive cybersecurity attacks constituting an email campaign
US11314859B1 (en) 2018-06-27 2022-04-26 FireEye Security Holdings, Inc. Cyber-security system and method for detecting escalation of privileges within an access token
US11228491B1 (en) 2018-06-28 2022-01-18 Fireeye Security Holdings Us Llc System and method for distributed cluster configuration monitoring and management
US11316900B1 (en) 2018-06-29 2022-04-26 FireEye Security Holdings Inc. System and method for automatically prioritizing rules for cyber-threat detection and mitigation
US11182473B1 (en) 2018-09-13 2021-11-23 Fireeye Security Holdings Us Llc System and method for mitigating cyberattacks against processor operability by a guest process
US11763004B1 (en) 2018-09-27 2023-09-19 Fireeye Security Holdings Us Llc System and method for bootkit detection
US11368475B1 (en) 2018-12-21 2022-06-21 Fireeye Security Holdings Us Llc System and method for scanning remote services to locate stored objects with malware
US11258806B1 (en) 2019-06-24 2022-02-22 Mandiant, Inc. System and method for automatically associating cybersecurity intelligence to cyberthreat actors
US11556640B1 (en) 2019-06-27 2023-01-17 Mandiant, Inc. Systems and methods for automated cybersecurity analysis of extracted binary string sets
US11392700B1 (en) 2019-06-28 2022-07-19 Fireeye Security Holdings Us Llc System and method for supporting cross-platform data verification
US11886585B1 (en) 2019-09-27 2024-01-30 Musarubra Us Llc System and method for identifying and mitigating cyberattacks through malicious position-independent code execution
US11637862B1 (en) 2019-09-30 2023-04-25 Mandiant, Inc. System and method for surfacing cyber-security threats with a self-learning recommendation engine
US11444962B2 (en) 2020-02-05 2022-09-13 International Business Machines Corporation Detection of and defense against password spraying attacks

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440723A (en) * 1993-01-19 1995-08-08 International Business Machines Corporation Automatic immune system for computers and computer networks
US6070244A (en) * 1997-11-10 2000-05-30 The Chase Manhattan Bank Computer network security management system
US6370648B1 (en) * 1998-12-08 2002-04-09 Visa International Service Association Computer network intrusion detection
US20020046275A1 (en) * 2000-06-12 2002-04-18 Mark Crosbie System and method for host and network based intrusion detection and response
US20030051026A1 (en) * 2001-01-19 2003-03-13 Carter Ernst B. Network surveillance and security system
US20030115485A1 (en) * 2001-12-14 2003-06-19 Milliken Walter Clark Hash-based systems and methods for detecting, preventing, and tracing network worms and viruses
US20030191966A1 (en) * 2002-04-09 2003-10-09 Cisco Technology, Inc. System and method for detecting an infective element in a network environment
US20030236995A1 (en) * 2002-06-21 2003-12-25 Fretwell Lyman Jefferson Method and apparatus for facilitating detection of network intrusion
US20050021740A1 (en) * 2001-08-14 2005-01-27 Bar Anat Bremler Detecting and protecting against worm traffic on a network
US20050044406A1 (en) * 2002-03-29 2005-02-24 Michael Stute Adaptive behavioral intrusion detection systems and methods

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1314101C (en) * 1988-02-17 1993-03-02 Henry Shao-Lin Teng Expert system for security inspection of a digital computer system in a network environment
US4978917A (en) * 1989-08-04 1990-12-18 Westinghouse Electric Corp. Method for nondestructive measurement of heat affected zone of identification code on nuclear fuel rod
US5473769A (en) * 1992-03-30 1995-12-05 Cozza; Paul D. Method and apparatus for increasing the speed of the detecting of computer viruses
JP2501771B2 (en) * 1993-01-19 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション Method and apparatus for obtaining multiple valid signatures of an unwanted software entity
US5572590A (en) * 1994-04-12 1996-11-05 International Business Machines Corporation Discrimination of malicious changes to digital information using multiple signatures
US5715174A (en) * 1994-11-15 1998-02-03 Absolute Software Corporation Security apparatus and method
US5715464A (en) * 1995-06-07 1998-02-03 International Business Machines Corporation Computer system having suspend once resume many sessions
US5889943A (en) 1995-09-26 1999-03-30 Trend Micro Incorporated Apparatus and method for electronic mail virus detection and elimination
US5696822A (en) * 1995-09-28 1997-12-09 Symantec Corporation Polymorphic virus detection module
JP3434105B2 (en) * 1995-11-28 2003-08-04 富士通株式会社 Macro program management device
US6072830A (en) * 1996-08-09 2000-06-06 U.S. Robotics Access Corp. Method for generating a compressed video signal
US5951698A (en) * 1996-10-02 1999-09-14 Trend Micro, Incorporated System, apparatus and method for the detection and removal of viruses in macros
US5758359A (en) * 1996-10-24 1998-05-26 Digital Equipment Corporation Method and apparatus for performing retroactive backups in a computer system
US5889942A (en) * 1996-12-18 1999-03-30 Orenshteyn; Alexander S. Secured system for accessing application services from a remote station
US5956481A (en) * 1997-02-06 1999-09-21 Microsoft Corporation Method and apparatus for protecting data files on a computer from virus infection
US5960170A (en) * 1997-03-18 1999-09-28 Trend Micro, Inc. Event triggered iterative virus detection
GB9713719D0 (en) * 1997-06-27 1997-09-03 British Telecomm Data model compiler
US5978917A (en) * 1997-08-14 1999-11-02 Symantec Corporation Detection and elimination of macro viruses
US6275938B1 (en) * 1997-08-28 2001-08-14 Microsoft Corporation Security enhancement for untrusted executable code
US6321337B1 (en) * 1997-09-09 2001-11-20 Sanctum Ltd. Method and system for protecting operations of trusted internal networks
US6357008B1 (en) * 1997-09-23 2002-03-12 Symantec Corporation Dynamic heuristic method for detecting computer viruses using decryption exploration and evaluation phases
JP3952558B2 (en) * 1997-11-05 2007-08-01 ブラザー工業株式会社 Printing system, printer and printing method
US6108799A (en) * 1997-11-21 2000-08-22 International Business Machines Corporation Automated sample creation of polymorphic and non-polymorphic marcro viruses
US6094731A (en) * 1997-11-24 2000-07-25 Symantec Corporation Antivirus accelerator for computer networks
US6052709A (en) * 1997-12-23 2000-04-18 Bright Light Technologies, Inc. Apparatus and method for controlling delivery of unsolicited electronic mail
US6088803A (en) * 1997-12-30 2000-07-11 Intel Corporation System for virus-checking network data during download to a client device
US5987610A (en) * 1998-02-12 1999-11-16 Ameritech Corporation Computer virus screening methods and systems
US6493007B1 (en) * 1998-07-15 2002-12-10 Stephen Y. Pang Method and device for removing junk e-mail messages
US6167434A (en) * 1998-07-15 2000-12-26 Pang; Stephen Y. Computer code for removing junk e-mail messages
US6338141B1 (en) * 1998-09-30 2002-01-08 Cybersoft, Inc. Method and apparatus for computer virus detection, analysis, and removal in real time
GB2350449A (en) * 1999-05-27 2000-11-29 Ibm Detecting replication of a computer virus using a counter virus
US6763462B1 (en) * 1999-10-05 2004-07-13 Micron Technology, Inc. E-mail virus detection utility
US6678734B1 (en) * 1999-11-13 2004-01-13 Ssh Communications Security Ltd. Method for intercepting network packets in a computing device
US6851057B1 (en) * 1999-11-30 2005-02-01 Symantec Corporation Data driven detection of viruses
US6697950B1 (en) * 1999-12-22 2004-02-24 Networks Associates Technology, Inc. Method and apparatus for detecting a macro computer virus using static analysis
US7412462B2 (en) * 2000-02-18 2008-08-12 Burnside Acquisition, Llc Data repository and method for promoting network storage of data
US6748534B1 (en) * 2000-03-31 2004-06-08 Networks Associates, Inc. System and method for partitioned distributed scanning of a large dataset for viruses and other malware
DE10021686A1 (en) 2000-05-05 2001-11-08 Thomson Brandt Gmbh Computer virus distribution minimization method for email network, involves forwarding e-mails according to diagnosed commonality between incoming and outgoing mail of user
US20020007453A1 (en) 2000-05-23 2002-01-17 Nemovicher C. Kerry Secured electronic mail system and method
US20020035696A1 (en) * 2000-06-09 2002-03-21 Will Thacker System and method for protecting a networked computer from viruses
US6611925B1 (en) * 2000-06-13 2003-08-26 Networks Associates Technology, Inc. Single point of entry/origination item scanning within an enterprise or workgroup
US6721721B1 (en) * 2000-06-15 2004-04-13 International Business Machines Corporation Virus checking and reporting for computer database search results
GB2364142A (en) 2000-06-28 2002-01-16 Robert Morris Detection of an email virus by adding a trap address to email address lists
GB2357939B (en) * 2000-07-05 2002-05-15 Gfi Fax & Voice Ltd Electronic mail message anti-virus system and method
GB0016835D0 (en) 2000-07-07 2000-08-30 Messagelabs Limited Method of, and system for, processing email
US6910134B1 (en) * 2000-08-29 2005-06-21 Netrake Corporation Method and device for innoculating email infected with a virus
US6535891B1 (en) * 2000-09-26 2003-03-18 Emc Corporation Method and apparatus for indentifying accesses to a repository of logical objects stored on a storage system based upon information identifying accesses to physical storage locations
US7707305B2 (en) * 2000-10-17 2010-04-27 Cisco Technology, Inc. Methods and apparatus for protecting against overload conditions on nodes of a distributed network
US6622150B1 (en) * 2000-12-18 2003-09-16 Networks Associates Technology, Inc. System and method for efficiently managing computer virus definitions using a structured virus database
US20020091940A1 (en) * 2001-01-05 2002-07-11 Welborn Christopher Michael E-mail user behavior modification system and mechanism for computer virus avoidance
US7502939B2 (en) * 2001-04-19 2009-03-10 Cybersoft, Inc. Software virus detection methods and apparatus
CN1147795C (en) * 2001-04-29 2004-04-28 北京瑞星科技股份有限公司 Method, system and medium for detecting and clearing known and anknown computer virus
US7188368B2 (en) * 2001-05-25 2007-03-06 Lenovo (Singapore) Pte. Ltd. Method and apparatus for repairing damage to a computer system using a system rollback mechanism
US7673342B2 (en) 2001-07-26 2010-03-02 Mcafee, Inc. Detecting e-mail propagated malware
US7421587B2 (en) * 2001-07-26 2008-09-02 Mcafee, Inc. Detecting computer programs within packed computer files
US7487544B2 (en) * 2001-07-30 2009-02-03 The Trustees Of Columbia University In The City Of New York System and methods for detection of new malicious executables
US7401359B2 (en) * 2001-12-21 2008-07-15 Mcafee, Inc. Generating malware definition data for mobile computing devices
US7143113B2 (en) * 2001-12-21 2006-11-28 Cybersoft, Inc. Apparatus, methods and articles of manufacture for securing and maintaining computer systems and storage media
US7415726B2 (en) * 2001-12-28 2008-08-19 Mcafee, Inc. Controlling access to suspicious files
US7370360B2 (en) * 2002-05-13 2008-05-06 International Business Machines Corporation Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine
US7418729B2 (en) * 2002-07-19 2008-08-26 Symantec Corporation Heuristic detection of malicious computer code by page tracking
US7380277B2 (en) * 2002-07-22 2008-05-27 Symantec Corporation Preventing e-mail propagation of malicious computer code
US7526809B2 (en) * 2002-08-08 2009-04-28 Trend Micro Incorporated System and method for computer protection against malicious electronic mails by analyzing, profiling and trapping the same
US20040158730A1 (en) * 2003-02-11 2004-08-12 International Business Machines Corporation Running anti-virus software on a network attached storage device
US7203959B2 (en) * 2003-03-14 2007-04-10 Symantec Corporation Stream scanning through network proxy servers
US7512809B2 (en) * 2003-08-22 2009-03-31 Cyrus Peikari Attenuated computer virus vaccine
US20050132205A1 (en) * 2003-12-12 2005-06-16 International Business Machines Corporation Apparatus, methods and computer programs for identifying matching resources within a data processing network
US7370361B2 (en) * 2004-02-06 2008-05-06 Trend Micro Incorporated System and method for securing computers against computer virus
US7685640B2 (en) * 2004-09-21 2010-03-23 Agere Systems Inc. Methods and apparatus for interface adapter integrated virus protection

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440723A (en) * 1993-01-19 1995-08-08 International Business Machines Corporation Automatic immune system for computers and computer networks
US6070244A (en) * 1997-11-10 2000-05-30 The Chase Manhattan Bank Computer network security management system
US6370648B1 (en) * 1998-12-08 2002-04-09 Visa International Service Association Computer network intrusion detection
US20020046275A1 (en) * 2000-06-12 2002-04-18 Mark Crosbie System and method for host and network based intrusion detection and response
US20030051026A1 (en) * 2001-01-19 2003-03-13 Carter Ernst B. Network surveillance and security system
US20050021740A1 (en) * 2001-08-14 2005-01-27 Bar Anat Bremler Detecting and protecting against worm traffic on a network
US20030115485A1 (en) * 2001-12-14 2003-06-19 Milliken Walter Clark Hash-based systems and methods for detecting, preventing, and tracing network worms and viruses
US20050044406A1 (en) * 2002-03-29 2005-02-24 Michael Stute Adaptive behavioral intrusion detection systems and methods
US20030191966A1 (en) * 2002-04-09 2003-10-09 Cisco Technology, Inc. System and method for detecting an infective element in a network environment
US20030236995A1 (en) * 2002-06-21 2003-12-25 Fretwell Lyman Jefferson Method and apparatus for facilitating detection of network intrusion

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8359650B2 (en) * 2002-10-01 2013-01-22 Skybox Secutiry Inc. System, method and computer readable medium for evaluating potential attacks of worms
US20080005555A1 (en) * 2002-10-01 2008-01-03 Amnon Lotem System, method and computer readable medium for evaluating potential attacks of worms
US8904542B2 (en) * 2002-10-01 2014-12-02 Skybox Security Inc. System, method and computer readable medium for evaluating potential attacks of worms
US20130219503A1 (en) * 2002-10-01 2013-08-22 Lotem Amnon System, method and computer readable medium for evaluating potential attacks of worms
US9507944B2 (en) 2002-10-01 2016-11-29 Skybox Security Inc. Method for simulation aided security event management
US20040098482A1 (en) * 2002-11-19 2004-05-20 Fujitsu Limited Hub unit for preventing the spread of viruses, method and program therefor
US20060101279A1 (en) * 2004-11-09 2006-05-11 Konica Minolta Business Technologies, Inc. Image processor
US8132230B2 (en) * 2004-11-09 2012-03-06 Konica Minolta Business Technologies, Inc. Image processor
US8392994B2 (en) * 2005-01-14 2013-03-05 Mcafee, Inc. System, method and computer program product for context-driven behavioral heuristics
US20110179491A1 (en) * 2005-01-14 2011-07-21 Mcafee, Inc., A Delaware Corporation System, method and computer program product for context-driven behavioral heuristics
US20080028463A1 (en) * 2005-10-27 2008-01-31 Damballa, Inc. Method and system for detecting and responding to attacking networks
US9306969B2 (en) 2005-10-27 2016-04-05 Georgia Tech Research Corporation Method and systems for detecting compromised networks and/or computers
US10044748B2 (en) 2005-10-27 2018-08-07 Georgia Tech Research Corporation Methods and systems for detecting compromised computers
US8566928B2 (en) 2005-10-27 2013-10-22 Georgia Tech Research Corporation Method and system for detecting and responding to attacking networks
US8955122B2 (en) * 2007-04-04 2015-02-10 Sri International Method and apparatus for detecting malware infection
US20090172815A1 (en) * 2007-04-04 2009-07-02 Guofei Gu Method and apparatus for detecting malware infection
US10270803B2 (en) 2007-04-04 2019-04-23 Sri International Method and apparatus for detecting malware infection
US10027688B2 (en) 2008-08-11 2018-07-17 Damballa, Inc. Method and system for detecting malicious and/or botnet-related domain names
US20100037314A1 (en) * 2008-08-11 2010-02-11 Perdisci Roberto Method and system for detecting malicious and/or botnet-related domain names
US9525699B2 (en) 2010-01-06 2016-12-20 Damballa, Inc. Method and system for detecting malware
US8578497B2 (en) * 2010-01-06 2013-11-05 Damballa, Inc. Method and system for detecting malware
US10257212B2 (en) 2010-01-06 2019-04-09 Help/Systems, Llc Method and system for detecting malware
US20110167495A1 (en) * 2010-01-06 2011-07-07 Antonakakis Emmanouil Method and system for detecting malware
US8826438B2 (en) 2010-01-19 2014-09-02 Damballa, Inc. Method and system for network-based detecting of malware from behavioral clustering
US9948671B2 (en) 2010-01-19 2018-04-17 Damballa, Inc. Method and system for network-based detecting of malware from behavioral clustering
US9516058B2 (en) 2010-08-10 2016-12-06 Damballa, Inc. Method and system for determining whether domain names are legitimate or malicious
US20120102368A1 (en) * 2010-10-21 2012-04-26 Unisys Corp. Communicating errors between an operating system and interface layer
US9686291B2 (en) 2011-02-01 2017-06-20 Damballa, Inc. Method and system for detecting malicious domain names at an upper DNS hierarchy
US8631489B2 (en) 2011-02-01 2014-01-14 Damballa, Inc. Method and system for detecting malicious domain names at an upper DNS hierarchy
US8856929B1 (en) * 2012-03-13 2014-10-07 Sprint Communications Company L.P. Wireless communication device with circuitry to invoke a physically independent non-IP communication capability
US10547674B2 (en) 2012-08-27 2020-01-28 Help/Systems, Llc Methods and systems for network flow analysis
US9680861B2 (en) 2012-08-31 2017-06-13 Damballa, Inc. Historical analysis to identify malicious activity
US9894088B2 (en) 2012-08-31 2018-02-13 Damballa, Inc. Data mining to identify malicious activity
US9166994B2 (en) 2012-08-31 2015-10-20 Damballa, Inc. Automation discovery to identify malicious activity
US10084806B2 (en) 2012-08-31 2018-09-25 Damballa, Inc. Traffic simulation to identify malicious activity
US10050986B2 (en) 2013-06-14 2018-08-14 Damballa, Inc. Systems and methods for traffic classification
CN103488487A (en) * 2013-09-26 2014-01-01 深圳市金立通信设备有限公司 Event reminding method and terminal
US20150264078A1 (en) * 2014-03-11 2015-09-17 Vectra Networks, Inc. Detecting network reconnaissance by tracking intranet dark-net communications
US9602533B2 (en) * 2014-03-11 2017-03-21 Vectra Networks, Inc. Detecting network reconnaissance by tracking intranet dark-net communications
US9930065B2 (en) 2015-03-25 2018-03-27 University Of Georgia Research Foundation, Inc. Measuring, categorizing, and/or mitigating malware distribution paths

Also Published As

Publication number Publication date
US7159149B2 (en) 2007-01-02
US20040083408A1 (en) 2004-04-29

Similar Documents

Publication Publication Date Title
US7159149B2 (en) Heuristic detection and termination of fast spreading network worm attacks
US10567405B1 (en) System for detecting a presence of malware from behavioral analysis
US8931099B2 (en) System, method and program for identifying and preventing malicious intrusions
EP3394784B1 (en) Malicious software identification
US9674222B1 (en) Method and system for detecting network compromise
US20160078229A1 (en) System And Method For Threat Risk Scoring Of Security Threats
US8474044B2 (en) Attack-resistant verification of auto-generated anti-malware signatures
US8266703B1 (en) System, method and computer program product for improving computer network intrusion detection by risk prioritization
JP6104149B2 (en) Log analysis apparatus, log analysis method, and log analysis program
JP4545647B2 (en) Attack detection / protection system
US20190012457A1 (en) Malicious software identification
US20190207955A1 (en) Malicious network traffic identification
US20020199109A1 (en) System, method and computer program for the detection and restriction of the network activity of denial of service attack software
EP3374870B1 (en) Threat risk scoring of security threats
WO2008146266A2 (en) Method and system for counting new destination addresses
EP3395035A1 (en) Malicious network traffic identification
GB2381722A (en) intrusion detection (id) system which uses signature and squelch values to prevent bandwidth (flood) attacks on a server
US8763121B2 (en) Mitigating multiple advanced evasion technique attacks
US8095981B2 (en) Worm detection by trending fan out
Li et al. Detecting smart, self-propagating Internet worms
Kono et al. An unknown malware detection using execution registry access
EP1751651B1 (en) Method and systems for computer security
US11451584B2 (en) Detecting a remote exploitation attack
CN114189360B (en) Situation-aware network vulnerability defense method, device and system
CN113596022A (en) Apparatus and method for identifying malicious sources within a network

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION

AS Assignment

Owner name: NORTONLIFELOCK INC., CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:SYMANTEC CORPORATION;REEL/FRAME:053306/0878

Effective date: 20191104