본문 바로가기
빈씨 아재의 이야기 바구니/IT 이야기

John the ripper를 이용하여 압축 파일 비밀번호 알아내기

by vinssy 2022. 3. 20.
반응형

안녕하세요, 빈씨 아재입니다.
예전에는 가끔씩 작성해 놓은 문서들이나 자료들을 백업해 놓으면서 폴더별로 압축하여 보관하는 것이 당연한 시절이 있었습니다. 지금이야 NAS 장비까지 개인이 달아놓고 24시간 토렌트를 돌리는 분들도 많아졌지만, 예전에는 하드디스크 사정이 항상 빡빡해서 압축 보관이 기본이었죠. 그런데, 압축을 할 때 다른 사람이 보면 안 되는 자료는 비밀번호를 걸어 두는 경우가 많습니다. 또는 토렌트 등을 통해서 어둠의 경로로 게임 등을 구할 때도 기껏 느린 다운로드 속도를 참아가며 다 받았는데 패스워드가 걸려 있는 경우가 있습니다. 이런 경우, 전세계적으로 너무나 유명한 해킹툴인데요,

 

John the ripper로 비밀번호를 알아낼 수 있습니다.


비밀번호 찾는 다른 방법은 없을까?

구글에 "압축파일 패스워드 제거하기, 압축파일 비밀번호 찾기" 등의 검색해 보시면

  • 알집 구버전이나
  • 짜투리 등을 이용하라는 글들이 대부분인데,

알집이나 짜투리로는 절대 못 찾습니다. 하루 종일 프로그램 돌려도 시간이 부족해서 안됩니다. John the ripper를 이용하는 것이 가장 쉬운 방법입니다.

반응형

■John the Ripper 소개
좋게 말해서 무료 암호 해독 소프트웨어 도구이고 나쁘게 말해서 해킹툴입니다. 원래 1996년에 Unix 운영 체제용으로 개발된 이 툴은 15개의 다른 플랫폼 용으로 발전했습니다. 제가 IT 기업에 다닐 때는 리눅스 서버에 침입해서 그 서버의 관리자 암호키를 훔쳐서 해독하는 툴 중 하나로 알고 있었는데, 나중에 알고 보니 굉장히 쓰임새가 많더군요.


잡설은 이쯤에서 그만 두고 John the Ripper를 이용한 압축 파일 패스워드 찾기에 대한 설명을 드리겠습니다.

John the ripper 다운로드 사이트

1. John the ripper 다운로드

https://www.openwall.com/john/

 

John the Ripper password cracker

John the Ripper password cracker John the Ripper is an Open Source password security auditing and password recovery tool available for many operating systems. John the Ripper jumbo supports hundreds of hash and cipher types, including for: user passwords o

www.openwall.com

제작자인 OPENWALL의 사이트에서 자신의 운영체제에 맞는 John the ripper 소프트웨어를 다운로드합니다. 붉은 박스를 친 부분이 윈도용입니다. 최신 버전은 1.9.0 버전이고 2019년 이후 업그레이드가 안 되고 있습니다. (아마 더 성능이 좋아지면 법적인 제재가 가해질 수도 있어서 그렇지 않을까요?)


2. 다운받은 John the ripper 압축 풀기

설치 프로그램이 아니라, 커맨드창에서 명령어를 입력하여 사용하는 툴이므로 압축만 푸시면 됩니다.
저는 그냥 D드라이브에 풀었습니다. 이유는 커맨드 창에서 입력을 최소화하기 위해서입니다. (귀차니즘...)

3. 패스워드가 걸린 파일 위치 옮기기

패스워드가 걸려 있는 압축 파일john-1.9.0-jumbo-1-win64 폴더의 하위 폴더인 run 폴더로 이동시킵니다.
이 역시 나중에 커맨드창에서 입력을 최소화하기 위함입니다.

4.커맨드 창 실행 하기

키보드의 "윈도우 로고 키와 알파벳 R"을 눌러서 "실행창"을 열고 "cmd"라고 입력해서 커맨드(cmd) 창을 실행합니다.

5. 커맨드 창에서 패스워드 풀기 작업할 폴더로 이동하기

커맨드창에서 "john-1.9.0-jumbo-1-win64 폴더 > run 폴더"로 이동합니다. 저는 D드라이브로 이동한 후 run 폴더까지 이동했습니다.

6. 아래의 zip2john 파일명.zip hash1.txt 명령어를 입력하고 엔터를 칩니다.

(저는 이미 run 폴더에 hash.txt 파일이 있어서 hash1.txt 파일을 만들었는데, 파일 이름은 그냥 원하는 것으로 하심 됩니다.)

zip2john 파일명.zip > hash1.txt

7. 아래의 john hash1.txt 명령어를 입력하고 엔터를 칩니다.

알파벳과 숫자로 구성되어 있는 7자리의 비밀번호를 찾는데 12분 34초가 걸렸습니다.
만일 비밀번호에 특수문자가 들어가면 찾는 시간이 훨씬 오래 걸립니다. 특수문자 한 개가 들어간 8자리 비밀번호 찾기를 했더니 3시간 정도 걸리더군요. 서버에 있는 비밀번호 라이브러리와 매칭시키는 방식인 듯 한데, 비밀번호가 너무 복잡해서 서버 리스트에 없으면 시간이 엄청 오래 걸릴 수도 있습니다.

john hash1.txt

8. 아래의 john --show hash1.txt 명령어를 입력하고 엔터를 칩니다.

john --show hash1.txt

이렇게 John the ripper 이용하여 압축파일 비밀번호 풀기를 끝냈습니다.

좀 복잡하신 가요? 사실 그렇게 복잡하지 않습니다. 차근차근 해보시면 의외로 쉽습니다.
해외 사이트들이나 유튜브를 찾아보면 유명한 패스워드 라이브러리인 "rockyou.txt"를 Gitbub에서 다운로드하여서 John the ripper에서 같이 찾으면 순식간에 패스워드를 알 수 있다고 하는데, 저는 뭘 잘 못한 건지 에러가 나면서 안되더라고요. 그리고, 압축 파일의 비밀번호가 "roukyou.txt"에 들어있지 않으면, 어차피 위의 방법으로 찾아야 합니다.
혹시 나중에라도 "roukyou.txt"를 제대로 활용하는 방법을 찾으면 추가 포스팅하도록 하겠습니다.

감사합니다~

반응형

댓글