file descriptor

    Pwnable.kr :: Toddler's Bottle - fd write up

    Pwnable.kr :: Toddler's Bottle - fd write up

    1번 문제 fd 를 풀어보았다. fd 는 File Descriptor 를 의미한다. 문제를 풀어보면 알 수 있듯이 File Descriptor 를 모르면 풀 수 없는 문제이다. 문제에서도 "What is a file descriptor?"라는 힌트를 주고 있다. ssh 로 fd@pwnable.kr 에 접속해보자. 파일을 살펴봤더니 flag 파일을 확인할 수 있으면 문제가 해결될 것 같다. 하지만 현재 권한이 없기 때문에 직접 볼 수는 없고, fd 파일에 setUID 가 걸려있으므로 fd 파일을 이용하면 flag 를 출력할 수 있을 것 같다. 우선 fd.c 파일의 소스코드를 확인해보자. main 함수의 매개변수로 들어가 있는 argc 는 명령 인자의 개수를 의미하고 argv는 인자의 벡터를 의미하는데, 인..