|
Hi-Performance Protocol Identification Engine |
|
Getting Information from HiPPIE via /procSo now that you have this great code running in your kernel, what now? Well, once you've enabled HiPPIE on some interface and started analyzing traffic, you need to then start getting information back out of HiPPIE. The way to achieve this is through the HiPPIE /proc filesystem interfaces. All of these interfaces exist in /proc/net/hippie. Below is a list of the various interfaces, and what they do: stat Interface The stat interface gives a few basic statistical pieces about HiPPIE, such as packets processed, sessions processed, and some instantatneous snapshots of HiPPIE's status as well. Below is a sample HiPPIE /proc/net/hippie/stat interface output. HiPPIE Statistics protocols Interface The protocols interface will give a list of all the protocols that are loaded for analysis in HiPPIE, as well as statistics about those protocols. These statistics first are for all packets that contain any header of the given protocol, and secondly for packets in sessions whose final header is the given protocol type. For application protocols, these numbers will almost without exception be the same, where as encapsulating protocols such as IP, TCP, UDP, and so forth, will most likely contain other protocol headers inside of them to be classified, and the first numbers will be much larger than the last. Below is an example output from the protocols interface. ID Proto Type Encap Persist Insps [Pkts Conns Bytes] [Pkts Conns Bytes] [Preds Used] Normally this data is tab-spaced and is more readable on your console, but it doesn't represent properly on the webpage. sessions/all Interface The sessions/all proc Interface allows for the text dumping of the entire current active session table. Below is an example output of a very small session table. The addresses have been obfuscated for the hosts protection. SessID Proto Packets Timeout State Protocol Information interfaces/* Interfaces In the interfaces directory will exist one proc file for each network interface on your system. These are currently the only read/write proc interfaces within HiPPIE, and are used for enabling and disabling packet reading from an interface for HiPPIE analysis. To enable packet reading from an interface for inbound read only, simply echo 1 into that interface file as root. (NOTE: To do a passive span interface, you'll need to turn this interface on for promiscuous mode by using ifconfig [interface] promisc) To enabled packet reading from an interface for both inbound and outbound, simply echo 2 into that interface file as root. To disable the interface, echo 0 into that interface file as root. Or if you're just curious whether the interface is currently enabled or not, just cat the interface file and it will present the values 0 or 1 of disabled or enabled, respectively. Back to HiPPIE Documentation. |