출처 : 대전국제IT교육센터 정성재 강사
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/ 이다.
2.
John The Ripper 설치하기
(1) http://www.openwall.com/john/ 에서 John the
Ripper를 다운받아 /usr/local/src 디렉토리에
위치시킨다.
[root@mybestone src]#
ls
john-1.6.tar.gz
(2) 압축을 푼다.
[root@mybestone src]# tar xvfz
john-1.6.tar.gz
(3) 압축이 풀려진 디렉토리를 이동한다.
[root@mybestone src]# cd
john-1.6
(4) src 디렉토리로 이동한다.
[root@mybestone john-1.6]# cd src
(5)
make를 하여 지원되는 시스템을 확인한다.
[root@mybestone src]# make
To build John
the Ripper, type:
make SYSTEM
where SYSTEM can be one of the
following:
linux-x86-any-elf Linux, x86, ELF binaries
linux-x86-mmx-elf Linux, x86 with MMX, ELF binaries
linux-x86-k6-elf Linux, AMD K6, ELF binaries
linux-x86-any-a.out Linux, x86, a.out binaries
linux-alpha Linux, Alpha
linux-sparc Linux,
SPARC
freebsd-x86-any-a.out FreeBSD, x86, a.out binaries
freebsd-x86-k6-a.out FreeBSD, AMD K6, a.out binaries
freebsd-x86-any-elf FreeBSD, x86, ELF binaries
freebsd-x86-mmx-elf FreeBSD, x86 with MMX, ELF binaries
freebsd-x86-k6-elf FreeBSD, AMD K6, ELF binaries
openbsd-x86-any OpenBSD, x86
openbsd-x86-k6 OpenBSD,
AMD K6
solaris-sparc-gcc Solaris, SPARC, gcc
solaris-sparc-v8-cc Solaris, SPARC V8, cc
solaris-sparc-v9-cc
Solaris, SPARC V9, cc
solaris-x86-any Solaris, x86, gcc
solaris-x86-k6 Solaris, AMD K6, gcc
digital-alpha-cc
Digital UNIX, Alpha, cc
aix-ppc-cc AIX, PowerPC, cc
hpux-pa-risc-gcc HP-UX, PA-RISC, gcc
hpux-pa-risc-cc
HP-UX, PA-RISC, cc
irix-mips32-cc IRIX, MIPS 32-bit, cc
irix-mips64-cc IRIX, MIPS 64-bit, cc
dos-djgpp-x86-any
DOS, DJGPP 2.x, x86
dos-djgpp-x86-mmx DOS, DJGPP 2.x, x86 with
MMX
dos-djgpp-x86-k6 DOS, DJGPP 2.x, AMD K6
win32-cygwin-x86-any Win32, Cygwin, x86
win32-cygwin-x86-mmx
Win32, Cygwin, x86 with MMX
win32-cygwin-x86-k6 Win32, Cygwin, AMD
K6
generic
=> 위의 목록에서 현재 사용중인 시스템에 맞는 정보를 선택하고 컴파일한다. 만약 자기 시스템
이 리스트에 없으면 make generic 명령어를 실행하면 된다.
(6) 현재 시스템에 맞는 모델을 선택하고
컴파일한다.
[root@mybestone src]# make linux-x86-mmx-elf
=> 인텔계열시스템의
예이고 목록에 없으면 make generic이라고 한다.
3. John The Ripper 설치후
디렉토리
(1) 설명: John The Ripper를 설치하면 3개의 디렉토리와 1개의 파일이 생성된다.
(2)
목록
1) README: John The Ripper에 대한 간단한 설명, 설치법, 사용법등이 적혀있는 파일이다.
2)
doc: John The Ripper에 대한 전반적인 문서들이 들어있는 파일이다.
3) run: 실행관련파일들이 들어있으며
패스워드크랙을 위한 목록파일인 password.lst파일이 있다.
4) src: 컴파일을 위한
소스파일이다.
4. John The Ripper 실행하기
(1) 실행파일이
있는 run디렉토리로 이동한다. (/usr/local/john-1.6/run)
[root@mybestone src]# cd
../run
(2) 패스워드파일인 /etc/shadow 파일에 다음과 같이 실행한다.
[root@mybestone
run]#./john /etc/shadow
Loaded 26 passwords with 26 different salts
(FreeBSD MD5 [32/32])
1234 (test)
=> test사용자의
passwd는 1234임을 알 수 있다.
(3) 작동법
패스워드크랙을 실행하면 password.lst라는 파일에 있는 목록을
비교하여 단어 하나하나를 암호화
하여 /etc/shadow파일과 같은 것이 있는 지를 검사한다. 만약같은 파일이 있으면 화면에
출력해주
고 변환된 것도 john.pot라는 파일에 저장한다.
예) [root@mybestone run]# cat
john.pot
$1$oWB3dUsn$pntvPIyUdLNIszwib7cbz1:1234
$1$72QAnZFv$wQI5EDufaHMNDIOpJw/y21:1234
$1$LY6uT14M$1GPUH4nx60XZ6Yjtum99h1:1234
$1$bItzCQK6$9qMkCzN4XfwrOdAy3ckoO0:1234
$1$gJLIqp0E$NHKHX2do36cZ4/9L3UzWk1:1234
$1$T59dStp2$7mfaOkb4XgH9vm9e5XmY1.:1234
$1$i5bopIh3$anTlfv7SU9uEyNC9TV/Oc0:1234
$1$vs4NjZVv$OQpQhZOg6Lc5aGQ35nnbp0:1234
$1$o8RHfrJ4$VsiRijJ1ld0/UB3Zlb.m3.:1234
$1$0CAxOZyw$oJv9AJYMi1sAzNWps8E8D1:1234