Presented at BSidesLV 2014
Aug. 5, 2014, 2 p.m.
Suppose there is a stream of packets coming through your gateway, their contents apparently encrypted. They may be from
a standard VPN such as OpenVPN or an IPSec implementation running over some non-standard ports or protocol, but you
missed the initial negotiation that could tell you what sort of a VPN that might be. Can you still find out what
software stack and what cipher are being used?
We found out that, if you introduce a periodic disturbance to an encrypted VPN connection, you can fingerprint the VPN
and, in particular, the cipher using nothing but packet timings of typical file transfers. We found out also that many
things we take for granted aren't necessarily true - e.g., that double encryption may not be better for resisting
fingerprinting, and that the most common encryption algorithms differ more in performance than one would think they do.
We believe that the fingerprinting signatures are due to the interactions between the cryptographic and the network
layers of the VPN, the cross-layer effects that have been largely overlooked to date. Our findings suggest that these
interactions between the layers of a VPN implementation should be studied and taken into account to protect
implementations against information leaks.
Sergey Bratus is a Research Assistant Professor of Computer Science at Dartmouth College. He sees state-of-the-art hacking as a distinct research and engineering discipline that, although not yet recognized as such, harbors deep insights into the nature of computing. He has a Ph.D. in Mathematics from Northeastern University and worked at BBN Technologies on natural language processing research before coming to Dartmouth.
Anna Shubina chose "Privacy" as the topic of her doctoral thesis and was the operator of Dartmouth's Tor exit node when the Tor network had about 30 nodes total.
Sergey Bratus is a research associate professor at a college in Northern Appalachia, looking for bright and wonderful machines in weird places.