Xplico
Developer(s) | Gianluca Costa & Andrea de Franceschi |
---|---|
Stable release | |
Written in | C, PHP, Python |
Operating system | Linux |
Type | Network Forensics |
License | GNU General Public License |
Website |
www |
Xplico is a network forensics analysis tool (NFAT), which is a software that reconstructs the contents of acquisitions performed with a packet sniffer (e.g. Wireshark, tcpdump, Netsniff-ng).
Unlike the protocol analyzer, whose main characteristic is not the reconstruction of the data carried by the protocols, Xplico was born expressly with the aim to reconstruct the protocol's application data and it is able to recognize the protocols with a technique named Port Independent Protocol Identification (PIPI).[2]
The name "xplico" refers to the latin verb explico and its significance.
Xplico is free and open-source software, subject to the requirements of the GNU General Public License (GPL), version 2.[3]
Overview
To clarify what Xplico does we can imagine to have the raw data (Ethernet or PPP) of a web navigation (HTTP protocol), in this case Xplico is able to extract and reconstruct all the Web pages and contents (images, files, cookies, and so on). Similarly Xplico is able to reconstruct the e-mail exchanged with the IMAP, POP, and SMTP protocols.
Among the protocols that Xplico identifies and reconstructs there are VoIP, MSN, IRC, HTTP, IMAP, POP, SMTP, and FTP.
Features
Software architecture
The Xplico's software architecture provides:
- an input module to handle data input (from probes or packet sniffer)
- an output module to organize the decoded data and presenting them to the end user; and
- a set of decoding modules, called protocol dissector for the decoding of the individual network protocol.
With the output module Xplico can have different user interfaces, in fact it can be used from command line and from a web user interface called "Xplico Interface". The protocol dissector is the modules for the decoding of the individual protocol, each protocol dissector can reconstruct and extract the data of the protocol.
All modules are plug-in and, through the configuration file, they can be loaded or not during execution of the program. This allows to focus the decoding, that is, if you want to decode only VoIP calls but not the Web traffic then you configure Xplico to load only the RTP and SIP modules excluding the HTTP module.[4]
Large scale pcap data analysis
Another feature of Xplico is its ability to process (reconstruct) huge amounts of data, it is able to manage pcap files of many Gbyte and also Tbyte and from multiple capture probes simultaneously, this thanks to the use of various types of "input modules". The pcap files can be uploaded in many way, directly from the Xplico Web user interface or with a SFTP or with a transmission channel called PCAP-over-IP.
For this features Xplico is used in the contexts of Lawful interception [5][6] and in Network Forensics.[7]
VoIP calls
Xplico and also its specific version called pcap2wav is able to decode VoIP calls based on the RTP protocol (SIP, H323, MGCP, SKINNY) and supports the decodidica of audio codecs G711ulaw, G711alaw, G722, G729, G723, G726, and MSRTA (Microsoft's Real-time audio).[8]
Basic commands working from command line
In these examples, it is assumed that eth0 is the used network interface.
- real-time acquisition and decoding:
xplico -m rltm -i eth0
- decoding of a single pcap file:
xplico -m pcap -f example.pcap
- decoding a directory which contains many files pcap
xplico -m pcap -d /path/dir/
in all cases the data decoded are stored in the a directory named xdecode. With the parameter -m we can select the "input module" type. The input module named rltm acquires the data directly from the network interface, vice versa the input module named pcap acquires data form pcap files or directory.
Distributions
Xplico is installed by default in the major distributions of digital forensics and penetration testing:
- Kali Linux,[9]
- BackTrack,[10]
- DEFT,[11]
- Security Onion
- Matriux
- BackBox
- CERT Linux Forensics Tools Repository.[12]
See also
- Comparison of packet analyzers
- tcpdump, a packet analyzer
- pcap, an application programming interface (API) for capturing network traffic
- snoop, a command line packet analyzer included with Solaris
- wireshark, a network packet analyzer
- dsniff, a packet sniffer and set of traffic analysis tools
- netsniff-ng, a free Linux networking toolkit
- ngrep, a tool that can match regular expressions within the network packet payloads
- etherape, a network mapping tool that relies on sniffing traffic
- tcptrace, a tool for analyzing the logs produced by tcpdump
References
- ↑ http://www.xplico.org/archives/1513
- ↑ "ISSA Journal" (PDF). Retrieved 2012-06-01.
- ↑ "Xplico License".
- ↑ Gabriele Faggioli, Andrea Ghirardini (2009). Computer Forensics. Italy: Apogeo. pp. 5, 227, 278, 369–370. ISBN 978-88-503-2816-1.
- ↑ "On detecting Internet-based criminal threats (European FP7-SEC Project INDECT)" (PDF). Retrieved 2017-05-09.
- ↑ "Sistema de interceptación y análisis de comunicaciones) |".
- ↑ Cameron H. Malin, Eoghan Casey BS MA (2012). Malware Forensics Field Guide for Windows Systems: Digital Forensics Field Guides. ISBN 978-1597494724.
- ↑ pcap2wav Xplico interface http://www.xplico.org/archives/1287
- ↑ Kali, Xplico as a package.
- ↑ "Backtrack 5".
- ↑ "Projects DEFT Linux". Archived from the original on June 18, 2012.
- ↑ "Linux Forensics Tools Repository".