본문 바로가기

WARGAME/FTZ [system]

ftz level 4 [level4]

 

 

 

 

 

 

level4

 

 

 

 

 

 

 

우선 무슨 말인지 모르겠지만 저 경로에 백도어를 심어두었다고 하니 한번 이동해서 확인해보자.

backdoor 라는 파일을 볼 수 있다.

 

 

 

 

 

 

 

 

한번 cat 으로 까보자.

까보면 finger 라는 서비스가 선언되어 있고, user 의 권한으로 server 의 파일을 동작시키는 걸로 유추할 수 있다.

즉, /home/level4/tmp 아래에 backdoor 를 level5 의 권한으로 실행시키는 것이기 때문에,

이 위치의 backdoor 파일에 my-pass 를 출력하도록 하는 명령어를 넣을 수 있다면 문제 해결일 것이다.

 

 

 

 

 

 

 

 

그럼 일단 /home/level4/tmp 로 이동하여 backdoor 를 확인해보자.

 

? 이 위치에 backdoor 가 없기 때문에 만들어야 한다.

 

 

 

 

 

 

 

 

level5 password 를 알아내야하기 때문에 vi로 my-pass 를 출력하는 스크립트를 작성해준다.

 

방법은 backdoor.c 에 system("my-pass")  스크립트를 작성한 후 gcc 로 컴파일하여 실행파일을 만들어주는 방법과,

backdoor 를 만들어서 bash 쉘에  my-pass 를 입력하도록 하는 방법이 있다.

 

 

 

 

 

 

 

나는 컴파일이 귀찮기 때문에 두번째 방법을 선택했다.

이렇게 입력한 후,

 

 

 

 

만들어진 backdoor 의 실행 권한이 없기 때문에 chmod 로 실행할 수 있도록 변경해준다.

 

 

 

 

x 가 생긴 것을 확인할 수 있다. 

 

 

 

 

 

 

이제 해당 위치에 my-pass 를 출력해주는 backdoor 를 넣었기 때문에 서비스 finger 를 호출해보자.

 

level4 에 해당하는 유저의 로그인 정보? 가 보이는 듯하다.

 

finger 서비스가 이미 기존에 존재하고, 유저의 로그인 정보를 보여주는 서비스 라는 추측을 할 수 있다.

 

 

 

***finger ? 

: 로컬환경뿐만 아니라 원격지에 있는 환경의 유저까지 볼 수 있는 명령어  

 

 

따라서 , 내가 위에 입력한 finger 서비스는 /etc/xinetd.d 아래의 backdoor에 적힌 finger 서비스가 아닌 기존의 finger 가 출력된 듯 하다.

 

 

 

 

 

 

 

 

그렇다면 xinetd.d 아래에 있는 backdoor 의 finger 서비스를 실행시키려면 어떻게 해야할까?

 

먼저 xinetd.d 를 검색해보았다.

 

***xinetd.d ?

: 수퍼데몬에 관련된 폴더로 데몬이란 인터넷에서 접근했을때 서비스를 처리해주는 서버같은 프로그램

: 서비스에 접속을 요청할시에, xinetd가 중간에 개입하여 허가된 사용자인지를 검사

 

 

즉, 우리가 원하는 실행을 하는 finger 서비스를 실행시키려면, 

xinetd.d의 특성을 참고하여, 인터넷으로의 접근이 오면 backdoor에서의 설정한 finger의 명령어가 동작 한다는 것을 알 수 있다.

 

 

 

 

 

그러므로 finger 명령어를 실행시키나, localhost 로 접속하여 실행한다면 우리가 원하는 finger 서비스가 실행될 것이다.

level5 유저로 원격접속하여 인터넷으로의 접근이라는 조건을 충족한 후 finger 서비스 호출로 

level5 의 password "what is your name?" 획득

 

 

 

 

 

 

 

 

 

 

참고 - https://blog.dork94.com/89 

'WARGAME > FTZ [system]' 카테고리의 다른 글

ftz level 6 [level6]  (0) 2020.04.29
ftz level 5 [level5]  (0) 2020.04.29
ftz level 3 [level3]  (0) 2020.04.29
ftz level 2 [level2]  (0) 2020.04.29
ftz level 1 [level1]  (0) 2020.04.28