Description
Bunker is a network tracing system that offers strong privacy while simplifying the development of network tracing software. With Bunker, network operators can perform network tracing based on the following two-step usage model:
- Pre-load Bunker with the trace collection and anonymization software.
- Start data collection with Bunker.
With Bunker, all sensitive data is stored in a buffer on disk that is "locked down" along with the tracing software. In this way, no raw data can be lost, leaked, or stolen.
The locked down buffer is encrypted with a key stored in Bunker's RAM. Bunker uses virtualization, encryption, and restricted I/O interfaces to protect the key and the tracing software, exporting only an anonymized trace. For more information about Bunker's architecture and a performance evaluation, please read our research papers.
Research Papers
-
Andrew G. Miklas, Stefan Saroiu, Alec Wolman,
and Angela Demke Brown
Bunker: A Privacy-Oriented Platform for Network Tracing
Proc. of the 6th USENIX Symposium on Networked Systems Design and Implementation (NSDI), Boston, MA, April 2009. -
Andrew G. Miklas, Stefan Saroiu, Alec Wolman,
and Angela Demke Brown
Tamper Resistant Network Tracing
Proc. of the 6th Workshop on Hot Topics in Networks (HotNets-VI), Atlanta, GA, November 2007.
People
- Andrew Miklas: M.Sc. student at U. of Toronto.
- Stefan Saroiu: Researcher, Microsoft Research.
- Alec Wolman: Researcher, Microsoft Research.
- Angela Demke Brown: Professor, U. of Toronto.
Download
There are many ways in which a Bunker can be constructed to protect the network tracing software and its data. Our implementation uses the Xen 3.1 VMM and a custom configuration of Linux ver 2.6.18 to construct the protected environment. Inside, we run a series of relatively simple Python scripts to parse HTTP.
-
For constructing the protected environment, you can
download:
- config-2.6.18-xen0-noscreen: the kernel configuration file for Bunker.
- network-custom.dat: iptable and bridge rules used to configure the firewall policies of Bunker.
- For the buffer on disk, you can download:
- bfr: a pipe buffer between the online and offline components.
-
For TCP and HTTP reconstruction, you can
download:
- pynids-0.5: a TCP reconstruction library usable from Python (based on libnids).
- httpparse.tgz: a state machine for parsing through HTTP written in Python.