I've got question to anyone that does firmware programming.
I suspect that it is possible to emulate USB device in software. If that's true, how hard would it be to create a virtual usb hub, that the system will treat just like a real usb hardware, and would it require any special privileges on the computer (i.e kernel space module, root).
If it's easy, then I'm worried that it may be possible use this to hide malware this way.