반응형

며칠전 한 고객으로부터 서버가 자꾸 다운되고 웹페이지 및 네트워크 접속이 안된다는 민원을 접수하고 서버를 점검하였다. 리눅스서버로 간단한 회사 홈페이지 정도 구동하고 있었다. 서버 관리자는 당연히 초보이고 나름 그래도 관심을 갖는다고는 하였으나 동일증상이 반복된다고 하여 조사해 보았다.


이미 고객은 몇차례 침해 사고를 당한 적이 있어 패스워드 만큼은 보기 드물게 강력한 패스워드를 만들어 사용하고 있었다.

일단 순차적을 살펴 보기로 하자..

# uptime
 14:10:44 up  1:09,  1 user,  load average: 0.00, 0.00, 0.00

# uname -a
Linux  2.6.9-42.0.10.ELsmp #1 SMP Tue Feb 27 10:11:19 EST 2007 i686 i686 i386 GNU/Linux


]# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                      68507184  14648208  50379016  23% /
/dev/sda1               101086     19568     76299  21% /boot
none                    517300         0    517300   0% /dev/shm

시간을 조사하고, 리눅스 커널 버전과 디스크 용량과 파티션 정보를 알아 보았다.

# ps -aux|more
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ
USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  2340  552 ?        S    13:01   0:00 init [3]
root         2  0.0  0.0     0    0 ?        S    13:01   0:00 [migration/0]
root         3  0.0  0.0     0    0 ?        SN   13:01   0:00 [ksoftirqd/0]
root         4  0.0  0.0     0    0 ?        S    13:01   0:00 [migration/1]
root         5  0.0  0.0     0    0 ?        SN   13:01   0:00 [ksoftirqd/1]
root         6  0.0  0.0     0    0 ?        S<   13:01   0:00 [events/0]
root         7  0.0  0.0     0    0 ?        S<   13:01   0:00 [events/1]
root         8  0.0  0.0     0    0 ?        S<   13:01   0:00 [khelper]
root         9  0.0  0.0     0    0 ?        S<   13:01   0:00 [kacpid]

프로세스를 점검해 보았으나 특이 사항을 찾을 수 없었다. 그 다음 가장 간단하면서도 기초적인 상황을 볼수 있는 네트워크 점검이다...만약 어떤 형태로든 침해사고를 당했다면 네트워크 세션 연결과 포트가 열려 있을 것이다.

# netstat -anp|more

211.xxx.xxx.20:32780        203.153.xxx.101:6667         ESTABLISHED 4445/httpd -DSSL

오호..너 지금 딱걸렸어...http 데몬이 의심스러웠다. 이건 왠지 직감,..우선 찍어 놓고..
다음은 혹시 스니핑을 당하고 있지 않은가 해서 스니핑 유무를 살펴 보았다..

]# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:A0:D1:E3:02:32
          inet addr:211.xxx.xxx.20  Bcast:211.xxx.xxx.31  Mask:255.255.255.224
          inet6 addr: fe80::2a0:d1ff:fee3:232/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:55249 errors:0 dropped:0 overruns:0 frame:0
          TX packets:65551 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:12122122 (11.5 MiB)  TX bytes:73491573 (70.0 MiB)
          Base address:0xcf00 Memory:fcde0000-fce00000

다행히 스니핑 당하고 있지는 않았다,..스니핑을 당하면 해당 네트워크는 상당한 피해를 초래하게 된다.

httpd     4437 nobody   22u  IPv4   7637       TCP *:80 (LISTEN)
httpd     4445 nobody    3u  IPv4   9409       TCP *:1988 (LISTEN)
httpd     4445 nobody    7u  IPv4  10783       TCP 211.xxx.xxx.20:32780->203.153.xx.101:6667 (ESTABLISHED)
httpd     4446 nobody   22u  IPv4   7637       TCP *:80 (LISTEN)

그 가운데 아까 점찍어 둔 놈을 lsof 명령어와 옵션으로 해당 파일과 포트를 어떻게 사용하고 있는지를 모았는데 httpd 데몬을 가장하고 있었다..

]# lsof -i:32780
COMMAND  PID   USER   FD   TYPE DEVICE SIZE NODE NAME
httpd   4445 nobody    7u  IPv4  10783       TCP finebill.co.kr:32780->ip-101-99-net.express.net.id:ircd (ESTABLISHED)

이 놈이 바로 httpd 데몬을 가장하여 외부에 있는 ircd 데몬과 연결이 되어 irc 채팅 서버로 뚫린 모양이다.

========================================================================================
IP INFORMATION SEARCH : 203.153.xx.xxx
국가 : Indonesia  
ISP : N2C-IFS4
기관명 : Infrastruktur N2C
주소 : PT. NettoCyber Indonesia
IP구간 : 203.153.99.0 - 203.153.99.255
 
inetnum 203.153.99.0 - 203.153.99.255
netname N2C-IFS4
country ID
descr Infrastruktur N2C
descr Jakarta
descr Indonesia
admin-c AD142-AP
tech-c GB82-AP
status ASSIGNED NON-PORTABLE
changed hostmaster@net2cyber.net 20061214
mnt-by MAINT-ID-EXPRESSNET
source APNIC
 
person Aris Dharmawan
nic-hdl AD142-AP
e-mail arisdh@net2cyber.net
address PT. NettoCyber Indonesia
address Menara Rajawali Lt 12
address Mega Kuningan Lot 5.1
address Jakarta 12950
phone +62-21-5761234
fax-no +62-21-5762345
country ID
changed novan@xl.co.id 20040915
mnt-by MAINT-ID-XLNET-N2C
source APNIC
 
person Gede B. Widagdo
nic-hdl GB82-AP
e-mail gede@velo.net.id
address PT. NettoCyber Indonesia
address Menara Rajawali Lt 12
address Mega Kuningan Lot 5.1
address Jakarta 12950
phone +62-21-5761234
fax-no +62-21-5762345
country ID
changed gede@velo.net.id 20070912
mnt-by MAINT-ID-EXPRESSNET
source APNIC
 
그래서 IP 조사결과 인도네시아로 나왔다., 실제 인도네시아 인지 아니면 인도네시아 서버도 뚫린건지 잘 모르겠지만 아무튼 그랬다.

[root@ tmp]# ls -al
total 248
drwxrwxrwx   5 root   root   40960 Mar 28 11:44 .
drwxr-xr-x  24 root   root    4096 Mar 27 13:01 ..
drwxr-xr-x   2 nobody nobody  4096 Mar 27 15:22 .c
-rw-r--r--   1 nobody nobody     0 Mar 27 15:21 cmdtemp
drwxrwxrwt   2 root   root    4096 Mar 27 13:01 .font-unix
drwxrwxrwt   2 root   root    4096 Mar 27 13:01 .ICE-unix
srwxrwxrwx   1 mysql  mysql      0 Mar 27 13:01 mysql.sock
-rw-r--r--   1 nobody nobody 12510 Feb 27 23:07 mysql.txt
-rw-r--r--   1 nobody nobody 12510 Feb 27 23:07 mysql.txt.1
-rw-r--r--   1 nobody nobody 12510 Feb 27 23:07 mysql.txt.2
-rw-r--r--   1 nobody nobody 12510 Feb 27 23:07 mysql.txt.3
-rw-r--r--   1 nobody nobody 12510 Feb 27 23:07 mysql.txt.4
-rw-------   1 nobody nobody 38912 Mar 20 17:09 php2jPgvv
-rw-r--r--   1 nobody nobody 29584 Mar 18 15:52 sess_7330089add1ed9e64f84ef136f02b4ef
-rw-r--r--   1 nobody nobody 29582 Mar 19 02:40 sess_7WR0089add1ed9e64f84ef136f02b4ef
[root@ tmp]#

그리고 나서 발견된 tmp 디렉토리의 수 많은 파일등,...일일이 확인해 보니 아주 봇 들이 난리도 아니었다.  자세한 것은 추후 또 살펴 보기로 하고 일단 해당 봇넷 파일 삭제와 퍼미션 조정들..그리고 방화벽 필터링을 통한 포트 제어 등으로 모니터링 후에 다시 동일한 현상이 일어나면 연락 달라고 했다.  한가지 아쉬운 점은 늘 그렇지만 지금 사용중이 서버라서 함부로 다룰수 없다는 것이다. 그렇다고 무슨 수사기관도 아니고 그럴만한 권한을 위임 받은 것도 아니기 때문에 ..여러가지 대처 방안과 요령을 말해 주고 끊었다.


,