Claims
- 1. A method for detecting transmission of malicious packets, comprising:
receiving a plurality of packets; generating hash values corresponding to the packets; comparing the generated hash values to hash values corresponding to prior packets; and determining that one of the packets is a potentially malicious packet when the generated hash value corresponding to the one packet matches one of the hash values corresponding to one of the prior packets and the one prior packet was received within a predetermined amount of time of the one packet.
- 2. The method of claim 1, wherein the generating hash values includes:
hashing a payload field in each of the packets to generate the hash values.
- 3. The method of claim 2, wherein the hashing a payload field includes:
hashing successive fixed-sized blocks in the payload field in each of the packets.
- 4. The method of claim 1, further comprising:
storing a plurality of hash values corresponding to known malicious packets.
- 5. The method of claim 4, further comprising:
comparing the generated hash values to the hash values corresponding to the known malicious packets; and declaring that one of the packets is a malicious packet when one or more of the generated hash values corresponding to the one packet matches one or more of the hash values corresponding to the known malicious packets.
- 6. The method of claim 5, further comprising:
taking remedial action when the one packet is declared a malicious packet.
- 7. The method of claim 6, wherein the taking remedial action includes at least one of:
raising a warning, delaying transmission of the one packet, requiring human examination of the one packet, dropping the one packet, dropping other packets originating from a same address as the one packet, sending a Transmission Control Protocol (TCP) close message to a sender of the one packet, disconnecting a link on which the one packet was received, and corrupting the one packet.
- 8. The method of claim 1, further comprising:
determining whether more than a predefined number of the prior packets with the matching hash value was received.
- 9. The method of claim 8, wherein the determining that one of the packets is a potentially malicious packet includes:
identifying the one packet as a potentially malicious packet when more than the predefined number of the prior packets was received within the predetermined amount of time of the one packet.
- 10. The method of claim 8, further comprising:
recording the generated hash value corresponding to the one packet when no more than the predefined number of the prior packets was received.
- 11. The method of claim 1, wherein the potentially malicious packet is associated with one of a virus and a worm.
- 12. The method of claim 1, further comprising:
taking remedial action when the one packet is determined to be a potentially malicious packet.
- 13. The method of claim 12, wherein the taking remedial action includes at least one of:
raising a warning, delaying transmission of the one packet, requiring human examination of the one packet, dropping the one packet, dropping other packets originating from a same address as the one packet, sending a Transmission Control Protocol (TCP) close message to a sender of the one packet, disconnecting a link on which the one packet was received, and corrupting the one packet.
- 14. The method of claim 12, wherein the taking remedial action includes at least one of:
determining a probability value associated with whether the one packet is a potentially malicious packet, and performing a remedial action when the probability value is above a threshold.
- 15. The method of claim 1, further comprising:
comparing a source address associated with the one packet to addresses of legitimate replicators, and determining that the one packet is not malicious when the source address matches one of the addresses of legitimate replicators.
- 16. A system for hampering transmission of a potentially malicious packet, comprising:
means for receiving a packet; means for generating one or more hash values from the packet; means for comparing the generated one or more hash values to hash values corresponding to prior packets; means for determining that the packet is a potentially malicious packet when the generated one or more hash values match one or more of the hash values corresponding to at least one of the prior packets and the at least one of the prior packets was received within a predetermined amount of time of the packet; and means for hampering transmission of the packet when the packet is determined to be a potentially malicious packet.
- 17. A system for detecting transmission of potentially malicious packets, comprising:
a plurality of input ports configured to receive a plurality of packets; a plurality of output ports configured to transmit the packets; a hash processor configured to:
observe each of the packets received at the input ports, generate hash values corresponding to the packets, compare the generated hash values to hash values corresponding to previous packets, and determine that one of the packets is a potentially malicious packet when one or more of the generated hash values corresponding to the one packet matches one or more of the hash values corresponding to one of the previous packets and the one previous packet was received within a predetermined amount of time of the one packet.
- 18. The system of claim 17, wherein when generating hash values, the hash processor is configured to hash a payload field in each of the packets.
- 19. The system of claim 18, wherein when hashing the payload field, the hash processor is configured to hash successive fixed-sized blocks in the payload field in each of the packets.
- 20. The system of claim 17, further comprising:
a hash memory configured to store a plurality of hash values corresponding to known malicious packets.
- 21. The system of claim 20, wherein the hash processor is further configured to:
compare one or more of the generated hash values to the hash values in the hash memory, and declare that one of the packets is a malicious packet when the one or more of the generated hash values corresponding to the one packet matches one or more of the hash values in the hash memory.
- 22. The system of claim 21, wherein the hash processor is further configured to take remedial action when the one packet is declared a malicious packet.
- 23. The system of claim 22, wherein when taking remedial action, the hash processor is configured to at least one of:
raise a warning, delay transmission of the one packet, require human examination of the one packet, drop the one packet, drop other packets originating from a same address as the one packet, send a Transmission Control Protocol (TCP) close message to a sender of the one packet, disconnect a link on which the one packet was received, and corrupt the one packet.
- 24. The system of claim 17, wherein the hash processor is further configured to determine whether more than a predefined number of the previous packets with the corresponding one or more hash values were received.
- 25. The system of claim 24, wherein when determining that one of the packets is a potentially malicious packet, the hash processor is configured to identify the one packet as a potentially malicious packet when more than the predefined number of the previous packets was received within the predetermined amount of time of the one packet.
- 26. The system of claim 24, wherein the hash processor is further configured to record the one or more of the generated hash values corresponding to the one packet when no more than the predefined number of the previous packets was received.
- 27. The system of claim 17, wherein the potentially malicious packet is associated with one of a virus and a worm.
- 28. The system of claim 17, wherein the hash processor is further configured to take remedial action when the one packet is determined to be a potentially malicious packet.
- 29. The system of claim 28, wherein when taking remedial action, the hash processor is configured to at least one of:
raise a warning, delay transmission of the one packet, require human examination of the one packet, drop the one packet, drop other packets originating from a same address as the one packet, send a Transmission Control Protocol (TCP) close message to a sender of the one packet, disconnect a link on which the one packet was received, and corrupt the one packet.
- 30. The system of claim 28, wherein when taking remedial action, the hash processor is configured to:
determine a probability value associated with whether the one packet is a potentially malicious packet, and perform a remedial action when the probability value is above a threshold.
- 31. The system of claim 17, wherein the hash processor is further configured to:
compare a source address associated with the one packet to addresses of legitimate replicators, and determine that the one packet is not malicious when the source address matches one of the addresses of legitimate replicators.
- 32. A system for detecting transmission of a potentially malicious packet, comprising:
an input port configured to receive a plurality of packets; an output port configured to transmit at least some of the packets; and a hash processor configured to:
receive a message identifying a potentially malicious packet, generate a plurality of hash values from the potentially malicious packet, determine whether any of the generated hash values match hash values corresponding to prior packets received at the input port, and identify the potentially malicious packet as one of the prior packets when one or more of the generated hash values match the hash values corresponding to the prior packets.
- 33. The system of claim 32, wherein the message includes a time-to-live (TTL) field; and
wherein the hash processor is further configured to:
determine whether the TTL field has expired, and discard the message when the TTL field has expired.
- 34. The system of claim 32, wherein when generating a plurality of hash values, the hash processor is configured to hash the potentially malicious packet at a plurality of starting offsets.
- 35. The system of claim 32, wherein the hash processor is further configured to store the hash values corresponding to the prior packets in a hash memory.
- 36. The system of claim 35, wherein when determining whether any of the generated hash values match hash values corresponding to prior packets, the hash processor is configured to compare the generated hash values to the hash values stored in the hash memory.
- 37. The system of claim 32, wherein the hash processor is further configured to forward the message to other systems when one or more of the generated hash values match the hash values corresponding to the prior packets.
- 38. The system of claim 32, wherein the hash processor is further configured to discard the message when none of the generated hash values match the hash values corresponding to the prior packets.
- 39. The system of claim 32, wherein the hash processor is further configured to generate a positive response to the message when one or more of the generated hash values match the hash values corresponding to the prior packets.
- 40. The system of claim 32, wherein the potentially malicious packet is associated with one of a virus and a worm.
- 41. A method for detecting a path taken by a potentially malicious packet, comprising:
storing a plurality of hash values corresponding to received packets; receiving a message identifying a potentially malicious packet; generating a plurality of hash values from the potentially malicious packet; comparing the generated hash values to the stored hash values; and determining that the potentially malicious packet was one of the received packets when one or more of the generated hash values match the stored hash values.
- 42. The method of claim 41, wherein the message includes a time-to-live (TTL) field; and
wherein the method further comprises:
determining whether the TTL field has expired; and discarding the message when the TTL field has expired.
- 43. The method of claim 41, wherein the generating a plurality of hash values includes:
hashing the potentially malicious packet at a plurality of starting offsets.
- 44. The method of claim 41, further comprising:
forwarding the message when one or more of the generated hash values match the stored hash values.
- 45. The method of claim 41, further comprising:
discarding the message when none of the generated hash values match the stored hash values.
- 46. The method of claim 45, further comprising:
generating a positive response to the message when one or more of the generated hash values match the stored hash values.
- 47. The method of claim 41, wherein the potentially malicious packet is associated with one of a virus and a worm.
RELATED APPLICATION
[0001] This application claims priority under 35 U.S.C. § 119 based on U.S. Provisional Application No. 60/341,462, filed Dec. 14, 2001, the disclosure of which is incorporated herein by reference. This application is related to U.S. patent application, Ser. No. 09/881,145, and U.S. patent application, Ser. No. 09/881,074, both of which were filed on Jun. 14, 2001, and both of which are incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60341462 |
Dec 2001 |
US |