해킹 공부/시스템 해킹

FTZ 해커스쿨 level4 - backdoor파일, finger

O'bin 2021. 10. 2. 16:11

id :  level4

pw :  suck my brain

 

 

 

<나의 풀이 기록>

1.

이번에도 힌트 파일을 찾아 내용확인부터 시작한다.

/etc/xinetd.d/에 백도어를 심어놓았다고 하니 해당 경로로 이동해 확인해보았다.

 

 

2.

가장 먼저 눈에 띄는 backdoor파일.

 

내용을 확인해봤더니 위와 같은 내용이 출력됐다. 

자세히 읽어보니 나머지 내용은 모르겠고, user가 level5인것, server가 /home/level4/tmp/backdoor에 존재한다는 것이 실마리인 것 같다. 우선 server위치로 이동해보았다.

 

 

3.

그런데 server위치에 backdoor파일이 없었다. 여기서부터 어떻게 해야 할지 몰랐다. 인터넷의 도움을 받아보니 직접 backdoor프로그램을 만드는데, my-pass명령을 실행하는 프로그램을 짜서 비밀번호를 얻어내는 방법인가보다.

 

 

4.

c언어로 backdoor파일을 생성하고 my-pass명령을 실행하는 내용을 담는다.

gcc -o backdoor backdoor.c 로 컴파일하고 실행파일을 만든다.

그 후 finger를 이용해 실행하는데 비밀번호가 출력되지 않았다. 다들 이렇게 하던데 나는 비밀번호만 나오지 않았다.

왜이러는겨...

 

 

하지만 포기하지 않고! 다시 backdoor 파일을 진심을 다해... 작성하고 컴파일 했다. 파일 목록을 확인하니 c소스파일과 그 위에 실행파일이 생긴 것을 볼 수 있다.

밑에 backdoor.exe파일은 앞에서 시도해봤는데, 정상적인 결과가 나오지 않았다.

 

 

5.

backdoor 파일 생성 후 finger 기능을 통해 비밀번호를 얻었다.

 

finger : 사용자 계정 정보, 최근 로그인 정보, 이메일, 예약 작업 정보 등을 볼 수 있는 명령어

finger user@host 형식으로 사용할 수 있는데, 위처럼 @localhost는 본인을 가리킨다고 한다.

 

backdoor파일의 user는 level5임을 위에서 확인했기 때문에 finger명령어로 이 파일이 level5의 권한으로 열리는 것이다. 

 

 

<풀이 요약>

1. hint 파일 내용 확인

2. /etc/xinetd.d/로 이동해 backdoor파일 내용 확인
3. server의 위치 /home/level4/tmp/backdoor로 이동
4. backdoor파일 직접 생성
5. finger 기능 통해 비밀번호 확인

 

 

 

 

 

 

 

이번엔 난이도가 조금 낮았던 것 같다. level3이 너무 어려워서 그랬나... 나오는 경로들대로 따라가서 파일을 찾으면 상당부분 진행되었다. 없는 파일은 my-pass명령을 넣어 만드는 것이 조금 새로웠지만 생각해내지 못할 정도는 아닌 것 같다. 새로 배운 finger 기능에 대해서도 더 알아보도록 해야겠다.