[FTZ] level5

강보석·2021년 8월 8일
0

해커스쿨 FTZ

목록 보기
5/5

cat hint를 해서 이번 문제의 힌트를 봅시다.

'/usr/bin/level5 프로그램은 /tmp 디렉토리에
level5.tmp 라는 이름의 임시파일을 생성한다.
이를 이용하여 level6의 권한을 얻어라.'
라고 적혀있군요.

level5.tmp파일을 생성하기 위해서 /usr/bin/level5 파일을 실행해봅시다.

실행을 마치고 /tmp 디렉토리에 들어갔더니 level5.tmp 파일이 있지 않습니다. 왜 그럴까요?

그러한 이유는 실행 중일 때는 임시파일이 생성되고 존재하고 있지만 실행이 끝날 때에는 사라지기 때문입니다.

그래서 우리는 이 파일이 다시 사라지기 전에 어디엔가 기록이 남겨놓아야합니다. 해결책으로 심볼릭 링크를 써봅시다.

심볼릭 링크는 특정 파일이나 디렉토리에 대하여 참조를 하는 파일을 만드는 것입니다. (바로가기 기능 등으로 쓰입니다) 그래서 임의로 만든 파일과 level5.tmp를 심볼릭 링크로 연결시켜 설령 level5.tmp 파일이 사라지더라도 거기에 적혀져있는 내용을 임의로 만든 파일에 저장해놓는겁니다.

vi /tmp/test 

로 tmp 디렉토리에 test란 비어있는 파일을 만듭니다.

ln -s test level5.tmp

로 심볼릭 링크를 만들어줍니다.

/usr/bin/level5를 실행시키시면 test 파일의 용량이 0에서 31로 증가되어있는 모습을 보실 수 있습니다.

test 파일을 열어보시면 레벨6의 비밀번호인 "what the hell"이 적혀져있습니다.

profile
안녕하세요. 컴퓨터를 공부하는 학생입니다.

0개의 댓글