Systems and methods for identifying the client applications of a network
First Claim
1. A method for passively and automatically identifying a client application running on a network device of a network, comprising:
- reading a packet transmitted by the network device on the network;
decoding the packet into one or more protocol fields;
comparing the one or more fields to predefined protocol fields which collectively identify a client application, stored in a client application identifying data structure; and
storing a client application from the client application identifying structure which has protocol fields that match the protocol fields decoded from the packet as the client application running on the network device.
3 Assignments
0 Petitions
Accused Products
Abstract
A packet transmitted on a network is read and decoded. A network device and its operating system are identified by analyzing the decoded packet. If more than one operating system is identified from the decoded packet, the operating system is selecting by comparing confidence values assigned to the operating systems identified. A client application running on the network device is identified from the decoded packet or subsequent packets that are read, decoded and analyzed. The network topology of a network is determined by reading, decoding, and analyzing a plurality of packets. A flow between two network devices is determined by reading, decoding, and analyzing a plurality of packets. Vulnerabilities are assigned to operating systems and client applications identified by reading, decoding, and analyzing packets. Network configuration policy is enforced on operating systems and client applications identified by reading, decoding, and analyzing packets.
-
Citations
20 Claims
-
1. A method for passively and automatically identifying a client application running on a network device of a network, comprising:
-
reading a packet transmitted by the network device on the network; decoding the packet into one or more protocol fields; comparing the one or more fields to predefined protocol fields which collectively identify a client application, stored in a client application identifying data structure; and storing a client application from the client application identifying structure which has protocol fields that match the protocol fields decoded from the packet as the client application running on the network device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for passively and automatically identifying a client application running on a network device of a network, comprising:
-
identifying a flow between an initiator network device and a responder network device by reading, decoding, and analyzing two or more packets transmitted on the network; identifying one or more packets of the flow as one or more initiator packets; identifying one or more packets of the flow as one or more responder packets; if protocol fields of the one or more initiator packets match predefined initiator protocol fields which collectively identity the client application and if protocol fields of the one or more responder packets match predefined responder protocol fields which collectively identify the client application, then identifying the client application of the matched protocol fields as a client application running on one of the initiator network device and the responder network device. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method for passively and automatically identifying a client application running on a network device of a network, comprising:
-
maintaining a client application identifying data structure that comprises one or more predefined protocol fields which collectively identify one or more client applications; identifying a flow between an initiator network device and a responder network device by reading, decoding, and analyzing two or more packets transmitted on the network; comparing one or more protocol fields of one or more packets of the flow to the one or more predefined protocol fields of the one or more client applications of the client application identifying data structure; and recording a client application from the client application identifying structure which has protocol fields that match the protocol fields of the one or more packets as the client application of the initiator network device. - View Dependent Claims (19)
-
-
20. An apparatus for passively and automatically identifying a client application running on a network device of a network, comprising:
-
a receiver for receiving a packet transmitted by the network device on the network; a decoder for decoding the packet into one or more protocol fields; a processor for comparing the one or more fields to predefined protocol fields which collectively identify a client application, stored in a client application identifying data structure; and a computer-readable medium for storing a matched client application which has protocol fields that match the protocol fields decoded from the packet as the client application running on the network device.
-
Specification