1. 존 더 리퍼(John the Ripper)

John the Ripper는 Solar Designer가 개발한 Unix계열 password crack tool이다. 무료 도구이며, UNIX계열 크래킹도구이지만 DOS, Win9x, NT, 2000 등의 플랫폼도 지원한다. 속도를 높이기 위해 Intel MMX기술이나 AMD K6 프로세서의 특수 기능들을 이용한 최적화된 코드를 집어넣기도 하였다.

http://www.openwall.com/john/ 에서 개발버전, 안정버전, linux용, windows용 등을 다운 받을 수 있다.

(지금 게시물에서는 리눅스용을 실제 설치해보거나 해독해본 경험이 없어서 아래 설명하는 부분은 windows용으 로 하겠다_1.7.1버전을 이용하였다_)


2. 패스워드 파일

존더리퍼를 이용하려면 리눅스의 /etc/shadow와 같은 패스워드 파일이 있어야 한다. /etc/shadow 파일의 일부를 보면 다음과 같이 생겼음을 알 수 있다.

level9:$1$vkY6sSlG$6RyUXtNMEVGsfY7Xf0wps.:11040:0:99999:7:-1:-1:134549524
(해커스쿨 레벨8에서 보여주는 레벨9의 패스워드 정보가 있는 부분이다)

콜론(:)으로 각 필드를 구분해 주며 색칠된 부분이 레벨9의 패스워드가 암호화된 부분이다. 바로 이부분을 존더리퍼가 해독하여 패스워드를 보여주는 것이다.


3. 크래킹 과정(Windows용)
우리는 widndows용으로 크래킹을 할 것이므로 리눅스에서 얻어낸 shadow파일을 윈도우즈로 복사해존더리퍼의 압축을 해제한 폴더 안의 run폴더로 붙인다.

command창을 실행시킨 후 shawdow파일을 붙여넣은 run폴더로 들어간다.
(예제에서는 shadow파일을 windows로 복사할 때 11.txt라는 파일로 저장하였다.)

C:\john1701\run>john-mmx 11.txt

C:\john1701\run>john-mmx --show 11.txt
(-show는 크래킹된 패스워드를 보여주라는 옵션이다)

위 명령을 각기 실행한 모습이다. 해당 계정의 패스워드가 크래킹되어 화면에 출력되는 것을 볼 수 있다.

사용자 삽입 이미지


4. 참고
한개의 패스워드 파일을 크래킹하면 john.pot라는 파일이 생성된다. 이 파일에는 크랙된 패스워드가 저장이 되는데, 한번 크래킹한 후 다른 파일을 크래킹 하기위해서는 이 파일을 삭제해주어야 한다.

다음과 같이리다이액션을 이용하여 크랙된 패스워드를 다른파일로 저장할 수 있다.
C:\john1701\run>john-mmx -show 11.txt > 1.txt
(john-mmx -show 11.txt 했을 때 화면에 출력되는 내용이 1.txt에 저장된다)

Posted by skensita