이번에 풀어볼 문제는 HackerSchoolFTZ Level 7 입니다.
이번 문제는 2진수와 10진수에 대한 개념을 알고 있으면 쉽게 풀수 있습니다.
Level 7 Write-Up
level7 계정 접속 후 힌트를 봅니다.
$ cat hint
cat hint
level7 파일은 level8 권한으로 setuid가 걸려있습니다.
$ls -la /bin/level7
ls -la /bin/level7
level7 명령을 실행하니 패스워드를 입력을 요구하고 패스워드가 틀리면 암호가 출력됩니다.
$ level7
run level7
--_--_- --____- ---_-__ --__-_-
패스워드가 틀릴시 출력되는 암호문의 ‘-‘ 문자를 1, ‘_’ 문자를 0으로 각각 치환합니다.
1101101 1100001 1110100 1100101
해당 문자를 10진수로 변환한 뒤 ascii 캐릭터로 변환하면 ‘mate’ 라는 문자가 나옵니다. bin to chr
level7 명령어 실행후 ‘mate’를 입력해주면 level8 계정의 패스워드가 출력됩니다.
$ level7
Insert The Password: mate
insert password
level8 계정의 비밀번호 break the world
를 획득했습니다.
index.html
FTZ를 가상머신으로 직접 돌릴 경우 wrong.txt 파일이 없다는 문구가 나올 수 있습니다 index.html 내용만 보고 한참을 삽질한것 같습니다.
$ cat index.html
index.html