Realizando hash con PowerShell

En este post veremos cómo realizar un hash de un fichero mediante PowerShell.

Desde hace un par de versiones, PowerShell dispone de un cmdlet que nos permite realizar un hash de un fichero de manera sencilla y rápida.

Este cmdlet se llama Get-FileHash, este realizará un hash de un archivo para un algoritmo de hash concreto. Un hash se puede ver como un identificador único el cual corresponde al contenido de los datos de los que vamos a realizar el hash

El propósito de realizar un hash es proporcionar una forma criptográficamente segura para verificar que el contenido de un archivo o un conjunto de datos no haya cambiado. Si bien algunos algoritmos hash, incluidos MD5 y SHA1, ya no se consideran seguros contra ataques de fuerza bruta. 

Según la documentación de Microsoft  podemos realizar un hash de un fichero, una cadena o de un flujo de datos entrante (stream). La sintaxis es la siguiente:

Get-FileHash
[-Path] <String[]>
[[-Algorithm] <String>]
[<CommonParameters>]

Además, como estrada de datos también podemos utilizar las siguientes opciones de sintaxis:
[-LiteralPath] <String[]>
[-InputStream] <Stream>

Los algoritmos soportados son los siguientes: 
  • SHA1
  • SHA256
  • SHA384
  • SHA512
  • MD5
Por defecto, si no indicamos nada, el cmdlet utilizará SHA256.

Sabiendo todo esto, vamos a realizar alguna que otra prueba:



Como podemos observar, se puede realizar un hash del contenido de un fichero de una manera muy fácil y sencilla.

Aquí tenéis la página de la documentación.

Comentarios

Entradas populares de este blog

Cracking hashes con Hashcat - 4

Cracking hashes con Hashcat - 2