时间:2021-07-01 10:21:17 帮助过:23人阅读
下载地址:https://www.python.org/downloads/
Step2. Python2.7.11安装:
2.1. 直接双击下载好的Python2.7.11安装包,默认,Next;
2.2. 默认,Next;
2.3. 将“Add python.exe to Path"项勾选,勾选后安装完成不再需要单独添加环境变量,默认是“去勾选”的;
2.4.安装完成后,重启系统,查看是否生效,“Win+R”,输入cmd,然后输入python
Step3: SQLMap下载
下载地址:http://sqlmap.org/
Step4: SQLMap安装
4.1. 将下载的SQLMAP安装包解压到文件夹sqlmap中,并拷贝到 "C:\Python27" 目录下;
4.2. 然后在桌面新建立一个cmd的快捷方式,并命名为“SQLMap”;
4.3. 然后在新建快捷方式上右键“属性”,将“起始位置”修改为 C:\Python27\sqlmap,然后确定;
4.4. 双击刚才创建的快捷方式,输入sqlmap.py -h,出现如下信息则表示安装成功。
至此,Over!
由于SQLMap是利用Python语言写的,所以需要将Python这个语言环境给安装上,以下是详细安装过程:
准备工作:
(1) Windows7/8/10操作系统;
(2) Python2.7.11;
(3) SQLMap
Step1. Python2.7.11下载:(注意不要是太新的版本,可能会有兼容问题,我推荐的这个版本就挺好的!!!)
下载地址:https://www.python.org/downloads/
Step2. Python2.7.11安装:
2.1. 直接双击下载好的Python2.7.11安装包,默认,Next;
2.2. 默认,Next;
2.3. 将“Add python.exe to Path"项勾选,勾选后安装完成不再需要单独添加环境变量,默认是“去勾选”的;
2.4.安装完成后,重启系统,查看是否生效,“Win+R”,输入cmd,然后输入python
Step3: SQLMap下载
下载地址:http://sqlmap.org/
Step4: SQLMap安装
4.1. 将下载的SQLMAP安装包解压到文件夹sqlmap中,并拷贝到 "C:\Python27" 目录下;
4.2. 然后在桌面新建立一个cmd的快捷方式,并命名为“SQLMap”;
4.3. 然后在新建快捷方式上右键“属性”,将“起始位置”修改为 C:\Python27\sqlmap,然后确定;
4.4. 双击刚才创建的快捷方式,输入sqlmap.py -h,出现如下信息则表示安装成功。
至此,Over!
然后我翻遍搜索引擎(其实也就找了排名前几的博文),大概了解了下asp的sql注入相关知识点
参考链接:https://www.cnblogs.com/mo-beifeng/archive/2011/05/01/2033818.html
如 果你以前没试过SQL注入的话,那么第一步先把IE菜单=>工具=>Internet选项=>高级=>显示友好 HTTP 错误信息前面的勾去掉。否则,不论服务器返回什么错误,IE都只显示为HTTP 500服务器错误,不能获得更多的提示信息。
判断能否进行SQL注入:
① http://www.19cn.com/showdetail.asp?id=49
② http://www.19cn.com/showdetail.asp?id=49 and 1=1
③ http://www.19cn.com/showdetail.asp?id=49 and 1=2
这就是经典的1=1、1=2测试法了,怎么判断呢?看看上面三个网址返回的结果就知道了:
可以注入的表现:
① 正常显示(这是必然的,不然就是程序有错误了)
② 正常显示,内容基本与①相同
③ 提示BOF或EOF(程序没做任何判断时)、或提示找不到记录(判断了rs.eof时)、或显示内容为空(程序加了on error resume next)
不可以注入就比较容易判断了,①同样正常显示,②和③一般都会有程序定义的错误提示,或提示类型转换时出错。
当然,这只是传入参数是数字型的时候用的判断方法,实际应用的时候会有字符型和搜索型参数。
防范方法
SQL注入漏洞可谓是“千里之堤,溃于蚁穴”,这种漏洞在网上极为普遍,通常是由于程序员对注入不了解,或者程序过滤不严格,或者某个参数忘记检查导致。在这里,我给大家一个函数,代替ASP中的Request函数,可以对一切的SQL注入Say NO,函数如下:
Function SafeRequest(ParaName,ParaType) ‘--- 传入参数 --- ‘ParaName:参数名称-字符型 ‘ParaType:参数类型-数字型(1表示以上参数是数字,0表示以上参数为字符) Dim Paravalue Paravalue=Request(ParaName) If ParaType=1 then If not isNumeric(Paravalue) then Response.write "参数" & ParaName & "必须为数字型!" Response.end End if Else Paravalue=replace(Paravalue,"‘","‘‘") End if SafeRequest=Paravalue End function
其实简单来说,就是通过get传参的页面,接收参数时一定要进行过滤
如果只是简单的数值型,那用 cint() 就好了
提示:官方文档中测试用的语句类似于:
sqlmap.py -u "http://www.xxx.com/newsview.asp?id=1" --batch
如果能够获取到数据,就代表存在漏洞了、
嗯,暂且先这样,等我修改完就给官方大大回复邮件去。
补充:扫描一次之后会在本地留下扫描日志,有可能网站整改完不存在漏洞,但仍然检测出有。需要清空日志
使用Sqlmap扫描SQL注入漏洞时,首次扫描会在SQL的/root/.sqlmap/output/目录下留下
以IP地址为名称的文件夹,如下所示:
而如果该安全漏洞经过修复后,再次使用SQLMAP扫描的时候仍然会出现与首次扫描相同的结果,
原因就是/root/.sqlmap/output/目录下存在之前的扫描记录,因此受到了影响。
解决方法就是删除对应的扫描记录。
我收到了互联网应急中心的通报!记sqlmap的正确打开方式。
标签:需要 lazy 忘记 download 本地 引擎 双击 ace 邮件