본문 바로가기

Wargame & CTF/Hackerschool FTZ

[해커스쿨] FTZ LEVEL8

[해커스쿨] FTZ LEVEL8 문제 풀이



ㅁ 문제 요약


 문제 유형

System Hacking

 문제 타입

Linux 

 문제 난이도


ㅁ 상세분석


[그림 1] 문제 내용


LEVEL8 계정으로 로그인 하고 hint 파일 내용을 보면 level9 계정의 패스워드를 가지고 있는 shadow 파일이 존재하고 파일 용량은 2700이라고 힌트를 준다. shadow 파일을 찾기 위해서 find 명령어를 사용해서 size 옵션을 주고 용량 2700에 대해서 검색을 진행한다.


[그림 2] find 명령어 결과


find / -size 2700c -exec ls {} \; 2> /dev/null 명령어를 실행하면 수상한 파일(/etc/rc.d/found.txt)을 찾을 수 있다.


[그림 3] found.txt 파일 내용


/etc/rc.d/found.txt 파일을 열어보면 level9 계정 정보 shadow 파일 형식으로 가지고 있다. level9 계정 정보를 갖고 있는 shadow 파일을 크랙해서 패스워드를 획득하면 된다. 문제를 풀기 위해서는 shadow 파일 구조를 이해해야 하는데 빨간색 부분만 살펴보면 된다.


 level9:$1$vkY6sSlG$6RyUXtNMEVGsfY7Xf0wps.:11040:0:99999:7:-1:-1:134549524


빨간색 부분은 $id$salt$value 필드로 이루어져 있는데 첫 번째 id 값은 어떤 해시를 사용해서 암호화를 할 것인지에 대한 정보를 가지고 있다. id 값이 1이면 MD5를 의미한다. 두 번째 $ 뒤에는 salt를 의미하고 세 번째value 필드는 salt + 비밀번호를 조합하여 MD5 해시화한 결과 값이다.


[그림 4] 문제 결과


John the Ripper 도구를 사용해서 패스워드 파일을 크랙을 진행하면 level9 계정의 패스워드를 획득할 수 있다.



'Wargame & CTF > Hackerschool FTZ' 카테고리의 다른 글

[해커스쿨] FTZ LEVEL10  (0) 2015.12.31
[해커스쿨] FTZ LEVEL9  (0) 2015.12.30
[해커스쿨] FTZ LEVEL7  (0) 2015.12.29
[해커스쿨] FTZ LEVEL6  (0) 2015.12.28
[해커스쿨] FTZ LEVEL5  (0) 2015.12.23