Bypass D盾_IIS防火墙SQL注入防御(多姿势)
0X01 前言
D盾_IIS防火墙,目前只支持Win2003服务器,前阵子看见官方博客说D盾新版将近期推出,相信功能会更强大,这边分享一下之前的SQL注入防御的测试情况。D盾_IIS防火墙注入防御策略,如下图,主要防御GET/POST/COOKIE,文件允许白名单设置。构造不同的测试环境,IIS+(ASP/ASPX/PHP)+(MSSQL/MYSQL),看到这边的策略,主要的测试思路:
a、白名单 b、绕过union select或select from的检测

0X02 IIS+PHP+MYSQL
搭建这个window2003+IIS+php+mysql,可花费不少时间,测试过程还蛮顺利的,先来一张拦截图:

绕过姿势一:白名单
PHP中的PATH_INFO问题,简单来说呢,就是
http:/x.x.x.x/3.php?id=1 等价于 http://x.x.x.x/3.php/xxxxxxxxxxxxx?id=1
从白名单中随便挑个地址加在后面,可成功bypass,http://10.9.10.206/3.php/admin.php?id=1 union select 1,2,schema_name from information_schema.SCHEMATA
经测试,GET、POST、COOKIE均有效,完全bypass

绕过姿势二:空白字符
Mysql中可以利用的空白字符有:%09,%0a,%0b,%0c,%0d,%20,%a0;
测试了一下,基本上针对MSSQL的[0x01-0x20]都被处理了,唯独在Mysql中还有一个%a0可以利用,可以看到%a0与select合体,无法识别,从而绕过。
id=1 union%a0select 1,2,3 from admin

绕过姿势三:\N形式
主要思考问题,如何绕过union select以及select from?
如果说上一个姿势是union和select之间的位置的探索,那么是否可以考虑在union前面进行检测呢?
为此在参数与union的位置,经测试,发现\N可以绕过union select检测,同样方式绕过select from的检测。
id=\Nunion(select 1,schema_name,\Nfrom information_schema.schemata)

0X03 IIS+ASP/ASPX+MSSQL
搭建IIS+ASP/ASPX+MSSQL环境,思路一致,只是语言与数据库特性有些许差异,继续来张D盾拦截图:

绕过姿势一:白名单
ASP: 不支持,找不到路径,而且D盾禁止执行带非法字符或特殊目录的脚本(/1.asp/x),撤底没戏了
/admin.php/../1.asp?id=1 and 1=1 拦截
/1.asp?b=admin.php&id=1 and 1=1 拦截,可见D盾会识别到文件的位置,并不是只检测URL存在白名单那么简单了。。。
ASPX:与PHP类似 /1.aspx/admin.php?id=1 union select 1,'2',TABLE_NAME from INFORMATION_SCHEMA.TABLES 可成功bypass

绕过姿势二:空白字符
Mssql可以利用的空白字符有:01,02,03,04,05,06,07,08,09,0A,0B,0C,0D,0E,0F,10,11,12,13,14,15,16,17,18,19,1A,1B,1C,1D,1E,1F,20
[0x01-0x20]全部都被处理了,想到mysql %a0的漏网之鱼是否可以利用一下?
ASP+MSSQL: 不支持%a0,已放弃。。。
ASPX+MSSQL: %a0+%0a配合,可成功绕过union select的检测
id=1 union%a0%0aselect 1,'2',TABLE_NAME %a0from INFORMATION_SCHEMA.TABLES

绕过姿势三:1E形式
MSSQL属于强类型,这边的绕过是有限制,from前一位显示位为数字类型,这样才能用1efrom绕过select from。
只与数据库有关,与语言无关,故ASP与ASPX一样,可bypass,id=1eunion select '1',TABLE_NAME,1efrom INFORMATION_SCHEMA.TABLES

0X04 END
不同语言,中间件,数据库,所对应的特性有些差异,思路却一致,实践出真知,只要动手去探索,还有更多姿势等待被挖掘。
目前的测试成果,可成功bypass注入防御,如 安全狗、云锁、360主机卫士、D盾_IIS防火墙等主机防护软件及各种云waf,有些姿势都在用。
最后
欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。

Bypass D盾_IIS防火墙SQL注入防御(多姿势)的更多相关文章
- 21. Bypass D盾_防火墙(旧版 and 新版)SQL注入防御(多姿势)
D盾旧版: 00前言 D盾_IIS防火墙,目前只支持Win2003服务器,前阵子看见官方博客说D盾新版将近期推出,相信功能会更强大,这边分享一下之前的SQL注入防御的测试情况.D盾_IIS防火墙注入防 ...
- Bypass ngx_lua_waf SQL注入防御(多姿势)
0x00 前言 ngx_lua_waf是一款基于ngx_lua的web应用防火墙,使用简单,高性能.轻量级.默认防御规则在wafconf目录中,摘录几条核心的SQL注入防御规则: select.+ ...
- 23. Bypass ngx_lua_waf SQL注入防御(多姿势)
0x00 前言 ngx_lua_waf是一款基于ngx_lua的web应用防火墙,使用简单,高性能.轻量级.默认防御规则在wafconf目录中,摘录几条核心的SQL注入防御规则: select.+(f ...
- Bypass 360主机卫士SQL注入防御(附tamper脚本)
0x01 前言 在测试过程中,经常会遇到一些主机防护软件,对这方面做了一些尝试,可成功bypass了GET和POST的注入防御,分享一下姿势. 0x02 环境搭建 Windows Server 200 ...
- Bypass 护卫神SQL注入防御(多姿势)
0x00 前言 护卫神一直专注服务器安全领域, 其中有一款产品,护卫神·入侵防护系统 ,提供了一些网站安全防护的功能,在IIS加固模块中有一个SQL防注入功能. 这边主要分享一下几种思路,Bypa ...
- Bypass 360主机卫士SQL注入防御(多姿势)
0x00 前言 在服务器客户端领域,曾经出现过一款360主机卫士,目前已停止更新和维护,官网都打不开了,但服务器中依然经常可以看到它的身影.从半年前的测试虚拟机里面,翻出了360主机卫士Apache版 ...
- Bypass X-WAF SQL注入防御(多姿势)
0x00 前言 X-WAF是一款适用中.小企业的云WAF系统,让中.小企业也可以非常方便地拥有自己的免费云WAF. 本文从代码出发,一步步理解WAF的工作原理,多姿势进行WAF Bypass. ...
- 22. Bypass X-WAF SQL注入防御(多姿势)
0x00 前言 X-WAF是一款适用中.小企业的云WAF系统,让中.小企业也可以非常方便地拥有自己的免费云WAF. 本文从代码出发,一步步理解WAF的工作原理,多姿势进行WAF Bypass. 0x0 ...
- 15. Bypass 360主机卫士SQL注入防御(多姿势)
在服务器客户端领域,曾经出现过一款 360 主机卫士,目前已停止更新和维护,官网都打不开了,但服务器中依然经常可以看到它的身影. 从半年前的测试虚拟机里面,翻出了 360 主机卫士 Apache 版的 ...
随机推荐
- San初步使用
考虑使用这个玩意只有两个理由: 组件反解.可以让服务端模板渲染首屏,随后由框架接手控制. 从IE7(作者在评论中有提到)开始支持. 在改造老项目上特别吸引人,只需要移除哪些繁杂的dom操作由m ...
- LeetCode practice
子集和问题:给定一组数和一个值,从这组数中选出若干个数使其和为给定的值.这是个NPC问题. 1.https://leetcode.com/problems/counting-bits/#/soluti ...
- Android学习之Intent使用
1.使用显示Intent Intent intent = new Intent(FirstActivity.this,SecondActivity.class); startActivity(inte ...
- 关于Unity中拖尾渲染器的使用
拖尾渲染器 是一个组件,能够帮我们绘制出拖尾的效果. 就是跟在运动物体后面的东西,前进的过程中,末尾的不断消失,前面的不断生成,有一个长度.长度是以时间计算的,从末尾到头有多少秒的时间就是拖尾的长度. ...
- Axiom3D:手动创建ManualObject与Mesh,以及如何使用Cg着色器语言
在开始正文前,先说下Axiom3D里遇到的二个BUG. 1.在启动axiom生成的程序中,我发现输出里总是有一些如"billboard_type","billboard_ ...
- 容易出错的 if 语句
下面列举几个容易出错的if语句实例,如果后续还有新的发现,还会继续更新! 出错一:在括起控制表达式的括号后面加分号 ; ); printf("值为正"); 初次运行,感觉一切正常, ...
- Linux使用 tar命令-g参数进行增量+差异备份、还原文件
原文链接:http://www.cnblogs.com/gnuhpc/ 完整备份: 建立测试路径与档案 mkdir test touch test/{a,b,c} 在test下生成三个文件 执行完整备 ...
- /var/log/messages Logging not working on Centos 7
This was the solution, not permanent, though: rm -f /var/lib/rsyslog/imjournal.state systemctl resta ...
- idea出现插件突然失灵解决方案
File -> Settings -> Plgins 把失效的插件重新去掉打钩并重新打钩即可
- Apache TomEE 入门指南
介绍 Apache TomEE(发音同“tommy”)是一个新的JavaEE服务器,由Apache软件基金会开发,你大概能够从它的名字猜到,它是从Tomcat而来, 同时加入的JavaEE的特征:To ...