FTZ Level1 Write-up(FTZ Level1 풀이)
안녕하세요.
오늘은 Hackschool의 FTZ Write-up에 대한 포스팅을 하도록 하겠습니다.
FTZ 구축 방법 및 Encoding에 관련된 글로는 다른 포스팅이 많으므로 생략하겠습니다.
3
우선 제일먼저 hint를 보도록 하겠습니다.
$ cat hint
그러면 setuid가 걸린 파일을 찾도록 되어있네요.
찾는 명령어는 find명령어가 필요합니다. 그렇다면 find 명령어의 옵션을 통해 level2가 소유하고있는 setuid파일을 찾도록 해야겠군요.
$ find / -perm -4000 -user level2
find(명령어) /(경로 여기서는 root 디렉토리) -perm(특정 Permission을 찾는 명령어) -4000( setuid가 설정되면 Permission은 4000이상으로 설정 됨 ' - '는 최소의 의미, 반대로 ' + '는 권한을 모두 만족해야함) -user(특정 user가 소유한 것을 찾는 옵션) level2
보면 눈에 띄는 파일이 있네요 저걸 실행해보도록 할까요?
$ /bin/ExecuteMe
그럼 위와 같이 나오네요. 여기서 조금 고민 했습니다. 처음에는 current passwd를 적는것을 잊고, 패스워드를 임의로 바꾸기 위해서 passwd명령어를 시도해보았는데 바보같았네요.
그럼 어떤 방법이 있을 까요?
$ /bin/bash
위의 명령어로 level2의 bash쉘을 실행시켜 줍니다! 그러면 level2의 프롬포트가 떨어지겠네요!
그리고 아래의 명령어로 다시 비밀번호를 확인하면..!
$ my-pass
짜잔~ Level1을 클리어하셨습니다. 그럼 저 비밀번호를 통해 level2를 진행해보도록 하죠!