Claims
- 1. A network defense system, comprising:
a state manager functionality connected in-line with respect to a data flow of packets, the state manager functionality operable to track sessions currently in existence on the data flow and save historical packet related data; and an algorithmic filter operable to perform a statistical analysis on the tracked sessions and historical packet related data to determine whether packets in the data flow across multiple sessions present a threat to a protected network.
- 2. The network defense system of claim 1 further including a packet handler also connected in-line with respect to the data flow of packets and operable responsive to the presence of a threat to block threatening packets.
- 3. The network defense system of claim 2 wherein the packet handler is further operable responsive to the presence of a threat to terminate threatening sessions.
- 4. The network defense system of claim 1 wherein the threat to the protected network comprises a threat with respect to a plurality of sessions taken from the group consisting of: address sweep attacks, port scan attacks and denial of service attacks.
- 5. The network defense system of claim 1 wherein the algorithmic filter operable to performs a statistical analysis on the tracked sessions and historical packet related data is further operable to determine whether packets in the data flow across multiple sessions are suspicious.
- 6. The network defense system of claim 5 further including:
a trigger filter also connected in-line with respect to the data flow of packets and operable responsive to the algorithmic filter suspicion determination to filter the suspicious packets in the data flow against criteria designed for detecting threatening packets across multiple sessions; and a packet handler also connected in-line with respect to the data flow of packets and operable responsive to the detected threat to block the threatening packets.
- 7. The network defense system of claim 6 wherein the trigger filter is further operable to filter packets in the data flow against criteria designed for detecting threatening packets in individual sessions.
- 8. The network defense system of claim 7 wherein the trigger filter is still further operable to determine whether packets in the data flow in individual sessions are suspicious, the packet handler being further operable to extract the suspicious packets from the data flow for further examination.
- 9. The network defense system of claim 8 further including:
a threat verifier that receives the extracted packets and implements a filtering operation thereon that is more comprehensive than that performed by the in-line trigger filter for the purpose of resolving whether the suspicious extracted packets are threatening.
- 10. The network defense system of claim 9 wherein the threat verifier is further operable to return suspicious extracted packets to the data flow in event they are determined not to be threatening.
- 11. The network defense system of claim 9 further including:
a risk assessor operable to examine the suspicious extracted packets and determine whether they present a certain risk to identifiable assets that are present within the network.
- 12. The network defense system of claim 1 further including a flow controller also connected in-line with respect to the data flow of packets and operable to regulate the passage of packets along the data flow.
- 13. The network defense system of claim 1 wherein:
the state manager functionality is implemented in hardware; and the algorithmic filter is implemented in software.
- 14. A method for defending a network, comprising the steps of:
tracking sessions currently in existence on a data flow of packets; collecting historical packet related data with respect to those sessions; and algorithmically filtering the tracked sessions and collected historical packet related data to determine based on statistical analysis whether packets in the data flow across multiple sessions present a threat to the network.
- 15. The method of claim 14 further including the step of handling packets in the data flow of packets by blocking threatening packets in response to the presence of a determined threat.
- 16. The method of claim 15 wherein the step of handling further comprises the step of terminating threatening sessions in response to the presence of a determined threat.
- 17. The method of claim 14 wherein the threat to the protected network comprises a threat with respect to a plurality of sessions taken from the group consisting of: address sweep attacks, port scan attacks and denial of service attacks.
- 18. The method of claim 14 further including the step of determining from the statistical analysis whether packets in the data flow across multiple sessions present a suspicion of a threat to the network.
- 19. The method of claim 18 further including the steps of:
filtering packets in the data flow of packets in operable response to the suspicion of a threat against criteria designed for detecting threatening packets across multiple sessions; and handling packets in the data flow of packets by blocking threatening packets in response to the presence of a detected threat.
- 20. The method of claim 19 wherein the step of filtering packets further includes the step of filtering packets in the data flow against criteria designed for detecting threatening packets in individual sessions.
- 21. The method of claim 20 wherein the step of filtering packets still further includes the step of determining whether packets in the data flow in individual sessions are suspicious, the step of handling further including the step of extracting the suspicious packets from the data flow for further examination.
- 22. The method of claim 21 further including the steps of:
verifying the threat with respect to the extracted packets by implementing a filtering operation thereon that is more comprehensive than that performed in the step of filtering packets for the purpose of resolving whether the suspicious extracted packets are threatening.
- 23. The method of claim 22 wherein the step of verifying the threat further includes the step of returning suspicious extracted packets to the data flow in event they are determined not to be threatening.
- 24. The method of claim 22 further including the step of:
assessing risk with respect to the suspicious extracted packets by determining whether they present a certain risk to identifiable assets that are present within the network.
- 25. The method of claim 14 further including step of controlling flow by regulating the passage of packets along the data flow.
- 26. A system for defending a network, comprising:
a state manager functionality connected in-line with respect to a data flow of packets, the state manager functionality operable to track information concerning multiple sessions currently in existence on the data flow; an algorithmic filter operable to perform a statistical analysis on the information to determine whether packets in the data flow across multiple sessions present a threat to the network; a trigger filter also connected in-line with respect to the data flow of packets and operable to filter packets in the data flow against criteria designed for detecting threatening packets in individual sessions; and a packet handler also connected in-line with respect to the data flow of packets and operable responsive to algorithmic and trigger filter detected threats to block the threatening packets.
- 27. The system of claim 26 further including a flow controller also connected in-line with respect to the data flow of packets and operable to regulate the passage of packets along the data flow.
- 28. The system of claim 26 wherein the algorithmic filter is further operable to determine from the statistical analysis whether packets in the data flow across multiple sessions present a suspicion of a threat to the network, and wherein the trigger filter is further operable responsive to the suspicion determination to filter suspicious packets in the data flow against criteria designed for detecting threatening packets across multiple sessions.
- 29. The system of claim 26 wherein the packet handler is further operable responsive to the presence of a threat to terminate threatening sessions.
- 30. The system of claim 26 wherein the threat to the protected network comprises a threat with respect to a plurality of sessions taken from the group consisting of: address sweep attacks, port scan attacks and denial of service attacks.
- 31. The system of claim 26 wherein the trigger filter is still further operable extract packets from the data flow in the event the trigger filter determines them to be suspicious.
- 32. The system of claim 31 further including:
a threat verifier that receives the extracted packets and implements a filtering operation thereon that is more comprehensive than that performed by the in-line trigger filter for the purpose of resolving whether the suspicious extracted packets are threatening.
- 33. The system of claim 32 wherein the threat verifier is further operable to return suspicious extracted packets to the data flow in event they are determined not to be threatening.
- 34. The system of claim 33 further including:
a risk assessor operable to examine the suspicious extracted packets and determine whether they present a certain risk to identifiable assets that are present within the network.
- 35. The system of claim 26 wherein the information analyzed by the algorithmic filter comprises session tracking data concerning the association of packets to established certain sessions.
- 36. The system of claim 26 wherein the information analyzed by the algorithmic filter comprises historical packet related data across multiple sessions.
- 37. The system of claim 26 wherein the filtering criteria comprise header and content matching criteria.
- 38. The system of claim 26 wherein the filtering criteria comprise multi-packet content matching criteria.
- 39. The system of claim 26 wherein the algorithmic filter implements statistical threshold filtering.
- 40. A packet filtering system, comprising:
a normalizer connected in-line with respect to a data flow of packets, the normalizer operable to examine each passing packet in the data flow and enforce on those packets conformance to certain predefined standards; and a packet handler also connected in-line with respect to the data flow of packets and operable responsive to the presence of nonconforming packets with a blocking of those packets from entry to a protected network.
- 41. The system as in claim 40 wherein the normalizer operates to force reassembly of fragmented packets before entry into the protected network.
- 42. The system as in claim 41 further including:
a trigger filter also connected in-line with respect to the data flow of packets and operable detect a threat to the protected network from a reassembled packet, the packet handler responding to the detection by blocking the reassembled packet.
- 43. The system as in claim 42 wherein the packet handler responds to the detection by terminating a session associated with the reassembled packet.
- 44. The system as in claim 40 wherein the normalizer operates to force a decoding of encoded packets before entry into the protected network.
- 45. The system as in claim 44 further including:
a trigger filter also connected in-line with respect to the data flow of packets and operable detect a threat to the protected network from a decoded packet, the packet handler responding to the detection by blocking the decoded packet.
- 46. The system as in claim 45 wherein the packet handler responds to the detection by terminating a session associated with the decoded packet.
- 47. The system as in claim 40 wherein the normalizer operates to track active sessions and associate packets with active sessions.
- 48. The system as in claim 47 further including:
a trigger filter also connected in-line with respect to the data flow of packets and operable detect a threat to the protected network from a passing packet, the packet handler responding to either a failure of the passing packet to be associated with an active session or the detection of the threat by blocking the passing packet.
- 49. The system as in claim 48 wherein the packet handler responds to the detection by terminating a session associated with the passing packet.
- 50. A method for packet filtering, comprising the steps of:
normalizing packets within a data flow of packets by examining each passing packet in the data flow and enforcing on those packets conformance to certain predefined standards; and handling the passing packets in response to the presence of nonconforming packets by blocking of those packets from entering a protected network.
- 51. The method as in claim 50 wherein the step of normalizing includes the step of forcing reassembly of fragmented packets before entry into the protected network.
- 52. The method as in claim 51 further including the step of filtering the data flow of packets to detect a threat to the protected network from a reassembled packet, the step of handling including the step of responding to the detection by blocking the reassembled packet.
- 53. The method as in claim 52 wherein the step of handling includes the step of terminating a session associated with the reassembled packet.
- 54. The method as in claim 50 wherein the step of normalizing includes the step of forcing a decoding of encoded packets before entry into the protected network.
- 55. The method as in claim 54 further including the step of filtering the data flow of packets to detect a threat to the protected network from a decoded packet, the step of handling including the step of blocking the decoded packet.
- 56. The method as in claim 55 wherein the step of handling includes the step of terminating a session associated with the decoded packet.
- 57. The system as in claim 50 wherein the step of normalizing includes the step of tracking active sessions and associate packets with active sessions.
- 58. The method as in claim 57 further including the step of filtering the data flow of packets to detect a threat to the protected network from a passing packet, the step of handling including the step of blocking the passing packet in the event of either a failure of the passing packet to be associated with an active session or the detection of the threat.
- 59. The method as in claim 58 wherein the step of handling comprises the step of terminating a session associated with the passing packet.
- 60. A packet filtering system, comprising:
a set of filtering criteria, the criteria including an identification of network assets that are threatened by certain suspicious traffic; a filter operable to examine suspicious packets in comparison to the set of filtering criteria, the filter identifying certain ones of the suspicious packets for further investigation; and a risk assessor operable to examine the certain ones of the suspicious packets in comparison to the identification of threatened network assets, the risk assessor issuing an alert notification in the event a protected network includes at least one of the identified network assets that are threatened by the certain ones of the suspicious packets.
- 61. The system of claim 60 further including a database storing a list of assets within the protected network, the risk assessor operable to compare the identified network assets that are threatened by the packets against the database list of assets.
- 62. The system of claim 60 further including a trigger filter operable to examine each packet within a data flow in comparison to the set of filtering criteria to identify good traffic packets, bad traffic packets and the suspicious packets.
- 63. The system of claim 62 further including a packet handler operable to examine each packet within the data flow and (a) drop the bad traffic packets, (b) allow entry of the good traffic packets into the protected network, and (c) pass the suspicious packets up to the filter for examination.
- 64. A packet filtering method, comprising:
defining a set of filtering criteria, the criteria including an identification of network assets that are threatened by certain suspicious traffic; examining suspicious packets in comparison to the set of filtering criteria, the examination identifying certain ones of the suspicious packets for further investigation; assessing risk associated with the certain ones of the suspicious packets with respect to the identification of threatened network assets; and issuing an alert notification in the event a protected network includes at least one of the identified network assets that are threatened by the certain ones of the suspicious packets.
- 65. The method of claim 64 further including step of storing a list of assets within the protected network, the step of assessing risk including the step of comparing the identified network assets that are threatened by the packets against the list of assets.
- 66. The method of claim 65 wherein the stored list of assets includes an identification of asset characteristics, and the step of assessing risk includes the step of comparing characteristics of the identified network assets that are threatened by the packets against the stored asset characteristics.
- 67. The method of claim 64 further including the step of examining each packet within a data flow in comparison to the set of filtering criteria to identify good traffic packets, bad traffic packets and the suspicious packets.
- 68. The method of claim 67 further including the step of responding to the examination by:
(a) dropping the bad traffic packets; (b) allowing entry of the good traffic packets into the protected network; and (c) passing the suspicious packets up for further examination.
- 69. A method for network protection, comprising the steps of:
performing a deep packet inspection of each packet in a data flow at line speed to identify good packets, bad packets and suspicious packets; allowing the good packets to pass on to a protected network; blocking the bad packets from entry into the protected network; and extracting the suspicious packets from the data flow for further investigation.
- 70. The method of claim 69 wherein the step of performing is operable to make the identification within the context of a single session.
- 71. The method of claim 69 wherein the step of performing is operable to make the identification within the context of multiple sessions.
- 72. The method of claim 69 further including the step of performing a more thorough threat assessment analysis on the extracted suspicious packets.
- 73. The method of claim 69 wherein the step of performing comprises the step of pattern matching the passing packets against threat criteria.
- 74. The method of claim 73 wherein the step of pattern matching is performed in multiple parallel instances.
CROSS-REFERENCE
[0001] The present application is related to co-pending U.S. Application for patent Ser. No. 10/136,889, filed Apr. 30, 2002, entitled NETWORK SECURITY SYSTEM INTEGRATION, the disclosure of which is hereby incorporated by reference.
[0002] The present application is related to co-pending U.S. Application for patent Ser. No. 10/217,862, filed Aug. 12, 2002, entitled MULTI-LEVEL PACKET SCREENING WITH DYNAMICALLY SELECTED FILTERING CRITERIA, the disclosure of which is hereby incorporated by reference.