黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图
您现在的位置: 黑客风云 >> 黑客文章 >> 黑客进阶 >> 黑客入侵 >> 文章正文
[推荐]一次linux肉鸡入侵检测
        ★★★★★
一次linux肉鸡入侵检测
文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2007-1-13

折腾了一下,心里大概有个数了,回过头来想想,他必定不只替换了一个ls的,找个静态工具包回来,并且修改一下PATH变量,优先使用我们的静态程序。

[root@victim root]# export PATH=/root/.../static/:$PATH

ok,我们现在再看看ls

[root@victim /]# ls -alh /tmp/mc-root/
total 8.0K
drwx------    2 root     root         4.0K Nov  8 19:36 .
drwxrwxrwt    9 root     root         4.0K Nov 18 10:47 ..

现在我们的程序暂时还是相对比较信得过的。
继续做上面两组检测。
我们把得到的结果和刚才的相比,chkrootkit对elf的检测没有报警了,隐藏进程也没有了,我们大致可以判断道友隐藏的手段比较低级,但是想起那个suckit的报警。。。。心里不敢大意。还不知道有没模块什么的。
为了更清楚一点,我们分析一下/var/log/rkhunter.log这个日志文件看看。看了日志,我们就会清楚为什么rkhunter的两次的检测报告试一样的了,因为他是用md5来校验的,他有一个数据库,而chkrootkit是检测输出信息。
[11:20:04] /bin/ls Hash NOT valid (My MD5: 0a07cf554c1a74ad974416f60916b78d, expected: dbc1a18b2e447e0e0f7c139b1cc79454)

我们把SHV和suckit相关的信息弄出来看看
[11:20:53] *** Start scan SHV4 ***
[11:20:53]   - File /lib/lidps1.so... WARNING! Exists.

[11:21:12] *** Start scan SHV5 ***
[11:21:12]   - File /etc/sh.conf... WARNING! Exists.
[11:21:12]   - File /dev/srd0... WARNING! Exists.
[11:21:12]   - Directory /usr/lib/libsh... WARNING! Exists.

[11:21:15] *** Start scan Suckit Rootkit ***
[11:21:15]   - File /usr/share/locale/sk/.sk12/sk... WARNING! Exists.
[11:21:15]   - Directory /usr/share/locale/sk/.sk12... WARNING! Exists.
看到这里,基本上就知其所以然了。我们继续一个一个的看
[root@victim root]# file /lib/lidps1.so
/lib/lidps1.so: ASCII text
[root@victim root]# cat /lib/lidps1.so
ttyload
shsniff
shp
shsb
hide
ttymon
scanner
看到这里,我忍不住ps和netstat了一下,发现了这两个东西
root      1584  0.0  0.0  1852   68 ?        S    Nov17   0:00 /sbin/ttyload -q
root      1586  0.0  0.0  1500  168 ?        S    Nov17   0:26 ttymon tymon
[root@victim root]# netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name  
tcp        0      0 0.0.0.0:31338           0.0.0.0:*               LISTEN      1584/ttyload        
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1702/httpd          
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1516/sshd          
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1540/                              
raw        0      0 0.0.0.0:1               0.0.0.0:*               7           1586/ttymon        
raw     1312      0 0.0.0.0:1               0.0.0.0:*               7           1586/ttymon

我们注意一下pid为1584和1586的两个进程,它们一个开了31338端口,一个起了raw socket,估计两个都是后门,一个bindport的,一个是sniffer的后门,接着我们lsof看看,呵呵,都现形了吧。
[root@victim root]# lsof -n -p 1584
COMMAND  PID USER   FD   TYPE DEVICE    SIZE     NODE NAME
3       1584 root  cwd    DIR    8,3    4096        2 /
3       1584 root  rtd    DIR    8,3    4096        2 /
3       1584 root  txt    REG    8,3  652620   212994 /tmp/sh-DJYK3MJABRP (deleted) -->这个是upx压缩后的特征之一。
3       1584 root  mem    REG    8,3  103044 12828674 /lib/ld-2.3.2.so
3       1584 root  mem    REG    8,3   91604 12828689 /lib/libnsl-2.3.2.so
3       1584 root  mem    REG    8,3   23668 12828683 /lib/libcrypt-2.3.2.so
3       1584 root  mem    REG    8,3   12696 12828711 /lib/libutil-2.3.2.so
3       1584 root  mem    REG    8,3 1531064 13991938 /lib/tls/libc-2.3.2.so
3       1584 root    0u   CHR    1,3            67051 /dev/null
3       1584 root    1u   CHR    1,3            67051 /dev/null
3       1584 root    2u   CHR    1,3            67051 /dev/null
3       1584 root    3u  IPv4   1798              TCP *:31338 (LISTEN)

[root@victim root]# lsof -n -p 1586
COMMAND  PID USER   FD   TYPE DEVICE    SIZE     NODE NAME
ttymon  1586 root  cwd    DIR    8,3    4096        2 /
ttymon  1586 root  rtd    DIR    8,3    4096        2 /
ttymon  1586 root  txt    REG    8,3   93476 43663399 /sbin/ttymon
ttymon  1586 root  mem    REG    8,3  103044 12828674 /lib/ld-2.3.2.so
ttymon  1586 root  mem    REG    8,3   52472 12828695 /lib/libnss_files-2.3.2.so
ttymon  1586 root  mem    REG    8,3 1531064 13991938 /lib/tls/libc-2.3.2.so
ttymon  1586 root    3u   raw                    1799 00000000:0001->00000000:0000 st=07
验证一下那两个后门:
[root@victim root]# nc localhost 31338
SSH-1.5-2.0.13
明显,这个ssh后门,估计是读那个/etc/sh.conf作为密码的。raw socket那个我暂时想不到咱们验证,因为一来不知道他抓的什么包,icmp or tcp,二来也不知道他抓的包的特征。霸王硬上弓吧。先执行一下。
[root@victim root]# /sbin/ttymon
[root@victim root]# /sbin/ttymon --help
[root@victim root]# /sbin/ttymon -h
这么不听话?strings你。我这里略去一些没用的信息
[root@victim root]# strings /sbin/ttymon
Usage: %s <dst> <src> <size> <number>
Ports are set to send and receive on port 179
dst:    Destination Address
src:    Source Address
size:   Size of packet which should be no larger than 1024 should allow for xtra header info thru routes
num:    packets
Could not resolve %s fucknut
ICMP
jess
tc: unknown host
3.3.3.3
mservers
lamersucks
skillz
ttymon
./0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
通过他的关键字找找,不难发现ttymon应该是一个修改过的ddos程序,是一个打路由器的东西,看来这位兄弟心挺大的。
Dameonic.c is a theoretical router based denial of service attack that exploits a weakness within the Border Gateway Protocol (BGP). If a malicious user sends spoofed malformed packets to a neighboring router, the peer will ignore it and possibly kill the session entirely. Written on a Ultra 5 running Linux Zoot, this has been compiled on Linux, OpenBSD, Solaris without problems.
程序在
http://packetstormsecurity.org/0008-exploits/daemonic.c
出于对这位道友野心的好奇,我下了这个程序回来编译一下
[fatb@baoz ~]$ ./a
Daemonic -  BGP Killer [Theories in DoS] www.AntiOffline.com/TID/
Usage: ./a <radd> <sradd> <bgsize> <number>
Ports are set to send and receive on port 179
radd:   Address of router running BGP [victim]
sradd:  Source address of neighbor router running BGP [attacker]
bgsize: Size of packet which should be no larger than 1024 should allow for xtra header info thru routes
num:    pulverizations per second
对比两个地方,一个是直接执行程序返回的信息,前者是不显示任何信息,后者显示帮助,第二个就是strings的输出,明显前者输出内容多,我猜测后面部分包含控制密码。还有更重要的是,这个ttymon起了raw socket听包,这个raw socket必定是用来接收控制者指令,并执行相应的ddos操作的一个通道,后面的事情大家自己想象吧,呵呵。

[root@victim root]# file /etc/sh.conf
/etc/sh.conf: ASCII text
[root@victim root]# cat /etc/sh.conf
6465d1b20c0c4cd408e34e68e630bc7a  -
这个应该是md5之后的ssh密码了。

下面的是t0rnV8里的东西了,12点多了,还没吃饭,没什么心情去跟这个低级的rootkit了,也不想知道下面的内容是什么,估计是encode之后的ssh密码吧,我猜的。
[root@victim root]# file /dev/srd0
/dev/srd0: ASCII text
[root@victim root]# cat /dev/srd0
j+JNfnYdtqa7trq6gh+4ixPhLDBbLT6Ku5uVVJ/mxxzobTlPUCEeEzdxglyNos4IvejtbRNdAMxP/d7NhBeFseisPX5oloDE5z1e2ZjQtsM
S0uF0BrCRaiyuNhbD+TxyiCkfPxeS6/f3KYGvy0+9uf96HZCHbJRHzwU0BoEWZW66Kw9fmiWgMTnPV7ZmNC2ww
DrWCrrUVHlVO0ETRpEzDLr4+eRoYKQ4cF1IYuZIuKJvpL8u0zFWEQVd4aHHRV8MZ6Kw9fmiWgMTnPV7ZmNC2ww
m8Y0WvJzHApXJkPWqGlLXkQEgP7I+Z00g5rfl4JVTHHVS3ccyoWJvoHxARS2Az4+6Kw9fmiWgMTnPV7ZmNC2ww
Nx2BGzQcgwNk5wkHvIbDS+akciYGKpBOpkfbml2dEhlnylbaCJUtkIZtodypSCex6Kw9fmiWgMTnPV7ZmNC2ww
7Tuu8KGtjaBucg6CylE0jLx5gHLMf67ZIFShF/vnuKNoRfJqqJhR5/4k+4vDqwlW6Kw9fmiWgMTnPV7ZmNC2ww
aeC6nDWmqSBSLAn74IG+scDyaeQhcyttGosc5AHjaJjsS7dk2xyaySZVyBz4xsJLvejtbRNdAMxP/d7NhBeFseisPX5oloDE5z1e2ZjQtsM
Z1Adpyun9XhDlWlkphlGxvqi7D+VzU2gaIcSV3F5SvtUfb9WXOCPgW4fLKozFRr18GdivriXhV99Urg+qyUS5OisPX5oloDE5z1e2ZjQtsM
XnGWwt8gbkh3WioGunOBNlnN29dPwkm4N1UqS3mZ7V5C2DSuxCWu5vgapmla+YFx6Kw9fmiWgMTnPV7ZmNC2ww
+KrS/TlnD5nr0P/iOvN/aN+jWY2xtLoIpAN70/2NlvfnnApDPhNqf9Y82i7BX/UHVWRY+R8hmtWPTN9aYJrjduisPX5oloDE5z1e2ZjQtsM

继续看,这个就是他的老巢了,SHV5的默认目录,里面来来去去就那些东西,.backup里的是原来的elf程序,回头我们把这些东西cp回去就完事了。
[root@victim root]# ls -alh /usr/lib/libsh
total 104K
drwxr-xr-x    6 root     root         4.0K Nov 17 16:45 .
drwxr-xr-x  133 root     root          68K Nov 18 10:13 ..
drwxr-xr-x    2 root     root         4.0K Nov  8 19:33 .backup
-rwxr-xr-x    1 122      114          2.4K Jan 30  2006 .bashrc
-rwxr-xr-x    1 122      114          1.8K Feb 19  2003 hide
drwxr-xr-x    2 root     root         4.0K Nov  8 19:33 .owned
-rwxr-xr-x    1 122      114          1.3K Feb 19  2003 shsb
drwxr-xr-x    2 root     root         4.0K Nov  8 19:33 .sniff
drwxr-xr-x    2 root     root         4.0K Feb 19  2003 utils

[root@victim root]# ls /usr/lib/libsh/.backup/    
dir  find  ifconfig  ls  lsof  md5sum  netstat  ps  pstree  slocate  top

下面就是大名鼎鼎的sk了,看到sk,首先关注的就是他的prefix,启动方式和版本。。。。废话。。。呵呵
[root@victim root]# ls -alh /usr/share/locale/sk/
total 40K
drwxr-xr-x    5 root     root         4.0K Sep  7 02:02 .
drwxr-xr-x  110 root     root         4.0K Nov  8  2005 ..
-rw-r--r--    1 root     root            6 May  9  2000 charset
-rw-r--r--    1 root     root         1.3K Nov 18  2002 entry.desktop
drwxr-xr-x    2 root     root          16K Nov  8  2005 LC_MESSAGES
drwxr-xr-x    2 root     root         4.0K Nov  8  2005 LC_TIME
drwxr-xr-x    2 root     root         4.0K Sep  7 02:02 .sk12

sk没启动,因为.sk12都显示出来了,.sniffer文件里也没记录到什么密码,但我对这个sk12还是充满好奇心,sftp托到我本地机器玩玩。
[fatb@baoz ~]$ strings sk | grep -i fuck
[fatb@baoz ~]$ file sk
sk: ELF invalid class invalid byte order (SYSV)
[fatb@baoz ~]$ ./sk
Password:
Go away with that, poor boy!
[fatb@baoz ~]$ ls -al sk sk2rc2/sk
-rwxr-xr-x    1 fatb     perlish        30799 Nov 11 18:04 sk
-rwxr--r--    1 fatb     perlish        30279 Nov 17 06:06 sk2rc2/sk
从上面看来,这个不是sk12,应该是sk2,否则应该有fuck字样并且没有密码的,并且他用ef加密了。和公开的sk2rc2对比一下,发现他比rc2文件要大一点。。。。YY中,呵呵,我猜他应该是更新的版本的。1点多了。。。还没吃饭,快饿晕了,先吃饭去,回来继续……

上一页  [1] [2] [3] 下一页  

文章录入:cainiaowang    责任编辑:cainiaowang 
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
VIP 专 区
没有相关文章
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886