脚本漏洞挖掘技巧,基于工具快速挖掘
Table of Contents
挖掘脚本漏洞和软件漏洞相比来说更容易一些,门槛也很低,不需要掌握汇编、系统原理等等高深知识,只需要掌握脚本,甚至没有编写过 Web 程序,只要能看得懂代码,也就能挖得到洞。如果一个文件一个文件地去看代码,那太烦琐了,而且工程相当大,这里总结了几个以工具来挖掘的方法:
1. Dreamweaver
Dreamweave 做网页是个好东西,挖漏洞更是个好东西,和其他程序比起,我更爱 Dreamweaver,灵活运用它,可以更快地挖出脚本中的漏洞。
挖掘之前,先总结一下一般会出现漏洞的几个接受参数的函数:
ASP 中的就找找 Request….
PHP:$POST、$GET、$REQUEST….
启动 Dreamweaver,选择菜单栏上的“编辑”,选“查找和替换”,如图:
随便去下了个 ASP 程序,以它为例,挖个漏洞出来。
在“查找和替换”对话框中,把“查找范围”选成“文件夹…”,路径就是 Web 程序的路径,然后在“查找”内容里填个 request,点击“查找全部”,看结果如图:
接受来的参数都只过滤了空格,双击打开查看他们的源码,代码如下,很明显出现问题了:
Dim adminname,password,pass adminname = Trim(Request("adminname")) '// 这里没有过滤 password = Trim(Request("password")) '// 这里也没过滤 pass = Trim(Request("pass")) if password <> pass then ReturnError("超作错误,两次密码输入不相同!") end if Sql="Select * From [admin] " '// 数据库操作 Set Rs = Server.CreateObject("Adodb.Recordset") Rs.Open Sql,Conn,1,3,1 If adminname <> "" Then Rs("adminname") = adminname If password <> "" Then Rs("password") = md5(password) Rs.Update Rs.Close:Set Rs=Nothing ReturnOK("修改管理帐号密码成功,下次登录请用新帐号/密码进行登录。")
PHP 的方法也一样,只是查找的内容不一样而已。
2. PHP Bugscan
3. Mscasi
这个是微软出的,针对 ASP 的,不过觉得此软件不怎么样,我扫了好几个有漏洞的都没扫出来,而且还是基于 .NET 的。 见此文:http://luanx.blogbus.com/logs/30925417.html 下载地址: http://www.microsoft.com/downloads/details.aspx?FamilyId=46E-A599-4FCB-9AB4-A4334146B6BA&displaylang=en
4. Php Vulnerability Analyzer
07年在杂志上看到介绍的,专门用于挖 PHP 程序中的漏洞的,好象挺不错的,但我没有用过,也是基于 .NET 环境的。 下载地址:http://www.3800hk.com/Soft/zhly/22407.html
5. PHP X-CODE BUG SCAN
这个程序也不错,用来挖 PHP 中的漏洞的,推荐大家使用使用。
这里只详细介绍了 Dreamweaver,其他程序都差不多的,就不一一介绍了。感觉还是 Dreamweaver 好用一些。希望能帮助大家:)