Archivo de Registro de Windows editado con dos herramientas diferentes, resultados diferentes

Archivo de Registro de Windows editado con dos herramientas diferentes, resultados diferentes

Estoy probando dos herramientas diferentes para editar y eliminar todos los nodos de una sección del registro de Windows:

  • chntpwque fue diseñado esencialmente para editar archivos de contraseñas (SAM), pero ahora tiene un shell interactivo para editar archivos de registro.

  • hivexque es más actualizado y está destinado principalmente a la edición del registro de propósito general.

Sólo para tener una idea de las diferencias entre estos programas, tomé mi archivo BCD (que usa el Administrador de arranque de Windows) y usé ambos programas para eliminar todos los nodos.

Como era de esperar, los archivos resultantes tienen el mismo tamaño pero no son idénticos. Cuando abrí cada uno con hivexo chntpw, ambos editores muestran 0 nodos para ambos archivos.

Sin embargo, cuando abro hivexel archivo de , un archivo que supuestamente tiene 0 nodos, veo datos sobrantes de su estado anterior.

Por el contrario, chntpwel resultado de no tiene datos residuales de los nodos.

Ahora, me estoy informando sobre el formato del archivo de registro, por lo que debo preguntar:

Si tuviera que utilizar uno, ¿cuál debería elegir? Obviamente quiero simular el comportamiento del analizador/escritor de Microsoft de la manera más realista (quiero poder engañarlos). Los datos sobrantes también tienen algún significado; ¿El Administrador de arranque de Windows daría algún error si lo uso hivexpara crear un archivo BCD falso?

PD: La pregunta es independiente de mi propósito principal, que espero haya quedado claro: quiero arreglar/crear el archivo BCD (Datos de configuración de arranque) sin usar el instalador oficial de Windows. Así que si tienes algún consejo en esa dirección, no dudes en darlo.

Respuesta1

Hivex está diseñado explícitamente para no eliminar datos antiguos del archivo. Este es un objetivo importante porque el formato de la sección del registro no está documentado y nadie, excepto MSFT, entiende realmente cómo funciona, y no queremos destruir datos en el proceso de realizar cambios.

Tenga en cuenta que esto nonosignifica que hivex no puede eliminar nodos. Puede eliminar nodos a través de la API y esos nodos no serán vistos por las llamadas regulares al registro de Windows, pero no se borran/eliminan/truncan datos del archivo subyacente.

Si desea un archivo de colmena vacío, le sugiero comenzar con un archivo de colmena vacío. Hay un archivo de colmena vacío en el código fuente de Hivex (llamado "mínimo") que puede utilizar.

información relacionada