Electronic – Reverse engineering USB signals

reverse-engineeringusb

Let's say there is a USB stick that is specifically for storing dates or days or some kind of arbitrary data. In order to access the data you must have the software.

Is there any way to analyze the USB signals and make your own hardware to read the values on the flash drive? What methods exist for doing so?

Best Answer

Yes.

I have been very pleased with the software from HHD. I used the serial port monitor to do some heavy reverse engineering a few years back and the HHD software was well tailored for the work.

I dabbled with their USB sniffer version but never bought the full version. Back in the day there was a free trial version that was somewhat useful. They may still have it.

At any rate, I got in over my head with USB because I couldn't figure out how to make the "driver" in Windows. If you're using Linux the project may be quite a bit easier, since all of that low level driver I/O logic is easily accessible in the kernel code. Also, Linux 2.6 offers some devices under /dev which can be used to directly send/receive to the USB device without the need for any special module/drivers. Great for development.