cambiar la identificación del vendedor USB / identificación del producto

9

En Windows XP, ¿hay alguna manera fácil de cambiar o falsificar la identificación del proveedor y del producto de un dispositivo USB? (cambiar las cadenas descriptivas correspondientes probablemente también sea bueno)

Digamos, por ejemplo, que hay un programa útil que espera un dispositivo en particular, pero no ve por qué debería comprar uno nuevo cuando ya tiene un dispositivo muy similar que probablemente funcione con el programa.

He hecho muchas búsquedas en Google y, aparentemente, se puede hacer en Linux, por lo que se me ocurre ejecutar Windows en una máquina virtual en Linux, pero eso sería un poco inconveniente.

Hugh Allen
fuente

Respuestas:

6

Es posible que pueda hacer esto con devcon (las formas más fáciles de instalación que se enumeran aquí) , una utilidad proporcionada con Windows DDK / WDK. Puede encontrar una versión independiente adecuada para Windows XP en el enlace.

En particular, el comando sethwid de devcon puede hacer lo que está buscando. Consulte la página de ejemplos para ver algunos tutoriales.

No estoy seguro de que esto haga exactamente lo que desea, pero tengo la fuerte sensación de que puede estar lo más cerca posible sin tener que escribir su propio controlador de filtro. Si haces necesidad de escribir su propio conductor, agarrar el WDK y leer el devcon código fuente en src \ setup \ devcon .

También puede usar devcon de otras maneras para lograr su objetivo, pero sin más detalles es difícil decir exactamente cómo. ¡Buena suerte!

quijote curandero
fuente
Es un dispositivo HID y no está enumerado en la raíz, por sethwidlo que no lo tocará :(
Hugh Allen
Sí, así es como se veían mis pruebas también, pero no estaba seguro de estar obteniendo la sintaxis correcta : /
quack quijote
8

Es probable que la identificación del vendedor / identificación del producto USB esté codificada en el firmware del dispositivo y, por lo tanto, no se pueda cambiar sin piratear el firmware.

Como la mayoría del firmware está protegido contra cambios, es probable que esto bloquee el dispositivo USB.

Lamento ser negativo, pero no creo que sea posible.

harrymc
fuente
3
¿Por qué rechazar la respuesta correcta? La respuesta aceptada arriba no funcionó.
harrymc
"No se puede hacer" nunca es la respuesta correcta a una pregunta de software [1], por no mencionar completamente inútil. No estaba pidiendo cambiar el dispositivo en sí, solo la vista de una aplicación. [1] a menos que sea algo no computable en el sentido de Turing.
Hugh Allen
2
Su pregunta específicamente decía cambio o parodia. La forma de Turing: lo que solicitó solo se puede hacer si uno tiene conocimiento interno de Windows y / o puede parchear el sistema operativo. Tampoco es una buena netiquette despreciar a las personas que intentan ayudarlo a evitar errores.
harrymc
Sin embargo, esta no es una pregunta de software. ;) // Incluso si fuera posible cambiar la ID del dispositivo (que de hecho está almacenada en el propio dispositivo), seguiría siendo el mismo dispositivo. El tipo "similar" no es el mismo tipo. Lo más probable es que no pueda hacer lo que el software de la PC espera que haga.
Daniel B
1

No he hecho exactamente lo que me preguntas, pero esto podría darte un punto de partida. Además, solo he hecho este tipo de cosas en versiones anteriores a Vista.

La información que el Administrador de dispositivos y el Registro usan para asociar cadenas con dispositivos de hardware se inicializa desde el archivo .INF provisto con el dispositivo. Afortunadamente, los archivos .INF son archivos de texto estructurados como archivos .INI, por lo que son fáciles de trabajar. Para cambiar la "identidad" de un dispositivo existente:

  1. Vaya al WINDOWS\INFdirectorio y busque el archivo correcto. Probablemente necesitará buscar en todos los archivos .INF una cadena única asociada con el dispositivo.
  2. Copia de seguridad del archivo.
  3. Abra el archivo .INF con un editor de texto, busque la sección [Cadenas] y cambie la cadena apropiada.
  4. En el Administrador de dispositivos, desinstale y vuelva a instalar el dispositivo.

Con suerte, su aplicación solo está buscando esta cadena. Si está buscando la ID de hardware única (verá esto en el archivo .INF como un número de identificación de bus y hardware como bus \ VID_nnnn & PID_xxxx), entonces esta técnica no funcionará.

mtrw
fuente
Es un dispositivo genérico que no necesitaba controladores OEM. (lo cual es bueno, pero) No puedo encontrar un archivo INF para él (y busqué su ID de producto en todos los archivos INF).
Hugh Allen
@Hugh Allen: ¿puedes proporcionar más información? Por ejemplo, qué tipo de dispositivo, en qué bus está, ¿cómo reconoce la aplicación que no es el dispositivo esperado?
mtrw
ratón. USB. No se
Hugh Allen
@Hugh Allen: lo único que puedo recomendar es buscar su dispositivo existente en Registry \ HKLM \ SYSTEM \ CurrentControlSet, encontrar la cadena de nombre, encontrar el VID / PID y buscar el número de VID / PID en los archivos INF. Sin embargo, si la aplicación que está tratando de engañar usa el VID / PID directamente, esta técnica no funcionará.
mtrw
@Hugh Allen: lo siento, no había hecho clic en el enlace de tu pregunta anteriormente. No entendí que estabas buscando cambiar los números VID / PID. La información que te di solo habría cambiado las cadenas. Los archivos INF dependen de los números VID / PID, no los definen. Lamento guiarte por el camino equivocado.
mtrw