포너블/pwnable.kr
fd 풀이
삼전동해커
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이니
이렇게 풀수 있겠다.