삼전동해커 2020. 9. 13. 13:45

fd 문제를 풀어보장.



buf[32]로 버퍼를 할당해 주었고,

if문으로 argv를 2개 이상 넣어줘야 한다고 조건을 줬다.


fd값은 argv[1]의 값을 정수로 바꿔준 뒤 0x1234값을 뺀 값으로 했다.

read()함수로 fd파일을 열어 32바이트 만큼 buf에 넣어준다.


그리고 buf의 값이 LETMEWIN이랑 비교해 같으면 문제가 풀린다고 한다.


https://watchout31337.tistory.com/140?category=773356


이 글을 참조해보면

fd 값이 0일 때 값을 입력할 수 있다.


즉 argv[1] - 0x1234가 0이면 fd값이 0으로 설정되어 fd 파일에 입력을 할 수 있다.

0x1234 = 4660이니



이렇게 풀수 있겠다.