ctf-d 당신의 친구 Bob은 모의해킹 전문가이다.

2021. 2. 6. 15:09ctf-d

이번에 풀 문제다. find-the-idiot.zip 파일을 준다 파일을 열어보도록 하자. 

 

관리자 권한으로 압축을 해제하면 리눅스 파일 형식들이 있다. 

 

그중 의심되는 파일은 이 두가지다. passwd 내용과 shadow가 담겨져있다. 

 

기본적으로 리눅스에서 passwd 파일을 읽을때는 아래와 같이 해석해야한다고 한다. 

root : x : 0 : 0 : root : /root : /bin/bash

1     2    3   4    5      6         7    8

 

1. 사용자 계정

2. 사용자 패스워드(암호화된 파일은 etx/shadow 에 저장됨)

3. 사용자 id 를 의미하며 root 일경우 0

4. 사용자가 속한 그룹 id를 의미

5. 사용자의 코멘트 정보

6. 사용자의 홈 디렉토리

7. 사용자가 기본으로 사용하는 쉘 종류 지정

 

================================================================

 

shadow 파일을 읽을때는 아래와 같이 해석한다. 

 

root : $6$PBY4XOYn$JJOSF.0aOqVNd/yqQ4jdLLAmgXCe6RNekSv6JmOenId3z0xkR/u72M2TFhpGO8.Y0IyHiZuB50WlIxm

  1                 2 

ONz/KZ. : 16816 : 0 : 99999 : 7 :   :    : 

                 3      4     5      6   7  8   9

 

1. 사용자 계정

2. 패스워드를 암호화 시킨 값(비어있으면 패스워드 필요 없음, * 이면 계정 막아둠)

3. 1970년 부터 1월 1일부터 패스워드가 수정된 날짜의 일수를 계산한 값

4. 패스워드가 변경되기 전 최소사용기간

5. 패스워드 변경 전 최대사용기간

6. 패스워드 사용 만기일 전에 경고 메세지를 제공하는 일수

7. 로그인 접속 차단 일 수

8. 로그인 사용을 금지하는 일 수(월/일/연도)

9. 예약 필드로 사용되지 않음 

 

                  -출저-  blog.naver.com/PostView.nhn?blogId=koromoon&logNo=220611830118

 

리눅스 passwd 와 shadow 파일 구조

( 1 ) /etc/passwd 파일 구조 < passwd 파일 > root : x : 0 : 0 : root : /root : /bin/bash 1 2 3 ...

blog.naver.com

이것을 보고 다시 본다면 숨겨진 패스워드를 찾는것이다. 

 

본래 리눅스에서 풀어야 마땅한 문제이지만 윈도우에서 john the ripper를 사용해보고 싶어서 

윈도우로 실행하게 되었다.

 

그냥 메모장에다가 shadow 와 passwd 의 내용을 복붙해서 돌려주었다

dragon1 이 아이디인것 같고 gohan이 passwd인거 같다.  둘중 하나가 정답이다 ㅎ

 

개인적으로 리눅스로도 써보고 윈도우로도 john the ripper를 써봤는데 또이또이인것같다.