A DEF CON 33 Workshop by Eijah & Cave Twink
The Internet is a dangerous place. Fortunately, hackers have created tools to make it safer. VPNs anonymize traffic but still expose IP addresses. Companies claim not to log, but how quickly will they hand over our data when they receive a warrant? Tor networks reroute traffic, but performance suffers as a result. Can we trust these distributed networks? Who owns the exit nodes? Finally, apps like Signal offer E2EE secure comms but in a proprietary and siloed way. Open source means very little if an app operates in a Walled Garden. Are there back doors? Is our data really safe?
In this workshop we'll create a Hacker VPN that combines the best of VPNs, Tor, and E2EE secure comms apps. We'll use modern-day PQC encryption to implement a secure protocol. We'll support packet sharding, random noise injection, multi-hop routing, and 100% anonymity between network endpoints. We'll do all this on Linux with standard C++, CMake & OpenSSL. At the end of this workshop you'll have all the tools you need to take the Hacker VPN to the next level. Why trust outdated software from shady companies when you can build your own modern day, kick-ass implementation?
Yes, the Internet is a dangerous place. But it's much safer when we take control.
Please come prepared to maximize your workshop time. Your machine must meet the following requirements:
All workshop downloads are now available. To save time, you must download the Virtual Machine (VM) before arriving. Verify the integrity of your download using the provided SHA256 checksums below. If you are unable to use the default VM method, it is your responsibility to read through the alternative options and set up your environment ahead of time. The workshop files and presentation slides are optional downloads for your reference, as the necessary files are already inside the VM.
SHA256: D0BF51FE825B8C2D726D9053D99D9EFC4E11B7D444AFF698AD4049E32AB0934D
SHA256: 2898B6ED061E3D93EB826A22A2AB8F71BE571360F1E679657185ED8F797D025A
SHA256: 5A81ACB391741BBB234470B18A9EC52480E835C0073FC1D7FED40D4AD025DDB6
SHA256: 0588AF3945C86E44162B77EEAABEC2B14F37513A60E8CB8C9B2770C9DA9D3A24
Hacker_VPN_ova.zip
archive. This will produce a file named Hacker_VPN.ova
.build-essential
, gdb
, cmake
, ninja-build
, VS Code
, etc.).File > Import Appliance...
in the menu.Hacker_VPN.ova
file you extracted.Hopefully the default instructions work for you. If you have issues following the default instructions, here are some alternatives. They are not the only options, but are to help point people in the right direction that have different system configurations. In the worst case, you can follow along without compiling.
build-essential gdb cmake ninja-build