SQLMAP

SQLMap是一款开源的渗透测试工具,专注于SQL注入漏洞。它支持多种数据库,并具备多种注入模式,如联合查询、报错型、布尔型、时间延迟和多语句注入。文章介绍了SQLMap的基本概念、注入模式、入门及进阶使用,如探测等级、管理权限检查、操作系统命令执行等功能。

SQLmap简介:

sqlmap是一种开源的渗透测试工具,可以自动检测和利用SQL注入漏洞以及接入该数据库的服务器。它拥有非常强大的检测引擎、具有多种特性的渗透测试神器、通过数据库指纹提取访问底层文件系统并通过外带连接执行命令。

支持的数据库:MySQL,Oracle, PostgreSQL, SQL Server, Microsoft Microsoft Access, IBM DB2, SQLite, Firebird, Sybase and SAP MAXDB

sqlmap五种不同的注入模式:

UNION query SQL injection(可联合查询注入)

uError-based SQL injection(报错型注入)

uBoolean-based blind SQL injection(布尔型注入)

uTime-based blind SQL injection(基于时间延迟注入)

uStacked queries SQL injection(可多语句查询注入)

SQLMAP入门

这里可以看我另一篇博客

SQL注入流程_xiaomengxin70的博客-优快云博客_sql注入流程

SQLMAP进阶

--level 5:探测等级

探测等级随着等级的变高探测的东西会更更多,不加命令默认探测等级为1,最高为5,。并且随着探测等级越来越高,所需要花费的时间会更多

--level 共有五个等级,sqlmap使用的payload可以在xml/payloads.xml中看到,自己也可以根据相应的格式添加自己的payload。

level>=2的时候就会测试HTTP Cookie。

level>=3的时候就会测试HTTP User-Agent/Referer头。

level=5 的时候会测试HTTP Host

为了保证全面性建议使用更高的探测等级进行他探测

--i-dba:

当前用户是否为管理权限

--roles:

列出数据库管理员角色 用于查看数据库用户的角色,如果当前用户有权限读取包含所有用户的表,该命令会列举出每个用户的角色,也可以用-U参数指定想看哪个用户的角色。(注意:该命令只适用于当前数据库是Oracle的时候)

--referer:

SQLMAP可以在请求中伪造http中的referer(Referer  的正确英语拼法是referrer 。由于早期HTTP规范的拼写错误,为了保持向后兼容就将错就错了。其它网络技术的规范企图修正此问题,使用正确拼法,所以目前拼法不统一。还有它第一个字母是大写。),当探测等级设定为3或以上时,会尝试对referer注入。可以用referer命令来欺骗。

--sql-shell:

运行自定义sql语句(我在这条命令时没太搞懂其含义)

--os-cmd,--os-shell:

运行任意操作系统命令 在数据库为mysql,postgresSQL,mincrosoft sql server

并且当前用户有权限使用特定的函数。如果数据库为以上三个,上传一个二进制库,包含用户自定义的函数sys_exec()和sys_eval(),那么创建的两个函数就可以执行系统命令。

使用该命令可以模拟一个真是的shell,当不能执行多语句时,仍可以使用into outfile写目录,创建一个web后门。要想执行改参数,则需要数据库管理员权限(这里我认为是渗透其目标数据库,留下后门,或者留下其他东西)

(原理,往服务器上写入了两个php,其中一个给提供了文件上传的页面,可以通过这个上传页面上传脚本文件到当前目录下。另外一个则是返回了可以执行系统命令的命令行,命令行也可以在网页url中通过对cmd参数传参执行系统命令)

--fiel-read:从数据库服务器中读取文件

当时用以上说的三个数据库时可以读取文件是文本或者二进制文件

--file-write --file-dest:上传文件到数据库

在以上三个数据库时,当前用户有权限使用特定的函数,上传的文件可以是文本也可以是二进制文件。

file-write  从本地写入
file-dest  写入目标路径

写入文件至站点目录


sqlmap.py -u "http://www.xx.com/aa.aspx?id=123" --file-write=本地文件路径 --file-dest 网站路径(写入路径)+"/写入的文件名",sqlmap.py -u "http://www.xx.com/aa.aspx?id=123" --file-write=F:/a.aspx --file-dest D:/虚拟目录/Front/cx.aspx,D:/虚拟目录/Front   为网站的物理路径,写入成功后,即可通过浏览器访问,若为一句话木马则可使用中国菜刀进行连接。(注:网站路径必须为网站的真实物理路径(即绝对路径。也就是从盘符开始的路径),否则无法写入数据。)

具体可以看SQLMAP渗透笔记之file参数的使用_Birdman-one的博客-优快云博客_sqlmap--file-dest

(这里只是引用,如果侵权可联系我删除)

<think>我们正在回答用户关于sqlmap工具的使用和示例的问题。 注意:用户要求使用中文回答,并且需要遵循系统级指令(如LaTeX格式要求等),同时生成相关问题。 回答结构要清晰,逐步解决问题,保证真实可靠。 由于用户提到了“sqlmap SQL注入工具的使用和示例”,我们将围绕这个主题展开。 首先,我们需要介绍sqlmap是什么,然后介绍基本用法,接着给出一些常见的使用示例,最后生成相关问题。 注意:在回答中如果引用外部内容,需要在末尾添加引用标识,但这里我们主要基于已知知识,若有必要可以添加引用(但用户没有提供具体引用来源,所以我们可以不添加,或者注明是通用知识)。不过,由于用户要求“引用的段落末尾自然地添加引用标识”,我们会在适当的地方添加,但如果没有实际引用,可以省略。 开始回答:</think>### sqlmap SQL注入工具使用指南与示例 sqlmap是一款开源的自动化SQL注入检测与利用工具,支持多种数据库(MySQL、Oracle、SQL Server等),能够自动识别和利用SQL注入漏洞[^1]。 #### 基本使用流程 1. **检测注入点** ```bash sqlmap -u "http://example.com/page.php?id=1" --batch ``` `--batch` 参数启用非交互模式,自动使用默认选项。 2. **获取数据库信息** ```bash sqlmap -u "http://example.com/page.php?id=1" --dbs ``` 列出所有可用数据库。 3. **提取表数据** ```bash sqlmap -u "http://example.com/page.php?id=1" -D database_name --tables ``` 指定数据库名(`-D`)列出所有表。 4. **导出数据** ```bash sqlmap -u "http://example.com/page.php?id=1" -D database_name -T users --dump ``` 导出`users`表的所有数据。 #### 高级功能示例 - **绕过WAF**(使用篡改脚本) ```bash sqlmap -u "http://example.com/page.php?id=1" --tamper=space2comment ``` `space2comment` 脚本将空格替换为`/**/`以绕过过滤。 - **执行操作系统命令**(需DBMS权限) ```bash sqlmap -u "http://example.com/page.php?id=1" --os-cmd="whoami" ``` 通过数据库执行系统命令。 - **自动化攻击** ```bash sqlmap -r request.txt --level=5 --risk=3 ``` 解析`request.txt`中的HTTP请求,`--level=5`启用所有检测技术。 #### 重要参数说明 | 参数 | 功能 | |------|------| | `--technique=T` | 指定注入技术(如B:布尔盲注) | | `--proxy="http://127.0.0.1:8080"` | 通过Burp Suite代理调试 | | `--sql-shell` | 获取交互式SQL shell | | `--file-read="/etc/passwd"` | 读取服务器文件 | > **注意**:仅对授权目标使用,未经授权的测试可能违法[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值