반응형
오늘의 문제는 버퍼 오버플로우(BufferOverFlow) 관련 문제인 것 같다.
wget 명령어를 사용해, http://pwnable.kr/bin/bof와 와 http://pwnable.kr/bin/bof.c 파일을 Seed 우분투에 다운로드 받았다. wget 명령어는 Web Get의 약어로, 리눅스에서 웹 상의 파일을 다운로드 받을 때 사용하는 명령어이다.
기본적인 사용법: wget [옵션] [url]
ls 명령을 통해 파일이 잘 다운로드 됐는지 확인할 수 있다.
bof파일을 실행해보면 permission denied가 뜬다. bof.c 파일을 확인해보자!
cat 명령을 이용해 bof.c 파일의 내용을 확인해보았다.
main 함수를 먼저 확인해보면, func 함수의 인자값으로 0xdeadbeef를 전달해준다.
func 함수를 확인해보면, char형 변수인 overflowme[32]를 gets 함수로 불러온다. if문에서 함수의 인자값인 key값과 0xcafebabe를 비교한 뒤, 같으면 /bin/sh를 실행해준다. sh는 가장 기본적인 쉘로, /bin/sh는 쉘의 절대경로이다.
ls 명령어로 파일목록을 다시 확인해보면, flag 파일이 있는 것을 확인할 수 있다.
cat명령을 이용해 flag를 확인해보면, flag가 나온다!!
flag를 입력해주면 성공~! 이번엔 5 point다 개꿀딱
flag: daddy, I just pwned a buFFer :)
반응형
'포너블(pwnable) > CTF(pwnable.kr)' 카테고리의 다른 글
[Toddler's Bottle] input 문제풀이 (0) | 2021.04.07 |
---|---|
[Toddler's Bottle] random 문제풀이 (0) | 2021.04.05 |
[Toddler's Bottle] flag 문제풀이와 UPX 설치 (0) | 2021.03.27 |
[Toddler's Bottle] collision 문제풀이 (0) | 2021.03.20 |
[Toddler's Bottle] fd 문제풀이 (0) | 2021.03.20 |
댓글