본문 바로가기
linux

/etc/shadow ,존더 리퍼 [ John the Ripper ]

by 상레알 2010. 12. 15.

원문 : http://blog.pages.kr/518
         어떤 문서도 같이 봣는대..로컬이 잇던거라 -_-;;


/etc/shadow

username:passwd:lastchg:min:max:warn:inactive:expire

1) username : 2자에서 8자의 문자로 구성되며 숫자와 조합할 수 있다. 주의 할것은 username에는 underline 과 space 문자는 사용될 수 없다.
2) passwd :  암호는 암호화 되어 들어간다.
3) lastchg : 1970년 1월 1일 부터 마지막으로 암호를 수정한 날짜까지의 날수
4) min : 암호의 수정을 해야 하는 가장 적은 날 수 범위
5) max : 암호의 수정을 해야 하는 가장 많은 날 수 범위
6) warm : 암호를 바꿔야 한다는 경고 메시지를 몇일 전에 user에게 알려 주는 날수의 범위
7) inactive : 사용자 계정이 닫히기 전 활성화 할 수 있는 날 수
8) expire : 사용자 계정이 만료될 때까지의 정확한 날짜 수


여기서 max와 wam 필드에 알맞은 수를 넣으면..
ex)  user1:password:11254:1:2:1:::
이러면 암호는 1일 전에 바꿀 수 없으며 반듯이 2일 전에는 바꿔야 한다는 뜻이고 1일 전부터 2일 까지 경고 메시지를 user에게 보내주라는 뜻입니다.
메시지에 대한 내용은
- 로그인을 하면 
     Your password will expore in 2 days"
- 패스워드를 1일 전에 바꾸려고 하면
     "Passwd(SYSTEM):Sorry:less than 1 day since the last change (권한이 거부됨)
- 2일이 지나서 로그인을 하면
     "Choose a new password"
     "Enterlogin password"
     "new password"


- 존더리퍼 -

존더리퍼는 Solar Designer가 개발한 Unix 계열 password crack tool 이다..
무료 도구이며, UNIX 계열 크래킹 도구 이지만 DOS, Win9x,nt 200 등의 플랫폼도 지원한다.

속도를 높이기 위해 Intel MMX 기술이나 AMD K6 프로세서의 특수기능들을 이용한 최적화된 코드를 집어 넣기도 하였다.

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


2. 패스워드 파일

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

level9:$1$vkY6sSlG$6RyUXtNMEVGsfY7Xf0wps.:11040:0:99999:7:-1:-1:134549524
(해커스쿨 레벨8의 레벨9의 패스워드)

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

3. 크래킹 과정( win 용)

리눅스에서 얻어낸 shadow 파일을 윈도우즈로 복사해 존더 리퍼의 압축을 해제한 폴더 안의 run에 넣는다.
command창을 실행 시킨 후 shadow 파일을 윈도우즈로 복사해 존더리퍼의 압축을 해제한 폴더 안의 run 폴 
 더에 넣는다.

ex)
c:\jojn1701\run> john-mmx pass.txt
c:\jojn1701\run> john-mmx -showpass.txt