Wargame/pwnable.kr Challenge
-
[Toddlers's Bottle] fdWargame/pwnable.kr Challenge 2019. 1. 10. 14:06
→ 문제는 아래와 같다. → 로그인 후 파일 확인. → fd.c 소스 확인. → 소스분석 결과, 문제를 풀기 위해선 "!strcmp("LETMEWIN\n", buf)"을 참으로 만들어야 "good job :)" 이라는 메시지와 함께 /bin/cat/flag 명령어가 실행되서 flag 값을 알 수 있다. 따라서, buf 배열에 "LETMEWIN\n" 이라는 문자열이 저장되야 한다. → 그리고 buf 배열은 read 함수(read(fd,buf,32);)에 의해서 할당된다. 해당 read 함수를 해석하면, fd는 파일 디스크립터 값, buf는 읽은 데이터를 저장할 버퍼, 32 값은 얼만큼 읽을지를 전달하는 인자이다. 여기서 파일 디스크립터 값에 대해서 알아야 한다. → 리눅스 파일 디스크립터 값은 아래와 같다..