一、简介
SQLmap 是一款用 Python 编写的开源渗透测试工具,用来自动检测和利用 SQL 注入漏洞。
二、Windows 下安装
2.1 安装 Python 环境
注:Python 3.0会出错 , Python>=2.6 且 <3.0
按步骤下载安装完成后,在 PATH 环境变量的系统变量中加入 Python 路径。
2.2 安装 SQLmap
GitHub下载:https://github.com/sqlmapproject/sqlmap/zipball/master
官方网站:http://sqlmap.org/
下载安装后解压即可。
2.3 配置
将解压后的 SQLmap 文件复制到 Python 文件夹根目录下,创建 SQLmap.py 的 cmd 快捷方式。
右击 sqlmap.py 快捷方式 ---> 属性 -----> 目标更改为 %windir%\system32\cmd.exe
打开快捷方式,输入 sqlmap.py 运行,安装完成。
三、使用
sqlmap支持五种不同的注入模式:
1、基于布尔的盲注 // 返回真或假
2、基于时间的盲注
3、基于报错注入
4、联合查询注入
5、堆查询注入
基本格式: sqlmap.py [options]
sqlmap.py -h 可查看选项列表,-hh 可查看更高级选项列表。
SQLmap命令选项被归类为options(选项)、Target(目标)、Request(请求)、Injection(优化)、注入、检测、Techniques(技巧)、指纹、枚举等。
3.1 SQL 手工注入
get 与 post 请求注释符的区别:
由于 HTTP请求的转义,请求到后端 sql 语句时拼接就可能会不同。