Download File hashes met behulp van Windows PowerShell

Het ophalen van bestandshashes kan heel nuttig zijn. Dit kan bijvoorbeeld worden gebruikt om ervoor te zorgen dat back-upbestanden niet corrupt of gewijzigd zijn (door hashes voor en na het proces te genereren), of om te controleren of niemand met een belangrijk bestand heeft geknoeid.

Je ziet het misschien ook op downloadsites, maar het gebruik daar is beperkt. De reden is simpel: als een aanvaller erin slaagde het downloadbestand te wijzigen, bestaat de kans dat de website ook is gecompromitteerd. In theorie zou dit op zijn minst kunnen betekenen dat de hash die op de site wordt weergegeven, ook is aangepast aan de nieuwe kwaadaardige versie van de download.

We hebben in het verleden een aanzienlijk aantal hashing-gerelateerde programma's bekeken: van de Windows shell-extensie HashTab, via Nirsoft's HashMyFiles tot File Check MD5 en MD5 Check Utility.

Download File hashes met behulp van Windows PowerShell

Als u de hash van een bestand snel op een Windows-machine moet genereren, kunt u daarvoor ook PowerShell gebruiken.

Het is misschien niet zo comfortabel als sommige hashing-programma's die er zijn, maar het is een native implementatie waarvoor geen software van derden nodig is om te werken. Handig in beperkte omgevingen bijvoorbeeld, of wanneer er geen internetverbinding beschikbaar is om deze programma's te downloaden.

Het genereren van hash werd geïntegreerd in PowerShell 4.0. Het is opgenomen in Windows 8.1 en Windows Server 2012 R2 en ook beschikbaar voor Windows 7 Service Pack 1, Windows Server 2012 en Windows Server 2008 R2 Service Pack 1.

  1. Tik op de Windows-toets, typ PowerShell en druk op Enter om deze op te starten.

Het hoofdcommando is get-filehash FILEPATH, bijv. Get-filehash c: \ test.txt .

Get-FileHash gebruikt standaard het Sha256-algoritme. U kunt in plaats daarvan een ander algoritme opgeven met de parameter -Algorithm.

Ondersteund worden: SHA1, SHA256, SHA384, SHA512, MACTripleDES, MD5, RIPEMD160

Merk op dat MD5 en SHA1 niet meer als veilig worden beschouwd, maar nog steeds worden ondersteund.

Dus, om een ​​Sha512-hash te genereren, zou je het commando get-filehash -Algorithm Sha512 c: \ test.txt gebruiken.

U kunt ook -LiteralPath of -InputStream gebruiken in plaats van de standaardpadoptie.

  • LiteralPath: get-filehash -LiteralPath -Algoritme SHA512 c: \ test.txt.
  • InputStream get-filehash -InputStream -Algoritme SHA512 Stream.

Het belangrijkste verschil tussen pad en literalpath is dat literalpath geen jokertekens ondersteunt en precies wordt gebruikt zoals het is getypt.

CertUtil

CertUtil is een ander native Windows-programma dat u kunt gebruiken om hashes van bestanden te berekenen. U kunt het programma uitvoeren vanaf de opdrachtprompt of PowerShell gebruiken.

Het basiscommando is certutil -hashfile PATH, bijvoorbeeld certutil -hashfile c: \ example.txt .

U kunt ook het hash-algoritme opgeven. Ondersteund worden MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512. Het standaardalgoritme is MD5.

Om een ​​ander hash-algoritme te gebruiken, geeft u dit op na de opdracht, bijvoorbeeld certutil -hashfile c: \ example.txt SHA512 .

Slotwoorden

U kunt de opdrachten in scripts gebruiken om hashes voor meerdere bestanden in één bewerking te berekenen. De twee native hulpprogramma's get-filehash en certutil zijn erg handig voor de snelle berekening van hashes op Windows en ook voor scriptgebruik. (via Genbeta (Spaans))