脚本漏洞挖掘技巧,基于工具快速挖掘

Table of Contents

挖掘脚本漏洞和软件漏洞相比来说更容易一些,门槛也很低,不需要掌握汇编、系统原理等等高深知识,只需要掌握脚本,甚至没有编写过 Web 程序,只要能看得懂代码,也就能挖得到洞。如果一个文件一个文件地去看代码,那太烦琐了,而且工程相当大,这里总结了几个以工具来挖掘的方法:

1. Dreamweaver

Dreamweave 做网页是个好东西,挖漏洞更是个好东西,和其他程序比起,我更爱 Dreamweaver,灵活运用它,可以更快地挖出脚本中的漏洞。

挖掘之前,先总结一下一般会出现漏洞的几个接受参数的函数:

ASP 中的就找找 Request….

PHP:$POST、$GET、$REQUEST….

启动 Dreamweaver,选择菜单栏上的“编辑”,选“查找和替换”,如图:

1.jpg

随便去下了个 ASP 程序,以它为例,挖个漏洞出来。

在“查找和替换”对话框中,把“查找范围”选成“文件夹…”,路径就是 Web 程序的路径,然后在“查找”内容里填个 request,点击“查找全部”,看结果如图:

2.jpg

接受来的参数都只过滤了空格,双击打开查看他们的源码,代码如下,很明显出现问题了:

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 好用一些。希望能帮助大家:)