个人说明:写出来的目的更多的是为了能够让大家指点一下我的这篇文章那里有错误。。希望大家能够多多指点,。。让我的这篇文章能够更专业一点。。。。谢谢大家了。
giffer用远古VOD影视点播系统已经有一段时间了,非常钦佩远古科技所开发的无缓冲技术。但是自从giffer用了网上流行的VOD 5.0 后,就出现了一系列的问题。比如点播系统后台管理员密码被多次更改,百兆的带宽被别人疯狂盗链。引用鲁迅先生的一句话就是“其实地上本没有路,走的人多了,也就成了路”,对于这套系统来说,就是“其实系统本没有漏洞,研究的人多了,也就有了漏洞”。今天主要说一下远古的一个注入漏洞。
其实我的这篇文章得益于网上已经有的一篇文章:
http://hi.baidu.com/giffer/blog/item/56f0b68f8c0662ecf01f36e7.html
但是网上这篇文章只是告诉大家有这样一个漏洞,如何去利用漏洞,如何去体会漏洞对远古VOD系统的危害。还写的是远远不够的,毕竟不是所有人都懂注入的。而且不知道哪位高手写这篇文章的时候把xtree.asp这个文件的内容写了两份(估计是CTRV+V了两下)。结果网上转载的都是成了这样。
其实xtree.asp这个文件的漏洞是在传递变量上,也就是其中的一句话:
<!--#include file="../dbcon.inc.asp"
<%
iNode_ID = Request.QueryString("id") 就是这句了
if Len(Session("SuperAdmin")) > 0 or Len(Session("LIVEAdmin")) > 0 or Len(Session("VODAdmin")) > 0 then
szSQL = "SELECT Type_ID,ParentID,TypeName FROM TypeInfo WHERE Type_ID>=20 AND ParentID=" & iNode_ID
接下来我们看一下如何利用这个漏洞。
使用工具:啊D注入工具
注入地址:http://192.168.1.86/webmedia/common/function/xtree.asp?id=1 (以我本地为测试)
注入步骤如下图:
接下来,我们进行简单的处理,来看是否还有注入漏洞。
处理方法:数据类型转换,本应传递的是数字,因为没有进行数字转换,而引起致命漏洞
以下为引用的内容: iNode_ID = Request.QueryString("id") 处理后 iNode_ID = Clng(Request.QueryString("id")) |
处理结果:我们再来测试一下是否还有注入漏洞。如图所示:
