힌트를 확인하고, 확인해본다.
xinetd.d이 디렉토리였다는것을 알수있다.
따라서 디렉토리로 들어가서, 안에 파일을 찾던 도중 backdoor파일을 찾을 수 있었다.
백도어 파일을 확인해보니 finger service를 설정해주고있었다.
일단 핵심 부분만 말하면 level5의 권한으로 /home/level4/tmp/backdoor파일을 실행시키는 서비스이다.
하지만 /home/level4/tmp에는 아무런 파일도 존재하지 않는다.
따라서 우리가 직접 프로그래밍을 통해 패스워드를 출력해주는 프로그램을 만들면 될듯 하다.
vi로 backdoor.c 를 만든다.
쓱쓱싹싹 코딩을 하고, :wq를 입력하여 나간다.
그리고나서 gcc로 컴파일하여 finger 서비스를 실행시키면 패스워드를 볼 수 있다.
level5 password is what is your name?
*참고*
finger는 유저들을 관리하는 서비스이다.
UID
사용자명
홈디렉토리위치
기본사용쉘
현재로그인정보등...
유저들의 여러가지 정보를 알 수 있다.
사용법은 다음과 같다.
finger @user @host
'System Hacking ( pwnable ) > hackerschool FTZ Write-up' 카테고리의 다른 글
[FTZ] level6 ( write - up ) (0) | 2019.05.21 |
---|---|
[FTZ] level5 ( write - up ) (0) | 2019.05.21 |
[FTZ] level3 ( write - up ) (0) | 2019.05.20 |
[FTZ] level2 ( write - up ) (0) | 2019.05.20 |
[FTZ] level1 ( write - up ) (0) | 2019.05.20 |