Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

了解你的敌人IIII

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

  Know Your Enemy:

  A Forensic Analysis

  一次攻击的学习

  Honeynet Project

  http://project.honeynet.org

  http://www.xfocus.org

  Last Modified: 23 May 2000

  此文章是Know Your Enemy系列,前三篇文章涵盖了关于black-hat团体所使用的工具和策略,这文章的目的是怎样一步步成功攻击系统的,这里的重点是在我们怎样知道发生的攻击者和获得信息。也提供你一些分析和熟悉你自身系统上存在的威胁。这里也有一在线,交互的版本发布在MSNBC上。

背景

  此文信息通过honeypot获得,这里的Honeypot安装在REDHAT6.0上,REDHAT是默认的服务安装,所以讨论的漏洞存在在任意默认安装的REDHAT系统上。而且所有数据没有被处理过。下面分析的所有IP地址,用户帐号,和击键的信息是真实的,除了密码信息,这样是为了更直接的了解整个过程。所有SNIFF信息是通过SNORT格式体现的;SNORT是一个常用的嗅探器,对于检测系统入侵分析来说是一个不错的工具,我使用了在http://www.whitehats.com/上的MAX VISION 的IDS特征。你可以在arachNIDS数据库中查更多有关在此文章中的所有警告信息。你可以在这里找到我的SNORT配置信息和特征文件,包括我使用的命令行选项。

攻击行为

  在四月26号,snort提醒我其中的一个系统正受到一个'noop'攻击,信息包装载包含noops的信息,在此情况下,SNORT探测到攻击和记录了警告信息到/var/log/messages文件中(使用swatch来监控),注意这文中172.16.1.107的IP地址是含有honeypot的机器,其他的地址是black-hat(黑帽子)使用的IP地址。


Apr 26 06:43:05 lisa snort[6283]:
IDS181/nops-x86: 63.226.81.13:1351 -> 172.16.1.107:53 

  我的honeypots每天接受无数探测,扫描和查询,而且下面的一个警告信息使我注意到其中一个系统可能被破坏,下面的系统LOG信息指示攻击者正开始了一个连接和LOGIN了系统:


Apr 26 06:44:25 victim7 PAM_pwdb[12509]: 
(login) session opened for user twin by (uid=0) 
Apr 26 06:44:36 victim7 PAM_pwdb[12521]:
(su) session opened for user hantu by twin(uid=506) 

  从上面的情况可以看到,入侵者已经获得超级用户权利和控制了整个系统,但这是怎样完成的呢,我们下面开始分析:

分析

  当分析一攻击的时候,最好的位置是在开始端,即攻击者是从哪里开始的,攻击者一般开始是收集系统信息,可以让他获得系统所存在的漏洞,如果你的系统被破坏,这就表明攻击者不是第一次与你的系统通信了,大多数攻击者必须通过对你系统的连接获得初始化的信息。

  所以我们从最开始的信息收集开始,从第一条信息可以知道攻击初于53端口,这表示在我们系统上发动了一个DNS攻击,所以我通过我的snort alerts来发现一些DNS可能的信息探测,我们发现一DNS版本查询探测的信息:


Apr 25 02:08:07 lisa snort[5875]: 
IDS277/DNS-version-query: 63.226.81.13:4499 -> 172.16.1.107:53 
Apr 25 02:08:07 lisa snort[5875]: 
IDS277/DNS-version-query: 63.226.81.13:4630 -> 172.16.1.101:53 

  注意,这个探测日期是4月25日,我们系统被攻击是在4月26号,系统是在被探测后的一天被入侵的,所以我猜测攻击者是使用一些扫描器扫描出一些关于DNS漏洞的信息,扫描以后,攻击者查看扫描结果,获得系统漏洞信息,然后启用他们的EXPLOIT。这样我们可以得到如下结论:在4月25号被检测后,后一天被侵入,通过我们的IDS警告,我们获知我们是被DNS漏洞攻击。

The Exploit 

  类似于大多数商业IDS系统,snort可以显示我们所有IP信息包装载数据,我们就使用这功能来分析EXPLOIT,这个EXPLOIT信息可以从snort的LOG记录获得(存储在tcpdump两进制格式)。我查询snort的LOG记录并开始分析攻击开始时候的信息包,我没有把信息限制在仅查询主机63.336.81.13,主要是因为攻击者使用三个不同系统来运行这个EXPLOIT,这个EXPLOIT的目标是在远程主机上获得ROOT SHELL,一旦攻击者获得ROOT SHELL,他们可以以ROOT身份运行所有命令,还通常会在/etc/passwd和/etc/shadow文件中增加帐号,下面的细节中是获得ROOT SHELL后执行的一些命令:


cd /; uname -a; pwd; id; 
Linux apollo.uicmba.edu 2.2.5-15 #1 
Mon Apr 19 22:21:09 EDT 1999 i586 unknown 
/ 
uid=0(root) gid=0(root) groups=0(root),1(bin),
2(daemon),3(sys),4(adm),6(disk),10(wheel) 
echo "twin::506:506::/home/twin:/bin/bash" >> /etc/passwd 
echo "twin:w3nT2H0b6AjM2:::::::" >> /etc/shadow 
echo "hantu::0:0::/:/bin/bash" >> /etc/passwd 
echo "hantu:w3nT2H0b6AjM2:::::::" >> /etc/shadow 

  从上面可以知道,攻击者运行了uname -a 查询了系统,和PWD查询当前目录,和ID查看UID,并增加了twin和hantu两个帐号,使用了相同的密码,必须注意,twin使用了UID为506,而hantu使用了UID为0(另一方面hantu是印度尼西亚语言中的鬼魂的意思),要知道,大多数系统中不允许UID为0的帐号远程TELNET,所以起建立了一个可以远程TELNET的帐号,并建立了以后可以SU到ROOT的帐号。在90秒内攻击者利用了EXPLOIT程序进入系统,并获得ROOT权利(可以通过下面的LOG记录)



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:了解你的敌人:蠕虫战   下一篇:了解你的敌人III

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章