본문 바로가기

WARGAME/pwnable.kr [system]

[Toddler's Bottle] 4번 flag

 

flag

 

ls 로 flag 하나 있는 것 확인 후 cat,

난독화

난독화가 되어 있고, UPX 라는 문자열을 통해 UPX 패커로 패킹되어 있음을 알 수 있었다.

따라서 언패킹 후 다시 확인해보기로 했다.

 

upx -d 명령어로 언패킹 후 

upx -d

 

다시 cat,

unpacked

우선 스트링이 잘 보이는 것을 보아 언패킹이 잘 되었음을 확인 후 실행 시켜보기로 했다.

 

권한 부여 후 실행, 

./flag

malloc()후 flag와 strcpy 한다는 문구가 출력된다.

 

따라서 디버깅을 해보았다.

disas main

#0x6c2070 <flag> 가 눈에 띈다.

 

그래서 해당 주소 메모리를 확인해봤다.

x/x 0x6c2070

해당 주소가 0x00496628에 있음을 확인한 후, x/x로 출력해봤는데 헥사로 나오는걸 보고 string 으로 다시 출력해보았다.

flag 획득

 

+ 참고 + 

구글링을 해보니까 IDA 를 사용하면 디컴파일 기능을 사용해서 원본 소스 파일도 확인할 수 있다고 하니까 적절히 활용해도 좋을 것 같다.

 

'WARGAME > pwnable.kr [system]' 카테고리의 다른 글

[Toddler's Bottle] 6번 random  (0) 2019.11.28
[Toddler's Bottle] 9번 mistake  (0) 2019.11.27
[Toddler's Bottle] 3번 bof  (0) 2019.11.19
[Toddler's Bottle] 2번 collision  (0) 2019.11.14
[Toddler's Bottle] 1번 fd  (0) 2019.11.14