Saltar al contenido

¿Cuál es el hash en HKCU Software Microsoft Windows CurrentVersion Explorer FileExts . UserChoice?

Solución:

Microsoft decidió en Windows 8 (probablemente por razones de seguridad) que los usuarios deberían poder configurar programas predeterminados solamente a través de la GUI incorporada. Es decir, por diseño, no se supone que pueda establecer controladores predeterminados en un script o mediante programación.

El valor Hash se usa para demostrar que el valor de UserChoice ProgId fue establecido por el usuario y no por ningún otro medio. Esto funciona siempre que Microsoft mantenga el algoritmo que genera el Hash y el mecanismo para verificar el ProgId usando el Hash, un secreto.

En teoria tu podría descubrir el secreto para configurar el Hash (y posiblemente otras configuraciones ocultas del sistema operativo), pero no tendría garantía de su confiabilidad; la próxima actualización de Windows podría romper su método, por ejemplo. Probablemente solo necesite adaptarse al cambio y vivir con el uso de los nuevos métodos que Microsoft incorporó al sistema operativo.

Alguien realizó ingeniería inversa del hash y escribió una herramienta CLI para establecer asociaciones de archivos:

http://kolbi.cz/blog/?p=346

extension = “.txt”; the file extension
sid = “S-1-5-21-463486358-3398762107-1964875780-1001” ; the SID of the current user
progid = “txtfile”; the ProgId of the desired association
regdate = “01d3442a29887400”; timestamp of the UserChoice registry key
experience = “a microsoft secret string”; a static string (this is a dummy example, not the real string
hash = Base64(MicrosoftHash(MD5(toLower(extension, sid, progid, regdate, experience))))

No se revelan todos los detalles, pero probablemente lo suficiente como para aplicar ingeniería inversa al resto.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *