반응형
우분투에서 접속해서 문제를 풀어보자
fd = atoi (argv[1]) - 0x1234
atoi는 문자열을 정수형으로 바꿔주는 함수이다.
read함수는 ssize_t read (int fd , void *buf , size_t nbytes) 이와 같은 형식이다.
여기서 fd는 파일디스크립터이다.
fd에 0이 들어가면 표준 입력으로 처리한다.
strcmp는 두개의 문자열을 비교하여 같으면 0 다르면 1을 반환한다
따라서 buf가 LETMEWIN과 같다면 0이고 앞 !가 붙어 1이되어 실행된다.
일단 fd를 0으로 만들어 넣어줄 필요가 있을것같다. 그래야 표준 입출력이 가능하니
0x1234는 4660이니
4660을 넣으면 fd는 0이된다.
이제 입출력이 가능하니 LETMEWIN을 입력해주면?
good job이후 값이 Flag이다
flag = mommy! I think I know what a file descriptor is!!
clear
반응형
'Write-Up > pwnable.kr' 카테고리의 다른 글
[pwnable.kr] shellshock 풀이 (0) | 2021.03.21 |
---|---|
[pwnable.kr] leg 풀이 (0) | 2021.03.20 |
[pwnable.kr] flag 풀이 (0) | 2021.03.19 |
[pwnable.kr] bof 풀이 (0) | 2021.03.19 |
[pwnable.kr] collision 풀이 (0) | 2021.03.19 |