FTZ level2

Wargame/FTZ 2018. 1. 3. 23:52

level2로 접속 후 hint 파일을 확인해보면 다음과 같이 편집 중에 쉘 명령을 실행시킬 수 있다고 한다.

 

 

 

다음과 같은 명령어를 통해 우선 level3 권한이 있는 setuid가 설정된 파일을 찾았다.

 

 

 

일단 파일을 실행해보면 vi 편집기같은 편집화면이 나오는 것을 확인할 수 있었다.

 

일단 좀 더 자세한 분석을 위해 gdb로 분석을 해봤다.

 

로직은 간단하다.

setreuid 함수로 level3 권한인 3003(0xbbb)로 권한 변경 후 system함수를 통해 특정 명령어를 실행한다.

이 때 실행되는 명령어를 파악하기 위해 인자값으로 들어온 8048444 메모리 주소의 값을 보면 위와 같이 /bin/vi라는 문자열이 입력되어 system함수를 통해 실행된 것을 확인할 수 있다.

 

즉 /usr/bin/editor 바이너리는 level3 권한으로 vi에디터를 실행시켜주는 로직을 가진 파일이었던 것을 알 수 있었다.

 

그렇다면 해당 바이너리 실행 시 실행된 vi에디터는 level3 권한을 가지고있기 때문에 다음과 같이 vi에디터의 명령어 실행 기능을 통해 level3권한으로 패스워드를 구할 수 있다.

 

 

잘 나온당.

 

'Wargame > FTZ' 카테고리의 다른 글

FTZ level6  (0) 2018.01.05
FTZ level5  (0) 2018.01.05
FTZ level4  (0) 2018.01.04
FTZ level3  (0) 2018.01.04
FTZ level1  (0) 2018.01.03
블로그 이미지

JeonYoungSin

메모 기록용 공간

,