Si.
Estoy muy satisfecho con el software de HHD . Hace unos años, utilicé el monitor de puerto serie para realizar ingeniería inversa pesada y el software HHD estaba bien adaptado para el trabajo.
Me metí en su versión sniffer USB pero nunca compré la versión completa. En el pasado había una versión de prueba gratuita que era algo útil. Puede que aún lo tengan.
En cualquier caso, me enamoré del USB porque no sabía cómo hacer el "controlador" en Windows. Si está utilizando Linux, el proyecto puede ser bastante más fácil, ya que toda esa lógica de E / S del controlador de bajo nivel es fácilmente accesible en el código del kernel. Además, Linux 2.6 ofrece algunos dispositivos en / dev que se pueden usar para enviar / recibir directamente al dispositivo USB sin la necesidad de ningún módulo / controlador especial. Genial para el desarrollo.
La ingeniería inversa USB puede ser un desafío; Hay muchos datos para clasificar.
Primero, debes entender el protocolo; Encontré que USB in a Nutshell es bastante bueno.
Entonces necesita alguna forma de recopilar el tráfico y analizarlo. Requiere al menos algo de software y posiblemente algo de hardware. Utilizo un analizador USB de hardware en el trabajo, pero son caros. Sé que es posible usar Virtualbox y recopilar el tráfico USB en Linux, pero nunca lo he hecho. Puede comenzar con Virtual USB Analyzer .
fuente
Creo que se refiere a los dongles USB utilizados para la protección del software. No utilizan clases estándar de dispositivos USB HID o MASS STORAGE, y generalmente implementan su propio protocolo y proporcionan su propio controlador lateral de PC para comunicarse con ellos. La aplicación para PC generalmente les pide que respondan correctamente al mensaje cifrado enviado, o proporcionan información crítica que no existe en la aplicación para PC, que la aplicación necesita para funcionar correctamente. Estos mensajes se pueden rastrear, como cualquier otra cosa a través de USB, pero tenga cuidado ya que podría estar caminando al límite. Educar sobre USB es una cosa, pero publicar trabajos que rompan la protección del software no es legal y será procesado. No lo hagas Pido disculpas si entendí mal la pregunta.
fuente
Puede analizar el tráfico USB con Wireshark: http://wiki.wireshark.org/CaptureSetup/USB
Wireshark es un software gratuito, mejor conocido por sus capacidades de análisis de red, pero desde hace un tiempo también detecta el USB.
fuente
Pocos hackers famosos (que utilizan consolas de juegos de ingeniería inversa) están desarrollando una herramienta para analizar el protocolo USB. Se llama OpenVizsla. Actualmente está en desarrollo, pero pronto se completará. Es un proyecto completo de código abierto.
Consulte este enlace http://www.kickstarter.com/projects/bushing/openvizsla-open-source-usb-protocol-analyzer/posts
fuente
Adafruit tiene un tutorial sobre ingeniería inversa de un dispositivo USB (Kinect) http://www.ladyada.net/learn/diykinect/
fuente
Hay toneladas de soluciones de software y hardware. Capturar los datos y analizarlos no es un problema, sin embargo, debe comprender qué hay en la memoria USB. He visto personas desarrollando memorias USB con procesadores integrados y cifrado AES. (Encriptado / descifrado localmente). Sin saber qué es exactamente este dispositivo USB, es difícil saber qué puede aprender del tráfico.
fuente