
[pwn.kr] fd 문제
WriteUP
해당 fd문제의 소스코드는 아래와 같다. 인자 값을 하나 받게 되어 있고 fd(파일 디스크립터) = atoi함수를 이용하여 첫 번째 인자 값에 -0x1234를 즉 10진수로 4660 값을 빼서 저장해놨다 그 후 len에 read함수로 fd를 주는데 read에서 파일 디스크립터가 표준 입력이 되기 위해서는 0이 되어야 한다 그러므로 0x1234 즉 10진수 4660으로 첫 번째 인자 값 즉 fd값을 0으로 맞춘 후 read가 정상적으로 입력받도록 한다. 그 후 if(! strcmp)를 사용한다 strcmp는 문자열이 맞으면 0을 반환하기에 0을 반환시켜! 를 통해 1로 변환되어 if조건문을 통과하여 해당 플래그를 읽어 들일 수 있다 아래와 같이 실행시켜 플래그를 획득하였다.