로그인한 뒤 hint 파일을 열어본다.

꽤 여러 가지가 써져 있다. 상상력을 총동원하라고 나오고, 진수 변환 관련도 언급된다.
계산기 설정을 공학용으로 바꾸라는 건 아직 잘 모르겠다. 수학 관련 문제인가?

일단 setuid를 찾아보니 bin 경로 안에 파일이 하나 나온다.

파일 정보를 확인해 보니 실행 권한이 있길래 한 번 실행해 본다.

될리는 없겠지만 7의 비밀번호를 한 번 넣어본다. 역시 안 된다.
wrong.txt 파일이란 게 없다고 뜬다.

근데 bin 디렉터리 안엔 wrong.txt란 파일이 없다. 만들어줘야 하는 건가?

그러나 나한테는 쓰기 권한이 없다. 그렇지만 일단 해 볼 수 있는 게 별로 없으므로 시도는 해 본다.

역시나 안 된다. 해당 오류는 파일을 쓸 권한이 없을 때 뜨는 오류다.

당연하겠지만 권한이 없으니 다른 곳으로 복사도 안 된다.
tmp 안에도 아무 것도 없고, public_html 안에 있는 index.html에도 잡담 밖에 없어서,
한참을 헤매다 결국 구글링을 할 수 밖에 없었다.
알고 보니 wrong.txt 파일 안엔
"--_--_- --____- ---_-__ --__-_-" 라는 내용이 있었어야 한다고 한다.
해커스쿨의 온라인 서버에 들어가서 하는 게 아니라 자신의 PC에서 직접 서버를 구축해서 실습할 경우
해당 파일이 누락되는 오류가 일어난다고 한다.
이미 알아버린 시점에서 의미는 없긴 하지만 일단 root에 접속해서 해당 위치에 똑같이 wrong.txt 파일 및 내용을 만들어 주었다.

원래 어떤 문구도 같이 써져 있어야 한다고는 하지만 그냥 해당 코드만 넣어 주었다.
이제 아까 위의 힌트에서 2진수 => 10진수 가능? 이라고 나와있었으니, 띄어쓰기마다 구역을 나눠서 계산해 본다.
디지털 신호처럼 솟아 있으면 1, 꺼져 있으면 0이라 치고 나눠본다.
첫 번째 구역
1 1 0 1 1 0 1
64 32 16 8 4 2 1
1로 되어있는 값만 모두 더하면 109가 나온다.
두 번째 구역
1 1 0 0 0 0 1
64 32 16 8 4 2 1
1만 모두 더하면 97이 나온다.
세 번째 구역
1 1 1 0 1 0 0
64 32 16 8 4 2 1
1만 모두 더하면 116이 나온다.
네 번째 구역
1 1 0 0 1 0 1
64 32 16 8 4 2 1
1만 모두 더하면 101이 나온다.
일단 모두 더해서 나온 423을 넣어본다.

이렇게 뜨는 걸 보니 안 된 거 같다.

따로따로 넣어봐도 안 된다.
구역 별로 띄어쓰기를 한 걸 보니, 뭔가 다른 문자로 변환해야 하는 것 같다는 생각이 들었다.
그러고 보니 최근에 Base64나 아스키 코드 관련해서 강의에서 배운 적이 있어서, 한 번 찾아 봤다.

먼저 Base64 표를 찾아봤다. 2진수 표현을 보니 6개의 숫자로 되어 있다. 저 암호문은 7개로 이루어져 있는데.
일단 보류하고 다음으로 아스키 코드를 찾아 봤다.
인터넷을 뒤져보던 중 아주 좋은 자료를 찾았다. 2진수로도 딱 7개의 숫자로 표현된다.
8개로 표현한 사진이 있긴 했는데 어차피 맨 앞의 0은 쓸 일이 없으니 의미 없을 거 같다.

이제 각각 109, 97, 116, 101을 찾아서 문자로 변환해 본다.
각각 'm', 'a', 't', 'e' 가 나온다.

입력창에 입력해 보니.. 드디어 성공했다. 다음 단계로 넘어가는 비밀번호를 알아냈다.
4번 힌트는 끝까지 무슨 소린지 몰라서 찾아보니, 공학용 계산기로 2진수를 계산할 수 있다고 한다.
처음 알았다. 공학용 계산기를 써야 할 이유가 생긴 것 같다.
'CTF > FTZ' 카테고리의 다른 글
| Hackerschool FTZ Level 4 (0) | 2025.11.13 |
|---|---|
| Hackerschool FTZ Level 3 (0) | 2025.11.04 |
| Hackerschool FTZ Level 2 (0) | 2025.11.03 |
| Hackerschool FTZ Level 1 (0) | 2025.11.03 |
| Hackerschool FTZ Trainer 10 (1) | 2025.11.03 |