Programsız bir dosyanın HASH değerlerini bulalım


Program kulanmadan dosya hash değeri bulma
Bir dosyanın Hash değeri genellikle o dosyaya ait MD5, SHA-1, yada SHA-256 değerleridir bunların ne işe yaradığını önceki yazılarımızda açıklamıştık , kısaca özetlersek bir dosyanın Orjinallliğini onaylar mesela


download ederken veya yedeklerken dosya bozulmaya uğramışmıdır bu değerleri kontrol ederek anlayabiliriz eğer deperler bire bir uyuşmuyorsa dosyaya müdahale olmuş , değşime uğramış veya bozulmuştur , İndirme (Download) sitelerinde bolca gördüğümüz bu hash değerlerini tespit etmek için genellikle üçüncü parti yazılımlardan faydalanılır ayrıntılı bilgi için Bakınız

Oysa Powershell ile hiçbir yazılım kullanmadan bir dosyanın HASH değerlerini bulabiliriz. genellikle internetin olmadığı yani herhangi bir hash okuyucu yazılımı indirme şansımızın bulunmadığı ve HASH değerlerini gerekli olduğu durumlarda işimize yarayacaktır. PowerShell 4.0 a HASH okuma özelliği ilave edildiğinden bulunduğu işletim sistemlerinde bu özellik kullanılabilir mesela ; Windows 7 Sp1 , Windows 8.1 , Windows Server 2012 R2 … gelelim nasıl kullanılacağına ;

Powershell konsolunu açalım ve komut olarak “get-filehash FILEPATH” şeklinde kullanalım FILEPATH = Dosya Yoludur , örnek vermek gerekirse – C dizinimde “NetDisabler.exe” isimli dosyanın SHA – 256 değerini bulmak istiyorsam aşağıdaki kodu kullanmam gerekir:

get-filehash C:\NetDisabler.exe

Neticede karşıma aşağıdaki gibi bir ekran gelecektir

powershell ile hash değeri bulma

Get-FileHash yöntemi varsayılan olarak Sha256 değerini kullanır , fakat parametre kullanırsak şu değerlerid e elde edebiliriz – SHA1, SHA256, SHA384, SHA512, MACTripleDES, MD5, RIPEMD160 , artık MD5 ve SHA1 güvenli sayılmamasına rağmen yinede desteklendiğini görüyoruz. Eğer SHA 512 değerini bulacaksak bu durumda aşağıdaki kodlardan birini kullanmam gerekir

get-filehash -Algorithm Sha512 C:\NetDisabler.exe
get-filehash -LiteralPath -Algorithm SHA512 C:\NetDisabler.exe
get-filehash -InputStream -Algorithm SHA512 C:\NetDisabler.exe

CertUtil komutu ile dosya HASH değerini bulalım

CertUtil diğer bir windows yardımcı programı olup KOmut isteminden veya Powershell den dosya HASH değerlerini bulmamıza yardımcı olmaktadır , “certutil -hashfile PATH” şeklinde kullanılır mesela üstteki örneğe dönersek aşağıdaki şekilde kullanılır

certutil -hashfile c:\NetDisabler.exe

MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512 değerlerini desteklemesine rağmen varsayılan olarak SHA-1 değerini vermektedir

certutil ile hash bulmak

Aşağıdaki şekilde kullanılırsa SHA512 değerini verecektir.

certutil -hashfile c:\NetDisabler.exe SHA512

Aşağıda üstteki komutun Cmd (Komut istemi) den çalıştırıldığında verdiği çıktıyı görüyorsunuz.

certutil cmd komutu

Görüldüğü üzere windowsun kendi araçlarıyla bir dosyanın hash değerleri kolaylıkla elde edilebilmektedir.


2 Yorum Var

Yorum Ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Captcha