본문 바로가기
Wargame/pwnable.kr

pwnable.kr mistake

by morae23 2019. 2. 1.

[Toddller's Bottle] mistake


먼저 문제는 아래와 같다.




힌트가 연산자 우선순위임을 알 수 있다.

아래와 같은 파일을 볼 수 있다.




아래 코드는 main()의 일부이다.




이 때,

fd = open() < 0

이라는 코드를 볼 수 있는데, 여기서 연산자 우선순위에 의해 fd에는 (open() < 0)의 결과가 들어간다.

따라서 fd에는 0이 들어간다.


즉 pw_buf를 stdin으로 입력 받게 되므로

pw_buf에 0000000000 을 넣고, pw_buf2에 xor한 값인 1111111111 을 넣어주면 아래와 같이 플래그를 얻을 수 있다.





'Wargame > pwnable.kr' 카테고리의 다른 글

pwnable.kr leg  (0) 2019.02.11
pwnable.kr shellshock  (0) 2019.02.01
pwnable.kr lotto  (0) 2019.02.01
pwnable.kr blackjack  (0) 2019.02.01
pwnable.kr coin  (0) 2019.02.01

댓글