好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

安全狗测试--注入篇 - 网站安全 - 自学php

简单闲的蛋疼,从官方网站上 下载 http://www.anquangou.cn/ IIS v3.0 安装 简单测试一下...

 

构造一个简单的注入页面asp+sqlserver 开始测试:

 

 

绕过:

 

原来如此简单,顿时信心百倍

 

 

 

二、基础篇

 

 

 

1.数据流向

 

 

学习剑总大作感觉受益匪浅(没有办法这年头不拍马屁,不给过),正向剑总说的,对于一个请求,在有防护的情况下,数据的流向:

 

data->安全狗->webserver->app->database

 

 

 

可见,一个数据流在整个流程中会经过多个"程序",而安全狗是优先对数据进行处理,检查到危险就会阻断请求。

 

 

 

2.所谓的安全狗被绕过:

 

 

 

对于一个有效攻击,安全狗没有正确识别成功阻断,导致攻击成功。

 

3.安全狗被绕过的原因:

 

 

 

对于同样的一个请求,安全狗与webserver、app、database理解不同,导致安全狗被绕过。

 

 

 

三、测试

 

 

 

对于注入,当然是希望获得 数据库 里面保存的数据了,因此测试:

 

 

额,安全狗毫无反应,难道安全狗认为这个没有必要么?也是这个危害是小了一些

 

 

 

继续测试 select from

 

原来安全狗防护的是select from

 

 

 

怎么绕过?就要用到各种安全狗理解上的不同了...

 

 

 

1)复参测试

 

 

 

首先想到的是80sec牛人说的那个iis复参问题了

 

发现失败了,安全狗可以识别。

 

 

 

2)iis对%解码特性测试

 

有人分析说iis的 asp .dll在进行参数url解码存在特性:

 

IIS下的asp.dll文件在对asp文件后参数串进行url解码时,会直接过滤掉09-0d、20、%(下两个字符有一个不是十六进制)字符。

 

将Get请求变成post请求,然后再from的f后面添加一个空格:

 

绕过成功.

 

 

 

3)Unicode编码测试

 

IIS支持unicode编码,因此使用unicode编码看看安全狗是否会拦截?

 

安全狗没有进行unicode解码

 

 

 

4) mssql 特性测试

 

也可以,但是有点鸡肋,在某些情况下可以..

 

 

 

四、总结

 

 

 

这里仅使用知道的几种方法,测试了一下select from规则,发现安全狗做的还是不错的,但是也存在一定程度的绕过。

 

 

作为一个网络层防护软件目标应该是实现0攻击,但是在真实环境中,网络层防御的作用是提高攻击的门槛,因为它要考虑一个叫误报的东西…

 

 

 

 

修复方案: 考虑到各种特殊情况即可 

 

查看更多关于安全狗测试--注入篇 - 网站安全 - 自学php的详细内容...

  阅读:40次