绝对干货-SqlMap绕过waf

admin 2022年4月9日23:57:09评论1,405 views字数 1388阅读4分37秒阅读模式

一、前言

sqlmap是一款常用的注入工具。因其方便性,可拓展性而闻名。不需要你会强大的开发知识,只需要设置几个简单的参数即可。而在注入测试的过程中,常常会遇见waf的拦截,今天就介绍几个我常用的简单的绕过waf的姿势,希望大家对大家有所帮助。


二、绕过

2.1 使用参数绕过

SqlMap工具中,有一些参数对我们绕过waf有很大的帮助。这里举几个常用的参数。

2.1.1 --delay

许多waf会对流量进行检测,若测试的速度太快会导致封IP,这个参数设置发包的速度,降低被拦截的几率

例如:“--delay 1”,延时1秒


2.1.2 --random-agent

sqlmap默认发的包中的header头中的agent是:sqlmap/0.9 (http://sqlmap.sourceforge.net),而有的waf对此设置了专门的拦截,使用“--random-agent”这个参数sqlmap会从字典中随机取一个agent伪造,从而绕过waf的拦截

例如:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; de) Opera 8.0


2.1.3 --user-agent

这个与上面的“--random-agent”意思差不多。有的waf对于百度和谷歌的扫描收录爬虫有特别的策略,使得我们可以伪造百度或谷歌的爬虫agent,达到不会被拦截的效果。

例如:--user-agent “Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)”


2.1.4 --proxy

若是被封IP,还可以使用代理进行注入测试。

例如:“--proxy=123.123.123.123:8888”


2.2 使用脚本绕过

sqlmap工具提供了很多的拓展脚本,在注入测试中可以添加参数:“--temper=xxx.py”,调用xxx.py脚本。这里举例几个通用常用的脚本。更多的脚本大家可以搜索一下,网上有很多。

2.2.1 apostrophemask.py

用utf-8代替引号,例如:“1 and '1'='1#”=“1 and %EF%BC%871%EF%BC%87=%EF%BC%871#”


2.2.2 base64encode.py

用base64编码替换,例如:“1 and '1'='1#”=“MSBBTkQgJzEnPScxIw==”


2.2.3 multiplespaces.py

在SQL语句的关键字旁边添加多个空格,例如:“1 and union select 1#”=”1 and  union   select 1#”


2.2.4 space2plus.py

用+代替空格,例如:“1 and 1=1#”=“1+and+1=1#”


三、结语

绕过 waf 的姿势还有很多很多,持续总结中。这里我为大家找到一篇 sqlmap 详细全面的笔记,相信看完你会学到很多东西:

https://www.cnblogs.com/bmjoker/p/9326258.html

公众号已经将已发布资料和工具打包好了,关注公众号点击“资料领取”,就可以获取了,后续会更新更多资源,谢谢各位客官支持。


更多文章请关注公众号:星河疯客admin

绝对干货-SqlMap绕过waf

万水千山总是情,点赞再走行不行的(ง •_•)ง

原文始发于微信公众号(星河疯客admin):绝对干货-SqlMap绕过waf

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月9日23:57:09
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   绝对干货-SqlMap绕过wafhttps://cn-sec.com/archives/880864.html

发表评论

匿名网友 填写信息