[해커스쿨] FTZ LEVEL5 문제 풀이
ㅁ 문제 요약
문제 유형 | System Hacking |
문제 타입 | Linux |
문제 난이도 | 하 |
ㅁ 상세분석
[그림 1] 문제 내용
LEVEL5에서 hint 파일을 보면 /usr/bin/level5 프로그램이 /tmp 폴더에 level5.tmp 라는 임시파일을 생성한다고 나와 있다. level5 문제를 푸는 여러 가지 방법이 있지만 레이스 컨디션을 이용한 공격 방법은 이미 많이 나와 있어서 다른 문제풀이 방식으로 접근했다.
[그림 2] 문제 실행
/usr/bin/level5 프로그램을 실행하면 tmp 폴더에 level5.tmp 파일을 생성한다고 나와 있지만 검색해보면 level5.tmp 파일이 존재하지 않는다. 프로그램 실행을 유추하면 /usr/bin/level5 실행 -> /tmp/level5.tmp 생성 -> /tmp/level5.tmp 삭제와 같은 절차를 거치는 것으로 유추할 수 있다.
[그림 3] tmp 폴더 권한
tmp 폴더는 Sticky Bit가 설정되어 있으므로 소유자 또는 관리자만 삭제할 수 있다. 즉 tmp 폴더에 level5 권한으로 level5.tmp 파일을 생성하고 /usr/bin/level5 파일을 실행하면 된다.
[그림 4] 문제 풀이 결과
문제 풀이 결과처럼 level5 권한으로 파일을 생성하고 /usr/bin/level5 파일을 실행하면 파일 쓰기까지 진행하고 Sticky Bit 설정으로 파일 삭제는 실패하게 된다.
'Wargame & CTF > Hackerschool FTZ' 카테고리의 다른 글
[해커스쿨] FTZ LEVEL7 (0) | 2015.12.29 |
---|---|
[해커스쿨] FTZ LEVEL6 (0) | 2015.12.28 |
[해커스쿨] FTZ LEVEL4 (0) | 2015.12.18 |
[Hackershcool] FTZ LEVEL 3 (0) | 2015.12.17 |
[Hackershcool] FTZ LEVEL 2 (0) | 2015.12.17 |