科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道一次linux肉鸡入侵检测

一次linux肉鸡入侵检测

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

昨天答应了给wzt找几个linux肉鸡测试程序的,打开http://www.milw0rm.com/webapps.php ,找了个include漏洞的程序试了一下,很快就得到一个webshell,没什么好说的,redhat9的机器,然后localroot了一下。

来源:论坛整理 2008年8月16日

关键字: 攻击防范 网络安全 入侵

  • 评论
  • 分享微博
  • 分享邮件

昨天答应了给wzt找几个linux肉鸡测试程序的,打开http://www.milw0rm.com/webapps.php ,找了个include漏洞的程序试了一下,很快就得到一个webshell,没什么好说的,redhat9的机器,然后localroot了一下。

插句话,本文中的ip地址和主机名都被替换了,请不要对号入座,本文手法仅供参考,在正规的入侵检测操作中,我们还是需要注意很多流程和细节上的问题。另外本文对一些基本概念或者程序之类的不做解释,如果有不明白的地方,请教google。

进了肉鸡,换上我们的ssh后门,具体的方法可以在http://baoz.net 或http://xsec.org 上找到,带视频教程:) 如果看完视频之后还有疑问,可以到http://cnhonker.com/bbs/ 的linux版交流一下。

一进ssh,哦,奇怪,米国人民问候韩国人民?有异样……

Last login: Fri Nov 17 08:21:14 2006 from ac9e2da9.ipt.aol.com

好奇,扫一下。

[fatb@baoz ~]$ nmap -P0 ac9e2da9.ipt.aol.com -O

进了机器第一个事就是看看是不是vmware,是的话赶紧跑路了,别掉到人家的破罐子里去了,呵呵
来,看看:
##检查是不是vmware的机器

[root@victim root]# ifconfig -a | grep -i -e "00-05-69" -e "00-0C-29" -e "00-50-56"; dmesg | grep -i vmware

如果没输出的话,还好。。。。就算是个honeypot,好歹也是投资了点设备的honeypot。继续看看他投资了什么设备:

[root@victim root]# cat /proc/cpuinfo | grep name;cat /proc/meminfo | grep MemTotal
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
MemTotal:      1030228 kB

还可以的机器,虽然4CPU却只有1G的内存,有点怪,但是还是勉强了,跑个密码什么的也行。

关于anti-honeynet,下面有两个文章不错,不过都是针对vmware或者User Mode Linux的了,如果人家用真实机器,那还得靠人品啊,呵呵。
http://xsec.org/index.php?module=archives&act=view&type=3&id=5
http://xsec.org/index.php?module=archives&act=view&type=3&id=6
关于honeynet和anti-honeynet的讨论,可以来这里聊聊
http://cnhonker.com/bbs/thread.php?fid=15&type=1

废话少说,接下来第二个事就是看看有没道友在上面,有的话就不好意思了,得请出去:)

一般我都会先打几个命令看看,因为有些rootkit他改的不好,或者是因为版本的问题,反正不管什么原因,有一些被替换了的程序的一些参数会没有的。


[root@victim root]# ls -alh
ls: invalid option -- h
Try `ls --help' for more information.


呵呵,ls被替换了。在看看netstat


[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: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/ 
tcp        0    300 123.123.123.123:22         10.20.30.40:2245      ESTABLISHED 6097/sshd:         
tcp        0      0 123.123.123.123:22         10.20.30.40:2247      ESTABLISHED 6815/sshd: 
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node PID/Program name    Path
unix  2      [ ACC ]     STREAM     LISTENING     121430 6815/sshd:          /tmp/ssh-vfJj6815/agent.6815
unix  2      [ ACC ]     STREAM     LISTENING     116904 6097/sshd:          /tmp/ssh-weHq6097/agent.6097
unix  6      [ ]         DGRAM       1560   1476/syslogd        /dev/log
unix  2      [ ]         DGRAM       1771   1570/crond         
unix  2      [ ]         DGRAM       1728   1549/ 
unix  2      [ ]         DGRAM       1714   1540/ 
unix  2      [ ]         DGRAM       1568   1480/klogd


看起来貌似还算正常。

不管3721,直接搞两个检查rootkit的东西回来看看,chkrootkit和rkhunter。
先爽一下chkrootkit:
注意,我们现在是在根本不可信的环境下检查的,可能有朋友会问“为什么要在不可信的环境里检查啊”,原因是这样的,因为我们先在一个不可信的环境里检查,得出一份结果,然后再在稍微可信的环境里检查,再得到一份结果,这样我们前后对比,大致就可以知道这位道友是否有使用LKM或者更高级的rootkit了。
检查完之后,我们发现下面有趣的信息:


[root@victim chkrootkit-0.47]# ./chkrootkit
Checking `ifconfig'... INFECTED
Checking `pstree'... INFECTED
Searching for t0rn's v8 defaults... Possible t0rn v8 \(or variation\) rootkit installed
Searching for Showtee... Warning: Possible Showtee Rootkit installed
Searching for Romanian rootkit...  /usr/include/file.h /usr/include/proc.h
Checking `bindshell'... not infected
Checking `lkm'... You have     2 process hidden for ps command
chkproc: Warning: Possible LKM Trojan installed


我们再找rkhunter爽一下:
rkhunter的输出信息比较人性化也比较多,--quite选项输出又有点问题,我就rip比较有用的信息出来,日志在/var/log/rkhunter.log。


[root@victim chkrootkit-0.47]# /usr/local/bin/rkhunter -c --createlogfile
Rootkit 'SHV4'...   [ Warning! ]
Rootkit 'SHV5'...   [ Warning! ]
Rootkit 'Suckit Rootkit'...   [ Warning! ] -->还有这个高级货啊,偷偷的汗了一下。
* Filesystem checks
  Checking /dev for suspicious files...   [ Warning! (unusual files found) ]
Unusual files:
/dev/srd0:        ASCII text  --> /dev下有ascii文件……
---------------------------- Scan results ----------------------------
MD5
MD5 compared: 51
Incorrect MD5 checksums: 6
File scan
Scanned files: 342
Possible infected files: 3
Possible rootkits: SHV4 SHV5 Suckit Rootkit
Application scan
Vulnerable applications: 4
Scanning took 751 seconds
Scan results written to logfile (/var/log/rkhunter.log)

-----------------------------------------------------------------------

扫完了,来个总结,这个比chkrootkit人性化多了。
我们可以看到,这两个程序报告的有低级的rookkit,比如t0rn,SHV5,还有高级的rootkit:suckit。先看在眼里,别太在意,因为rkhunter和chkrootkit这样的程序都只能检测一些默认安装的rootkit,也不排除把这个rootkit报成那个rootkit的可能。

折腾了一下,心里大概有个数了,回过头来想想,他必定不只替换了一个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 ..


现在我们的程序暂时还是相对比较信得过的。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章