CTF/리버싱

[UMDCTF] Easy Money - 리버싱 / Strings

SecurityMan 2022. 5. 2. 11:00

 

제목처럼 쉬운 리버싱 문제

 

반응형

 

money 라는 이름의 바이너리 파일이 주어진다.

 

 

칼리 리눅스에서 file 명령어를 통해 해당 바이너리의 정보를 확인해보면

 

ELF 파일임을 알 수 있다.

 

ELF 파일은 리눅스에서 실행 가능한 EXE 파일같은거라고 생각하면 된다.

 

 

프로그램은 아주 간단하다.

 

내 이름을 물어보고 입력을 받는다.

 

hello 라고 입력해봤더니

 

Hello hello 라고 내가 입력한 값을 그대로 에코 해준 뒤 프로그램이 종료된다.

 

 

프로그램을 조금 더 자세히 보기위해

 

strings 명령어를 사용해봤다.

 

strings 명령어를 사용하면 바이너리에서 문자열을 찾아서 출력해준다.

 

중간에 보니 아까는 보지 못했던 문장들과

 

밑에 뭔가 인코딩된 값이 길게 쓰여있는걸 확인할 수 있었다.

 

 

조금 내리다가 Hello friend 라는 문장이 나오기 직전에 있는 값을 보니

 

맨 뒤에 = 가 붙어있었다.

 

= 가 있다면 base64로 인코딩된 것이다.

 

 

해당 값을 CyberChef(https://gchq.github.io/CyberChef)에서 base64 디코딩해주니

 

플래그를 찾을 수 있었다.

반응형