리눅스/FTZ
level2
mewonsv
2020. 10. 2. 04:47
level2는 vi 편집기를 일정 수준 다루어야 수월하게 풀어갈 수 있어 보입니다.
역시 level2에서도 ls명령어로 hint 파일을 확인합니다.
hint 파일을 확인해보니 vi 편집기 사용 중 쉘 명령을 실행할 수 있다고 합니다.
우선 level1에서 사용했었던 find 명령으로 setuid가 걸려있는 파일을 찾아보겠습니다.
find 명령과 옵션들을 사용해서 /usr/bin/editor 이란 파일이 나왔습니다.
ls 명령으로 확인을 해보니 level3는 setuid가 걸려있습니다. (-rws)
editor를 실행시켜 보고 싶습니다.
editor 파일을 실행해보고 hint에서 "텍스트 파일 편집중 쉘 명령어를 사용할 수 있다" 라고 했었습니다.
id 명령을 통해서 권한을 확인해보겠습니다.
(vi 편집 모드 중 느낌표 사용 시 리눅스 명령어 사용이 가능합니다.)
editor에서 실행한 id명령과 level2에서 실행한 id명령에 차이가 보입니다.
uid는 level3 이지만 gid가 level2의 권한을 가지고 있어 level2에서 실행 가능합니다.
editor에서 my-pass명령을 사용해보겠습니다.
찾고자 하는 비밀번호를 얻었습니다.
쉘 실행 명령도 사용해보겠습니다.
쉘 실행 명령 사용후엔 my-pass 앞에는 느낌표를 붙일 필요 없이 결과가 출력됩니다.
쉘 실행명령은 bash, sh 명령이 있습니다.
쉘을 마치고 싶으면 exit 명령을 사용합니다.