Dork's port

Pwnable.kr fd 풀이 본문

Pwnable.kr

Pwnable.kr fd 풀이

Dork94 2018. 5. 29. 00:04

먼저 ls로 파일들을 보도록 하겠습니다.


flag라는 파일을 보려고 하니 권한 문제로 실행되지 않는군요.

fd라는 파일과 fd.c라는 파일이 있길래 소스코드인 fd.c를 열어보니 아래와 같이 소스코드가 나타납니다.


먼저 인자 검사를 한 후 인자가 있으면 argv[1] 즉 argument 1을 숫자로 변형시켜 - 0x1234 를 하여 fd로 사용하는군요.


fd란 filedescriptor의 약자로 리눅스 시스템에선 기본적으로 3개가 할당되어 있습니다.


0 표준 입력 stdin

1 표준 출력 stdout

2 표준 에러 stderr



fd로 부터 32바이트를 읽은 후 "LETMEIN" 이라는 글자랑 비교를 한 후 일치하면 flag 값을 출력해주는 구조로 되어 있네요.

저는 표준 입력(키보드로 부터 키를 받아 사용)을 사용할 예정이므로 0x1234를 빼주었을 때 0이 나오는 숫자를 적어주도록 하겠습니다.


십진수로는 4660 이네요.

여기까지 하셨다면 플래그 값이 출력 될 것 입니다. 다른 분들을 위해 flag는 노출시키지 않도록 하겠습니다.


'Pwnable.kr' 카테고리의 다른 글

pwnable.kr flag 풀이  (0) 2018.08.24
Pwnable.kr bof풀이  (0) 2018.08.21
Pwnable.kr col 풀이  (0) 2018.05.29
Comments