An update to this post using the linux-hardened project is available here. USB has some surprising security implications: when a device is plugged in, the operating system generally loads the appropriate driver and initializes it. For example, plugging a device into an unlocked computer can execute code, since the device can act as a USB keyboard. This is how the "BadUSB" series of attacks work. Samy Kamkar's Poisontap project has been getting a lot of press recently. It's a little more inter...