Verificar hash desde PowerShell

Iniciado por ze0rX, Junio 16, 2024, 03:38:58 AM

Tema anterior - Siguiente tema

0 Miembros y 2 Visitantes están viendo este tema.

Hola Underc0der's!!

Veamos como podemos verificar la integridad de un archivo o la firma o clave en base a la función especificada de un archivo.

Para este ejemplo vamos a usar una archivo ejecutable para windows donde la firma es un algoritmo MD5 que es un protocolo criptográfico.

 MD5 (Message Digest Algorithm) = Algoritmo de Resumen del Mensaje

Abrimos nuestro PowerShell y haremos uso del cmdlet Get-FileHash para verificar la integridad o el contenido de un archivo.

Mi archivo se llama Snort_2_9_20_Installer.x64.exe y para verificar su descargar usaremos la que nos indica el fabricante: af994274e16f61cf29b5195ffc10b3cf

Dentro de PowerShell la forma mas simple de extraer o calcular el valor del hash es con el comando:

        ~> Get-FileHash Snort_2_9_20_Installer.x64.exe | Format-List

Lo que nos dará el siguiente resultado:

Algorithm : SHA256
Hash      : 68F1942D4944FE8D131E1B59D4998757DE33A64632FAAD8F852EEC356DF4ECE6
Path      : C:\tmp\Snort_2_9_20_Installer.x64.exe

Como ven nos dio el resultado predeterminado de una función en base al algoritmo SHA256, la que requerimos para validar la integridad del archivo es el algoritmo MD5 y lo haremos mediante el el parámetro Algorithm

        ~> Get-FileHash -Algorithm MD5 Snort_2_9_20_Installer.x64.exe | Format-List

Algorithm : MD5
Hash      : AF994274E16F61CF29B5195FFC10B3CF
Path      : C:\tmp\Snort_2_9_20_Installer.x64.exe

De esta manera con un par de comandos podemos usar PowerShell para verificar la integridad de nuestras descargas utilizando el algoritmo especificado.
Ahora para comprobar la cadena de texto desde PowerShell pondremos un signo de $ y enseguida la cadena que queremos comparar, por ejemplo la firma que tenemos $af994274e16f61cf29b5195ffc10b3cf después de un espacio pondremos el operador -eq que nos dará como resultado True o False según sea el caso, terminaremos de completar nuestro comando con el signo $ y la salida que nos dio PowerShell al calcular el algoritmo MD5 $AF994274E16F61CF29B5195FFC10B3CF, al final quedaría así:

           ~> $af994274e16f61cf29b5195ffc10b3cf -eq $AF994274E16F61CF29B5195FFC10B3CF

Lo cual nos da como resultado True.

Utilizando el parámetro -Algorithm podemos calcular los algoritmos MD5, SHA1, SHA256, SHA384, SHA512
Si quieres profundizar mas en su funcionalidad completa te dejo el enlace a la documentación oficial de Microsoft.

No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Saludos Underc0der's
Hail Underc0de!
 
T0d0s//l0s//d14s//t3n3m0s//L4//Op0rtun1d4d//D3//4pr3nd3R//aLg0||nu3v0!!
h4zL0#P0s1bL3...