코드를 해석해보면
main함수에서
putenv("PATH=/thankyouverymuch") 를 쓴다.
이 함수는 thankyouverymuch라는 곳으로 시작하면 간 다는 것이다.
그리고 filter함수에서
flag,sh,tmp라는 단어의 사용을 막고있다.
그리고 system함수를 통해 argv[1]을 넘길 수 있다.
/bin디렉토리에는 기본적인 명령어들이 들어있는데
/bin/cat 을하면 cat이라는 명령어를 쓸 수 있다.
그래서 우리는 첫번째 인자에
"/bin/cat fl*"을 사용하면
fl로 시작하는 파일들을 cat명령어를 이용해 출력할 수 있게된다.
'System, Pwn > pwnable.kr' 카테고리의 다른 글
pwnable.kr - Toddler's Bottle - passcode (0) | 2019.09.25 |
---|---|
pwnable.kr - Toddler's Bottle - bof (0) | 2019.09.23 |
pwnable.kr - Toddler's Bottle - collision (0) | 2019.09.23 |
pwnable.kr - Toddler's Bottle - fd (0) | 2019.09.22 |