제목처럼 쉬운 리버싱 문제
반응형
money 라는 이름의 바이너리 파일이 주어진다.
칼리 리눅스에서 file 명령어를 통해 해당 바이너리의 정보를 확인해보면
ELF 파일임을 알 수 있다.
ELF 파일은 리눅스에서 실행 가능한 EXE 파일같은거라고 생각하면 된다.
프로그램은 아주 간단하다.
내 이름을 물어보고 입력을 받는다.
hello 라고 입력해봤더니
Hello hello 라고 내가 입력한 값을 그대로 에코 해준 뒤 프로그램이 종료된다.
프로그램을 조금 더 자세히 보기위해
strings 명령어를 사용해봤다.
strings 명령어를 사용하면 바이너리에서 문자열을 찾아서 출력해준다.
중간에 보니 아까는 보지 못했던 문장들과
밑에 뭔가 인코딩된 값이 길게 쓰여있는걸 확인할 수 있었다.
조금 내리다가 Hello friend 라는 문장이 나오기 직전에 있는 값을 보니
맨 뒤에 = 가 붙어있었다.
= 가 있다면 base64로 인코딩된 것이다.
해당 값을 CyberChef(https://gchq.github.io/CyberChef)에서 base64 디코딩해주니
플래그를 찾을 수 있었다.
반응형
'CTF > 리버싱' 카테고리의 다른 글
[UMDCTF] Twilight Zone - 리버싱 / dnSpy (65) | 2022.05.11 |
---|---|
[UMDCTF] Santa Mysterious Box - 리버싱 / IDA (62) | 2022.05.03 |
[DCTF] Seek - 리버싱 / C / fseek (40) | 2022.04.19 |
[Space Heroes CTF] Cape Kennedy - 리버싱 / Python (41) | 2022.04.10 |
[AUCTF] Cracker Barrel - 리버싱 / IDA (60) | 2022.04.02 |