BadUSB works by emulating a keyboard HID device. Would it be possible to improve the BadUSB device to allow plugging the actual keyboard in to the rear, duplicating the identity for the port facing the computer, and passing copies of any keystrokes actually sent as well as then injecting the malicious payload when the time is right?
This made me realize for all of the USB security/token devices (I don't think there is) an actual secure/signed transport mode for USB verifying the two aren't being snooped. Or maybe there is and I just don't know about it, this would be a much stronger method of securing devices.