Level 1
login as: level1
level1@ftz.hackerschool.org's password: level1
우선, level1 안에 어떤 파일들이 있는지 알아보자.
ls 명령으로 찾아보니 hint 라는 파일이 눈에 띈다. cat 명령을 이용하여 hint 파일을 열어보자.
'level2 권한에 setuid 가 걸린 파일을 찾는다.' 라는 힌트가 적혀있다.
trainer 10에 find 옵션에 대해 설명되어 있는데, 그 find 명령을 사용하면 바로 파일을 찾을 수 있다.
《trainer 10 》
♤ find 옵션 (조합하여 동시에 사용할 수 있음)
-perm : 권한과 일치하는 파일을 찾는다.
-name : 이름과 일치하는 파일을 찾는다.
-user : 사용자와 일치하는 파일을 찾는다.
-group : 그룹과 일치하는 파일을 찾는다.
우선 사용자는 level 2 이고, SetUID 는 4, 읽고 쓰고 실행할 수 있는 권한은 000 이므로 이렇게 쓸 수 있다.
find / -user level2 -perm 4000
저 명령을 치면 Permission denied 라며 권한이 거부된 파일들이 계속 출력된다. 쭉 내려가다 보면 아래 사진과 같이 아무것도 걸려있지 않은 /bin/ExcuteMe 라는 파일을 발견하게 된다. 나머지 파일들은 권한이 거부되었으므로 건드릴 수 없지만 이 파일은 우리가 실행할 수 있는 파일이라는 것이다. 이 파일을 이용하여 level2의 패스워드를 알아낼 수 있을 것이다.
이제 이 파일을 실행해보자. bin은 디렉토리, ExcuteMe는 실행파일일 것이다. 우선 bin 디렉토리로 이동하여 ExcuteMe를 실행하여 보자.
bin 디렉토리로 이동 후 ExcuteMe라는 파일이 있는지 확인해 보았더니 있다. 실행을 시켜보았더니 다음과 같은 창이 떴다. 사용자도 level1에서 level2로 이동되었다.
본래 패스워드를 알아내려면 my-pass 명령을 이용하여 알아내야 하는데 조건에서 my-pass는 실행시킬 수 없다고 하니 /bin/bash 폴더로 이동을 하여 my-pass를 실행시키면 패스워드를 알아낼 수 있을 것 같다.
/bin/bash 폴더로 이동 후 my-pass 명령을 실행시켰더니 밑의 사진과 같이 level2의 패스워드를 알려주었다.
'SISS > FTZ' 카테고리의 다른 글
Level 3 (0) | 2018.03.12 |
---|---|
Level 2 (0) | 2018.02.17 |
FTZ Trainer 8 - 10 (0) | 2018.02.10 |
FTZ Trainer 6, 7 (0) | 2018.02.10 |
FTZ Trainer 3 - 5 (0) | 2018.02.08 |