Estoy investigando la viabilidad de un proyecto para desarrollar un dispositivo USB sobre RF para compromisos de pruebas de penetración física . La idea es que nuestro probador pueda conectar un dispositivo a un puerto USB en una máquina dentro del entorno de prueba, luego salir del edificio y conectar dispositivos USB arbitrarios de forma remota.
Los requisitos son los siguientes:
Tengo algunas ideas en mi cabeza sobre qué tipos de tecnologías podrían usarse, por ejemplo, Arduino Mega + USB host shield + XBee para el transceptor host y una configuración similar (con cliente USB en lugar de host) para el transceptor cliente. También consideramos TCP/IP sobre 3G como un medio de transmisión potencial, aunque me temo que puede ser demasiado latente/lento.
¿Crees que esto podría lograrse con el tipo de tecnología que he mencionado? ¿Qué problemas puedo encontrar al enviar USB a través de una conexión latente como esta? ¿Hay una solución más fácil que me he perdido?
Para aclarar, considere nuestra tarea equivalente a colarse en un edificio e instalar un dispositivo en una computadora, similar a la escena al comienzo de Sneakers . La restricción se debe al hecho de que es probable que la máquina se bloquee o se apague, por lo que no podemos esperar tener ninguna interacción con el sistema más allá de conectar un dispositivo USB. A menudo, también tendremos menos de 30 segundos a solas con la máquina. Esto descarta la instalación de controladores/software, emparejamiento bluetooth, etc.
Habiendo visto esto, creo que vale la pena mirar los "adaptadores de cable" USB inalámbricos: http://www.usb.org/developers/wusb/docs/presentations/2006/Taipei06_RI_Wire_Adapter_Model.pdf (muchos detalles)
Sin embargo, no creo que sean transparentes. Si no puede encontrar uno transparente, y es un requisito absoluto, creo que tendrá que conformarse con el proxy. Conecte un dispositivo en un lado, haga que un "host" lea su descriptor y páselo a través de la conexión inalámbrica, haga que el proxy presente ese descriptor en el otro lado. Almacenar y reenviar solicitudes; hacer un reconocimiento a nivel de enlace en el proxy. Esto debería funcionar para dispositivos HID y probablemente pueda hacerlo funcionar para dispositivos de almacenamiento masivo. Probablemente tendrá que hacer una interpretación especial de algunos tipos de mensajes, así que integre eso en su software desde el principio. Esta es básicamente la solución de Anindo. Lo estimaría como unas buenas semanas de desarrollo de software; una vez que tenga los dispositivos XBee básicos funcionando, puede obtener mejores respuestas en el intercambio de pila de software.
Los concentradores USB normales no tienen almacenamiento en búfer y tienen un límite de latencia muy pequeño de unos pocos tics de 12 MHz.
¿Ha revisado USB sobre IP para ver si cumple con sus requisitos?
No tengo mucha experiencia con la tecnología, pero probé el software USB/IP de Windows para el caso de uso de la cámara USB remota hace algunos años. Si sería compatible con un concentrador USB, no estoy seguro.
Entonces, cualquier cosa que admita la comunicación IP (WiFi, Bluetooth, etc.), debería, al menos en teoría, ayudar a hacer USB sobre IP (inalámbrico). Un módulo o adaptador Bluetooth Class-1 (por ejemplo, Bluegiga ) debería ayudar a hacer esto en un rango bastante largo.
Anindo Ghosh
Polinomio
Anindo Ghosh
pjc50
Polinomio
pjc50
Polinomio
Polinomio
pjc50
Polinomio