Category : System hacking
Summary : race condition
서버에 접속하여 문제 파일을 확인한다.
level5.tmp의 내용을 읽어보기위해 /usr/bin/level5를 실행하고 /tmp/ 디렉토리의 파일들을 확인해보니 level5.tmp는 없다.
/usr/bin/level5가 level5.tmp를 생성한 후 바로 지운다고 생각할 수 있다.
하지만 생성하고 지우는데에는 어느 정도의 시간이 있기때문에 race condition을 이용한 공격을 할 수 있다.
/usr/bin/level5를 무한정하게 실행하는 프로그램과 /tmp/level5.tmp를 무한정하게 읽는 프로그램을 작성해 두개다 실행해본다.
level6 user의 password를 얻었다.
ssh://ftz.hackerschool.org id : level5 pw : what is your name? |
Summary : race condition
서버에 접속하여 문제 파일을 확인한다.
[level5@ftz level5]$ ls -l /usr/bin/level5 프로그램은 /tmp 디렉토리에 이를 이용하여 level6의 권한을 얻어라.
|
level5.tmp의 내용을 읽어보기위해 /usr/bin/level5를 실행하고 /tmp/ 디렉토리의 파일들을 확인해보니 level5.tmp는 없다.
/usr/bin/level5가 level5.tmp를 생성한 후 바로 지운다고 생각할 수 있다.
하지만 생성하고 지우는데에는 어느 정도의 시간이 있기때문에 race condition을 이용한 공격을 할 수 있다.
/usr/bin/level5를 무한정하게 실행하는 프로그램과 /tmp/level5.tmp를 무한정하게 읽는 프로그램을 작성해 두개다 실행해본다.
[level5@ftz .pwn3r]$ cat exec.c int main() int main() next password : what the hell |
level6 user의 password를 얻었다.
'Wargame > FTZ' 카테고리의 다른 글
Hackerschool FTZ level7 (0) | 2011.07.17 |
---|---|
Hackerschool FTZ level6 (0) | 2011.07.17 |
Hackerschool FTZ level4 (0) | 2011.07.17 |
Hackerschool FTZ level3 (0) | 2011.07.17 |
Hackerschool FTZ level2 (0) | 2011.07.17 |