보안 공부 회고록

Windows에서 프로그램의 해시값 추출하기 본문

sdc: 그 외 컴퓨터 공학/Windows

Windows에서 프로그램의 해시값 추출하기

김 간장 2024. 1. 7. 15:35

종종 응용프로그램을 다운로드 받은 후 해시값을 추출해야할 때가 있는데, Windows에서 쉽게 추출할 수 있는 방법이 있어서 정리해놓기로 했다.

 

1. cmd를 열어놓는다

(1) cmd를 열고 cd 명령어를 이용해서 해시값을 추출하고 싶은 응용프로그램이 있는 디렉터리로 이동을 해도 좋고,

 

(2) 응용프로그램이 있는 디렉터리에서 cmd를 열어도 좋다.

 

 

2. cetutil 프로그램을 이용해서 해시값을 추출한다

certutil -hashfile [파일명]

 

MD5 해시값이 필요한 SHA1 알고리즘으로 해싱(hasing)된 값이 나와버렸다.

certutil의 기본값이 SHA1이기 때문이다.

 

MD5 해시값이 필요하기 때문에 MD5를 뒤에 적어주자.

certutil -hashfile [파일명] MD5

 

3. 추출한 해시값과 공식 사이트의 해시값을 비교한다

필자는 테스트용도로 Solaris 이미지 파일을 찾고 있었는데

보통은 Oracle 공식 사이트에서 다운로드 받아야 하지만...

Solaris 8이 너무 오래된 버전이라 찾을 수가 없었다. ㅠ

 

그래서 공식 사이트는 아니고... 다른 사이트에서 다운로드를 받았는데 다행히도 해당 사이트에서 MD5 해시값을 제공하고 있었다.

사이트에서 제공하는 체크섬과 추출한 MD5 해시값을 비교해보자면..

 

완벽히 일치한다. 파일이 변조되거나 그런건 없었다.

마지막으로 virustotal에서 검사 한번만 하고 설치를 진행해야겠다.

 


 

해시값을 확인하는 이유는 파일의 무결성을 검증하기 위해서이다.

만약 해시값이 일치하지 않는다면 파일이 변조되었다는 것을 의미한다.

 

p.s. 참고로 리눅스는 md5sum와 sha1sum 혹은 chsum을 이용하면 해시값을 검할 수 있다.