Cha4SEr Security Study

[FTZ-Level2] 풀이 본문

System/FTZ

[FTZ-Level2] 풀이

Cha4SEr 2019. 12. 22. 23:38

ID : level2

PW : hacker or cracker

 

level1과 마찬가지로 우선 힌트가 걸려있는 파일이 있는지 보기 위해 ls 명령어를 실행 후 hint 파일을 실행한다.

 

[그림 1]

텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다 라는 힌트가 주어졌다. 

이것 만으로는 문제를 풀 수 없기 때문에 level1에서 했던 find 명령을 똑같이 해보았따.

 

 

[그림 2]

find 명령을 해보니 /usr/bin 폴더에 editor라는 파일이 나왔다. 

bin 폴더로 들어가 해당 파일을 확인해 보자!

 

[그림 3]

역시 마찬가지로 level3의 SetUID가 걸려있으며 level2의 권한으로는 실행 시킬 수 있다. 

실행시켜보자

[그림 4]

 

VI 에디터가 나왔다!

여기서 잠깐, 위에 hint파일을 다시 읽어보면 "텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다" 라고 한다.

 

이때 말하는 텍스트 파일 편집은 이 VI 에디터를 말하는것 같고 나는 현재 level3의 SetUID가 걸린

editor 파일을 실행했기 때문에 일시적으로 level 3의 권한을 얻은 상태이다.

 

그러면 텍스트 파일에서 비밀번호를 얻는 "my-pass" 명령을 실행하면 level3의 비밀번호가 나오지 않을까?!

 

VI 에디터의 명령모드에서 ":"을 사용하면 각종 명령어를 입력할 수 있으며

"!" 는 외부의 쉘을 실행시켜주는 명령어이다.

 

즉 명령모드에서 :!"~~~" 라고 해주면 외부 명령 "~~~"을 실행시켜주는다는 뜻이다. 

우리가 필요한 명령은 my-pass 이기 때문에 :!my-pass 라고 입력해보자!

 

[그림 5]

쨘 역시나 level3의 비밀번호가 나왔다!

(지속적으로 level3의 권한을 얻으려면 :!/bin/bash 를 한 후 my-pass를 입력하면 된다)

 

 

★ 요약 

 

-  level3의 SetUID가 걸린 파일검색

    ->  find / -user level2 -perm -4000 2> /dev/null

-  VI 에디터에서 외부 명령 실행

    ->  :!"~~" (""는 생략하고 입력해야함)

 

 

이로써 FTZ Level2를 다 풀었따!

'System > FTZ' 카테고리의 다른 글

[FTZ-Level6] 풀이  (0) 2019.12.28
[FTZ-Level5] 풀이  (1) 2019.12.26
[FTZ-Level4] 풀이  (0) 2019.12.23
[FTZ-Level3] 풀이  (0) 2019.12.23
[FTZ-Level1] 풀이  (0) 2019.12.22
Comments