了解最新公司动态及行业资讯
ID:-
本文通过一个案例来介绍一个戒烟后处理的思路和过程。 是体制下最常用的手段和方法。
1、被电击现象
这是托管在中国联通机房的客户门户网站。 客户收到联通通知:因公司不断对外发送数据包,100MB带宽用完,联通断网。 本次安装的是5.5版本的系统,对外开放了80和22端口。
我从客户那里了解到,网站访问量不多,所以带宽占用不会太高,绝对不可能用完100MB带宽,所以很有可能是被流量了,所以我登录做了一个详细的检查。
二、初步分析
在联通人员的配合下,我们测量了网络流量,发现80端口确实有外部扫描流量,于是我们登录系统,通过-an命令查看系统开放的端口。 奇怪的是,没有检测到与端口 80 相关的网络连接。 然后用ps-ef、top等命令也没有发现什么可疑的地方。 因此怀疑系统可能已被植入。
为了验证系统是否被植入,我们用之前备份的同版本可信操作系统命令对网站下的ps、top等命令进行了校准,发现网站下的这两条命令确实被改动了, 所以我们可以推断 , 已经安装, 和程序的安装级别。
3、断网分析系统
因为它一直在往外发包,所以首先要做的就是断网,然后分析系统日志寻找源头。 并且系统命令已经被替换,如果继续对这个系统进行操作,就会显得不可信。 有两种方法可以防止这些情况。 第一种方法是把硬盘取出来,挂载到另一个安全的硬盘上进行分析。 另一种方法是从相同版本的受信任操作系统复制它。 所有的命令都到这个平台下的某个路径下,然后在执行命令的时候指定这个命令的完整路径。 这是第二种方法。
首先查看系统的登录日志,看是否有可疑的登录信息,执行如下命令:
更多/var/log/|grep
通过查看命令输出,有一条日志引起了我们的怀疑:
:10:[20701]:.17.163.
该日志显示,10月3日下午3点10分,一个IP地址为62.17.163.186的邮件账号成功登录系统。 Mail是系统的外部账号,默认登录操作失败。 经核实,62.17.163.186的IP是来自爱尔兰的地址。 从邮件账号的登录时间来看,早于该网站被攻击的时间。
然后查看系统文件/etc/,发现可疑信息:
邮件:$1$$X1:15400:0:99999:7:::
很明显,邮件账号已经设置好了,只是改成可以登录了。之所以使用邮件账号,推测是用户想留下一个隐藏账号,方便登录系统以后再来。
然后继续查看其他系统日志,比如/var/log/、/var/log/wtmp等都是空文件。 可见作者已经清除了系统日志文件。 至于为什么/var/log/文件没有被清除,不清楚 明白了。
4.找到攻击源
至此,我们知道的是之前有一个邮件账号登录过系统,为什么这个网站会不断的向外界发送数据包呢? 必须找到对应的来源,并在其上替换ps命令用于查看系统当前运行情况,发现新的疑点:
Sep29?4-00:11:58.t
.t 程序是什么? 继续执行top命令,结果如下:
%CPU%+.391.52892:19.t
从输出可以看出这个t程序已经运行了4天左右,用户正在运行这个程序,但是这个t程序消耗了大量的显存和CPU,这也是导致异常流畅的原因客户之前报告的网站。 根据这个输出,我们得到t程序的PID为22765,拿出来根据PID找到执行程序的路径。
进入显存目录,查看对应PID目录下的exe文件信息:
[root@~]#/mnt/bin/ls-al/proc/22765/:09/proc/22765/exe->/var/tmp/.../apa/t
这样就找到了对应的完整程序执行路径。 这个路径非常隐蔽,因为/var/tmp目录默认是任何用户都可以读取的,而作者就是利用这个在/var/tmp目录下创建了一个“...”,程序源码就隐藏在这个目录。 进入/var/tmp/.../目录,找到笔者放置的一系列文件,列表如下:
[root@...]#/mnt/bin/ls-al
drwxr-xr-:09apa
-rw-r--r--:09apa.tgz
drwxr-xr-:
drwxr-xr-:09哈哈
-rw-r--r--:10kk.tar.gz
-rwxr-xr-:10登录
-rw-r--r--:.tgz
-rwxr-xr-:10z
通过分析那些文件,基本可以推断出这就是我们要找的程序源,其中:
1)z程序用于清理系统日志等相关信息,如执行:
./z62.17.163.186
执行该命令后,系统中所有与62.17.163.186相关的日志将被彻底清除。
2)apa目录下有一个程序t,就是之前在系统中看到的程序。 运行这个程序后,这个程序会手动读取apa目录下的ip文件,ip文件记录了各种ip地址信息。 据推测,这个t程序应该扫描ip文件中记录的所有ip信息,以获得权限。 可见,该网站长期以来一直深受广大读者的喜爱。
3)haha目录下放置的程序是用来替换系统相关命令的,也就是说这个目录下的程序让我们很难看到操作系统的异常情况。
4)登录程序是用来替代系统登录程序的程序。 本程序还可以记录登录帐号和密码。
5.查找攻击原因
至此,网上发生的事情已经基本清楚,而攻击者是如何入侵本站的呢? 这个问题很重要,必须找到症结,才能从根本上堵住。
为了弄清楚用户是如何介入的,有必要了解这里的软件环境。 这是一台基于 . 因为端口不对外开放,所以问题集中在内部。
通过查看配置,发现只处理了部分静态资源请求,而且大部分网页都是静态页面,所以不太可能使用网页模式系统。 既然可能来自,那么如果你尝试通过这种方式查看日志,其实可以发现一些可疑的访问痕迹。 通过查看.log文件,发现如下信息:
62.17.163.186--[29/Sep/2013:22:17:06+0800]"GET|echo;echo;ps+-/1.0""-""/5.0(;U;NT5.1;pt- BR;rv:1.8.1) 壁虎//2.0"
62.17.163.186--[29/Sep/213:22:17:35+0800]"GET|echo;echo;cd+/var/tmp/.../haha;ls+-aHTTP/1.0""-"" /5.0(;U;NT5.1;pt-BR;rv:1.8.1)壁虎//2.0"
到目前为止,发现的症结最初是 .pl 脚本之一。 了解了这个的应用后,客户确实使用了一个开源的插件来做网页访问统计。 通过这个,用户可以直接在浏览器上进行操作服务器运维,比如查看服务器运维,创建目录等。从里面的第二条日志可以看出,用户在普通浏览器中切换到了/var/tmp/.../haha目录执行。
这个脚本很烂,但是官网上已经给出了修复方法。 为此,打补丁的方法非常简单。 打开.pl文件,找到如下信息:
如果 ($=~/=([^&]+)/i)
{
$=&("$1");
}
将其更改为以下内容:
如果 ($=~/=([^&]+)/i)
{
$=&("$1");$=~tr/a-z0-9_-/./a-z0-9_-/./cd;
}
6.解谜
通过上面的逐步分析和介绍,这次相遇的原因和过程早就很清楚了。 大致流程如下:
1)用户通过脚本.pl文件进入系统,在/var/tmp目录下创建一个隐藏目录,然后将文件传送到该路径下。
2)攻击者通过植入程序,获得了系统的超级用户权限,从而控制了这台电脑,并通过这台电脑向外发送数据包。
3)作者的IP地址62.17.163.186可能是代理过来的,也可能是作者控制的其他人。
4) 用户为了永久控制本机,更改了系统默认帐号mail的信息,更改了邮件帐号登录,但是设置了邮件帐号。
5)完成后,作者通过程序手动清除了系统访问日志,销毁了证据。
通过对这个过程的分析,发现者的方法是非常简单和通用的。 虽然攻击者删除了部分系统日志,但仍然留下了很多可查的痕迹。 虽然您也可以查看 . 用户下的文件,这个文件是用户操作命令的历史记录。
七、如何恢复网站
由于系统已经被改换过,系统已经完全不可信任,所以建议备份网站数据,重装系统。 基本步骤如下:
1)安装稳定版操作系统,删除系统默认和不需要的用户。
2) 系统登录表单改为私钥认证方式,避免了认证的缺陷。
3) 安装更高版本和最新的稳定版程序。
4)使用以下限制登录的源地址。
是系统下比较常用的方法,虽然这种比较是防不胜防的,而且已经有很多可测量的工具,比如,等等,可以用来测量系统是否被感染。