D盾 v2.0.6.42 测试记录
0x01 前言
之前发了一篇博客《Bypass D盾_IIS防火墙SQL注入防御(多姿势)》,D哥第一时间联系我,对问题进行修复。这段时间与D哥聊了挺多关于D盾这款产品的话题,实在是很佩服,对这样一款产品的细致以及投入。一个人,一款产品,一路走来,弥足艰辛。旧版D盾_防火墙支持win2003,新版D盾_防火墙功能更加强大。前阵子已经拿到最新的内测版本,奈何杂事缠身,一直没有深入的对防御规则进行测试,抽空下载了新发布版本对之前发现的问题进行复测,这里记录一下测试过程。
0x02 SQL注入防御
搭建了一个IIS+ASPX的环境,对一些关键字进行测试,查看拦截情况:
union 不拦截
union select 拦截
select from 拦截
测试思路:
如何绕过union select?
在对旧版本测试中,曾使用1eunion来绕过SQL注入防御,新版本D盾对防御规则进行重构,有着本质的区别,抱着怀疑的心态进行尝试,虽然1e的形式已被修复了,通过Fuzz可以发现,使用1.e这种特殊的数值形式,可成功绕过union select防御。

接下来考虑,如何去绕过select from的防御规则:
绕过姿势:GET+POST
假设GET/POST/COOKIE同时提交的参数id,服务端接收参数id的顺序是什么样呢?
ASP+IIS: COOKIE会被POST代替,POST会被GET代替,同时提交参数id,最后只会得到GET中的值,如下图:

ASPX+IIS:同时提交参数id,会接收所有参数,通过逗号分隔,如下图:

PHP+IIS: GET会被POST替代,POST会被COOKIE替代,最终只会得到COOKIE的值,如下图:

从中可以发现,ASPX+IIS同时接收参数的方式比较特别,可以用这个特性来搞事。
利用这个特性来拆分select from,从而绕过D盾的SQL注入防御规则。

局限:使用Request.Params["id"]来获取参数, 三种方式可以进行参数传递:(1). Form (2). ?id= (3).cookie 获取到参数拼接起来
这姿势适合场景略局限,仅仅作为Bypass分享一种思路而已。
0x03 关于盲注
通过盲注去获取一些敏感信息,如version()、user()、database()等。
D盾 v2.0.6.42 测试记录的更多相关文章
- 25.怎样在IDEA中使用JUnit4和JUnitGenerator V2.0自动生成测试模块
转自:https://blog.csdn.net/wangyj1992/article/details/78387728 因为项目的需要,所以研究了一下自动生成测试代码.将经验记录下来,总会有用的.我 ...
- 怎样在IDEA中使用JUnit4和JUnitGenerator V2.0自动生成测试模块
因为项目的需要,所以研究了一下自动生成测试代码.将经验记录下来,总会有用的.我个人认为,好记性不如多做笔记多反思总结. 1. 前提条件 开发环境已正确配置 工程已解决JUnit依赖关系(pom ...
- (转)H264通过RTMP发布 V2.0 (Red5 Wowza 测试通过)
直接上代码 // demo.cpp : 定义控制台应用程序的入口点.//#include "stdafx.h"#includeextern "C"{#inclu ...
- 【Oracle RAC】Linux系统Oracle12c RAC安装配置详细记录过程V2.0(图文并茂)
[Oracle RAC]Linux系统Oracle12c RAC安装配置详细过程V2.0(图文并茂) 2 Oracle12c RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件下载3 ...
- 作业2-MathExam V2.0
MathExam V2.0 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 20 50 • ...
- 【Beta】“北航社团帮”测试报告——小程序v2.0与网页端v1.0
目录 测试计划.过程和结果 后端测试--单元测试与覆盖率 后端测试--压力测试 展示部分数据 平均数据 前端测试--小程序v2.0 授权登录与权限检查 新功能的测试 兼容性测试 性能测试 前端测试-- ...
- 网关局域网通信协议V2.0
http://docs.opencloud.aqara.cn/development/gateway-LAN-communication/ https://github.com/aqara/openc ...
- 一次tomcat配置参数调优Jmeter压力测试记录前后对比
使用的tomcat版本为:apache-tomcat-7.0.53 使用测试工具Jmeter版本为:apache-jmeter-2.12 1.测试前tomat的"server.xml&quo ...
- SteamVR Unity Plugin - v2.0.1中的InteractionSystem
最近写VR项目的时候用到了SteamVR Unity Plugin - v2.0.1插件,感觉比之前用到的SteamVR plugin for Unity - v1.2.2版本改进了很多,就算不用VR ...
随机推荐
- Navi.Soft31.WebMVC框架(含示例地址)
1概述 1.1应用场景 互联网高速发展,互联网软件也随之越来越多,Web程序越来越被广泛使用.它部署简单,维护方便,深得众多软件公司使用 Bootstrap前端框架,是最近非常流行的框架之一.它简洁, ...
- js关于弹也遮罩层
1:什么是遮罩层 遮罩层:我是弹也一个(遮罩层)还有一个(内容层),下面上图片看一效果 我们看到一个灰蒙蒙的遮盖(其实也是一个层)还有一个层(也就是我们展示的内容). 2: 弹出层效果居中分析 在这 ...
- In R, how to split/subset a data frame by factors in one column?
按照某列的值拆分data.frame My data is like this (for example): ID Rate State 1 24 AL 2 35 MN 3 46 FL 4 34 AL ...
- 安卓程序代写 网上程序代写[原]BluetoothClass详解
一. BluetoothClass简介 1. 继承关系 public final class BluetoothClass extends Object implements Parcelable 该 ...
- Recommended Practices for WPF Custom Control Developers
I have always found that there isn’t enough documentation about Custom Control development in WPF. M ...
- svn解决不能clean的方法
http://blog.csdn.net/victory08/article/details/42100325 svn执行clean up后出现提示:svn cleanup failed–previo ...
- [转]8款实用的jQuery/CSS3最新插件应用
今天给大家分享8款非常酷的最新jQuery/CSS3应用插件,废话少说,下面一起来看看这些插件吧. 1.HTML5重力感应积木游戏 这也是一款基于HTML5技术的重力感应游戏,一些积木从天而降,你可以 ...
- Python——eventlet.websocket
使用该模块可以方便地创建 websocket 服务器,要创建一个websocket服务器,只需要将一个句柄函数用装饰器 WebSocketWSGI 装饰即可,然后这个函数就可以当做一个WSGI应用: ...
- mysql分页查询语句怎么写?
ref: http://www.dashen100.com/question/500 是用limit函数 取前5条数据 select * from table_name limit 0,5 或者 se ...
- HTML5 3D爱心动画及其制作过程
之前有看到过很多基于HTML5或者CSS3制作的爱心动画,不过基本上都是2D平面的,今天在国外的网站上看到一个基于HTML5 3D的爱心动画,对于HTML5爱好者来说,不免兴奋了一把.下面将分享一下这 ...