Reverse Engineering (continued) Analyse bus access Windows filter driver (ie USB Snoopy) Hardware Bus analyser Virtualised OS given access to real hardware Relatively easy for transaction based buses (ie USB) DMA buses really need hardware remapping (like Intel pre IA64 silicon SoftSDV) Dissassemble Driver for other operating systems Device firmware Analyse code Try to find information from drivers often written under NDA... Analyse hardware Read out default register, EEPROM states Grind the IC, use electron microscope or similiar to determine logic Test guesses Virtual hardware driver with vendor driver Implement in userspace for easy testing?