[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 |
댓글