FTZ level 5
hint
hint를 참고하여 level5을 실행시키면 실제 tmp에는 level5.tmp파일이 없다.
임시파일이라 종료 전에 사라지는 것 같다.
level5에는 SetUid가 걸려있다.
level5.tmp가 삭제되기 직전에 이 파일을 가로채기위해 LOB를 풀며 사용한 심볼릭 링크를 사용해보자.
/tmp에 아무 파일이나 만들고 그 파일에 level5.tmp라고 심볼릭 링크를 걸어주면 /usr/bin/level5가 실행될 때 level5.tmp에 쓰여진 패스워드가 아무 파일에 연결되고 level5.tmp는 지워져도 아무 파일이 남아있기에 level6의 권한을 가져올 수 있다.
+)touch?
touch명령어는 비어있는 파일을 생성하는 명령어이다.
사실 처음에 get이라는 파일에 심볼릭 링크를 걸어주려고 그냥 ln –s get level5.tmp라고 실행하고 level5를 실행했는데 미리 있는 파일에 걸어준게 아니라 권한이 그대로 복사된 level5.tmp링크가 걸린 get이란 이름의 파일이 만들어진거라 cat get을 입력하면 Permission denied가 떴었다.
'FTZ' 카테고리의 다른 글
FTZ level 7 (0) | 2016.12.23 |
---|---|
FTZ level 6 (0) | 2016.12.23 |
FTZ level 4 (0) | 2016.12.23 |
FTZ level 3 (0) | 2016.09.29 |
FTZ level 2 (0) | 2016.09.29 |