我的一个朋友告诉我,说他们在访问自己公司网站时,出来一大堆东西,而且杀毒软件还提示网页存在病毒, 我的第一感觉就是公司服务器被人入侵了。
(一)网站挂马检测和清除
1.使用软件嗅探被挂马页面
朋友将远程终端和公司网站名称告诉我后,我首先在虚拟机中使用URLSnooper软件对网站进行嗅探,果然网站多处文件被人挂马,如图1所示。登陆远程终端后,一看其服务器配置较高,带宽是20M光纤,访问网络的速度非常快,觉得是高质量肉鸡的首选,也难怪被人黑。
图1 使用URLSnooper监听网站所有链接和访问
说明:
(1)URLSnooper是一款安全检查工具,就其名称意义就知道该软件是URL监视,个人感觉是一款捕捉网站是否挂马的好程序。URLSnooper安装比较简单,安装完毕后需要安装默认的抓包软件。
(2)确认网站被人挂马后,首先将网站文件进行了备份。
直接到网站根目录查看网站文件的最近的一些修改时间,从首页更改的时间为8月25日,因此可以借助系统的文件搜索功能搜索2008年8月24日至8月26日之间的文件,如图2所示,搜索出来好几十个文件,被修改文件很有特点,index.html、index.asp、conn.asp、top.asp、foot.asp以及js文件均被修改,从文件中可以看出该挂马人绝对是一个团伙或者是一个老手,他不是对所有文件进行挂马,而是有针对性的对一个关键文件进行挂马。
图2 查找被修改的网站文件
2.清除挂马代码
将其清除。
(二)系统入侵痕迹搜索和整理
1.查看入侵者遗留在系统中的痕迹
对系统目录以及服务器所有目录进行文件查看,发现该入侵者使用过"1433全自动扫描传马工具"。通过对该工具软件的研究分析,该扫描工具中需要有配置文件,用来下载木马。果不其然,在系统目录下发现有一个文件cc1.txt生成日期是2008年5月29日,大小只有64个字节,用type命令显示如下:
该文件是FTP自动下载的配置信息,直接使用CuteFTP软件进行ftp登陆尝试,填好IP地址和帐号密码,顺利登录如图3所示!从服务器上的东西不难看出,这台机器的FTP路径是Windows系统某个磁盘的根目录,里面有不少黑客用的工具,机主肯定是一个入侵者或者安全爱好者。
图3 成功登陆Ftp服务器
说明:
很多入侵者在利用网上下载的工具时,没有很好地设置和改造,只是进行简单的配置后,便开始攻击和入侵。因此,在肉机上经常留下各种木马的安装文件,有时甚至还有FTP自动上传文件的配置文件。可以使用"dir /od /a" 命令查看当前目录中的文件,如果存在小于100字节的文件,则这些文件极有可能为配置文件。
用扫描工具软件查看以下该计算机开放哪些端口,如图4所示,系统开放了80端口和远程终端服务3389端口。
(三)利用社会工程学进行反渗透
1.使用获取的Ftp账号猜测服务登陆口令
既然在服务器上面开放了3389端口、Ftp服务,那么可以尝试利用FTP的帐号和口令登录它的3389远程桌面,猜测administrator的口令,结果不是gusdn,也不是lixuanxu,说明使用Ftp账号和口令不能进入系统,换一个思路。
2.从网站入手
接下来,使用IE浏览器打开该IP地址,可以正常访问网站,该服务提供了Web服务,网站为游戏私服服务器,如图5所示,通过HDSI以及Domain3.5等SQL注入工具对网站进行了探测,未找到可以利用的地方。
图5 服务器提供web服务
3.从Ftp目录入手
猛然想起在FTP的目录中有一个web子目录,会不会与网站有关系呢?先上传个asp木马到web目录试试。不试不知道,一试吓一跳,这个目录居然正是网站的根目录, asp小马可以正常运行,如图6所示,通过asp木马在网站中看了看,发现可以浏览所有磁盘,不过只有D盘有写权限。经过与FTP中的文件进行对比,FTP的根目录也就是D盘。
图6 上传Asp木马
好了,现在既可以上传文件,也可以浏览文件。要想提升权限,还必须要能执行命令。我上传了一个asp的cmd木马到web目录,结果竟然不能执行。继续利用asp木马在机器上找找其它的突破口,结果一无所获。FTP不是用Serv-U开的,C盘不可写,不能执行命令,怎么办?
4.上传Asp.net木马提升系统权限
忽然想起用3389登录这台机器时,它的操作系统是2003,可能支持asp.net,我为什么不上传个aspx的CMD的木马试试。说干就干。果然,aspx木马能执行命令了,如图7所示。查看机器的用户列表,居然没有administrator却有个xuanyu,而FTP的口令是lixuanyu,一定是管理员把超级用户改名过来的。它的口令会是什么呢?还是用3389登录器测试一番,不是gusdn,不是lixuanyu,更不是12345678,猜不出来了。
图7 使用asp.net木马查看系统管理员账号
5.获取数据库用户管理员密码
按照密码设置习惯,入侵者极有可能使用了相同密码,因此可以尝试获取数据库中用户的密码来登陆远程终端服务器。使用CuteFtp对整个网站目录中的文件进行查看,在TT目录中发现数据库文件"$_$%●yingzi★!#%&^$#.asa",使用FTP下载回来后,把文件的后缀改为mdb,使用access直接打开该数据库,如图8所示,从中找到管理员使用的表Gq_Admin。
如图8所示,获取管理员表Gq_Admin
从表Gq_Admin中发现存在gusdn用户,并且是个高级管理员,他的密码用MD5加密后是5334e6dd7b8exxxx。赶紧打开网页www.cmd5.com,填好16位密码,解密! Ok,不到1分钟密码出来了,12703XXX,如图9所示。
图9 获取用户的密码
6.再次登陆远程终端
直接打开远程终端连接器,在其中输入用户名"xuanyu",密码"12703XXX",然后单击"连接",很快成功进入该计算机,如图10所示。
图10 成功进入入侵者计算机服务器
7.查看入侵者服务器
使用systeminfo工具查看系统的详细情况:
几天后,这台机器的FTP服务没有了,网站也从122.138.14.8搬到了122.138.14.4,并且只能用域名www.sow2i.com来登录了。不过,它们的3389还都是有的,而且两台机器的帐号和口令都是一样的。这样,成功渗透第二台计算机,在计算机上面给了一个警告,呵呵,当然彻底的查看了该计算机上面的所有资料。
(四)总结
网络安全与维护是攻击与防护的对立统一,好的攻击就是好的防护,从挂马的计算机中中获取的痕迹,反过来渗透到入侵者的计算机,也不是不可能的事情。回想反渗透入侵者的服务器过程中,突破口只是一个FTP口令,接下来从网页木马到数据库下载,从MD5的管理员口令到主机用户口令,最后实现了3389的远程桌面登录。整个过程并没有多少技术含量,就是因为入侵者的疏忽大意,结果被反渗透!因此在网络管理与维护过程中,碰到问题不要害怕,仔细分析,合理利用每一个掌握的信息,极有可能发生意想不到的事情,让我们在网络维护过程中享受工作的乐趣。