搜索此博客

2016年10月10日星期一

【技术分享】从甲方的角度谈谈WAF测试方法

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
【技术分享】从甲方的角度谈谈WAF测试方法  阅读原文»

【技术分享】从甲方的角度谈谈WAF测试方法

2016-10-10 14:14:12 来源:安全客 作者:lewisec_com
阅读:3702次 点赞(0) 收藏


http://p0.qhimg.com/t01ce5ebc82c53b2d10.jpg


作者:lewisec_com 

稿费:300RMB(不服你也来投稿啊!)

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿



0X01 测试思路


环境搭建 

服务器:使用DVWA搭建一套包含各类漏洞的网站,并开启access日志以供分析。DVWA搭建过程不细说。

WAF:反向代理部署,将DVWA服务器做反向代理后映射出VS IP。测试时所有payload发送至VS IP,经WAF处理后交给DVWA服务器。

测试方法:客户端构造payload提交给VS IP,服务器查看access日志。如被有效识别并过滤,access日志应没有相关内容。


0X02 OWASP TOP10 常规防御


SQLi 

get型注入:http://10.44.100.18/dvwa/vulnerabilities/sqli/?id=22&Submit=Submit#的参数id可以注入,构造payload提交即可。

post型注入:DVWA登录过程用burpsuite抓包,即可构造post型注入。

XSS 

反射型XSS和存储型XSS在DVWA中都有,构造payload即可。

CSRF、command injection、Brute Foce、File upload等等方式,DVWA都有了,不细说。

漏掉的是SSRF、反序列化、structs、心脏滴血,这些攻击在当前版本的DVWA中是没有设计的,需要单独考虑。


0X03 绕过技术的防御


除了最常见攻击手法的防御以外,WAF还应该具备识别变形的Payload的能力。 

目前国内外商业WAF可以识别99%以上的常规攻击手段,区别主要就体现在对各类编码后的变形Payload的分析能力上。 

这里面又区分成了两大类思路。

思路一:

WAF抓取到HTTP包后,做多重解码,将每重解码的结果提取正则,与特征库进行匹配。各家能解码的层数会有区别。F5的ASM可以支持最多5层并且允许用户手工设定层数。其他家虽不可指定解码层数,但都具备响应能力。

思路二:

考虑到正则匹配容易误报漏报,有厂家放弃了这种分析模式,转而做语义分析。长亭科技的SqlChop就是如此,详情可阅读SQLChop - 一个新型 SQL 注入检测引擎 

在测试中,需要手工对payload做编码变形。详细说来:

SQLi变形

urlencode编码:别小看这种常见的绕过方法,有厂家的WAF还真检测不出来。

unicode编码

关键字大小写替换:这个比较常规了,基本是没有检测不到的。

关键字转为十六进制

关键字用反引号引起来

关键字用/#! #/注释引起来

关键字用/##/注释截断:select转为sel/**/ect

关键字用%00截断

提交的HTTP包中,将x-originating-IP 改为127.0.0.1

提交的HTTP包中,将X-remote-addr 改为127.0.0.1

SQLMAP的各类TAM

【通告】Cisco Nexus OTV缓冲区溢出漏洞安全威胁  阅读原文»

2016年10月5日,思科官网发布了存在于Cisco Nexus 7000系列和7700系列交换机中的一个缓冲区溢出漏洞,此漏洞编号为CVE-2016-1453。该漏洞位于Overlay Transport Virtualization(OTV)技术的GRE隧道协议实现中,由于对OTV包头部的参数没有进行完整校验,导致攻击者可以通过向受影响设备的OTV接口发送精心构造的OTV UDP数据包来执行任意代码,最终获得目标设备的全部权限。当这两个系列的产品启用OTV技术时会受到该漏洞的影响。

Nexus 7000系列在Cisco NX-OS 5.0(3)及其后续版本中引入OTV技术;Nexus 7700系列在Cisco NX-OS 6.2(2)及其后续版本中引入OTV技术。用户可以通过命令show running | include otv来检查交换机是否开启了OTV,举例如下:

上面的结果表明开启了OTV。详情请见以下链接:https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20161005-otv

什么是OTV

OTV是一个在分布式地域的数据中心站点之间简化2层扩展传输技术的工业解决方案. 使用OTV技术可以方便地在两个站点部署Data Center Interconnect (DCI),而不需要改变或者重新配置现有的网络.此外,使用OTV技术可以将不同地域的数据中心站点构建成统一的虚拟计算资源群集,实现工作主机的移动性,业务弹性以及较高的资源利用性。漏洞验证程序

受影响的产品

  • Nexus 7000 Series Switches
  • Nexus 7700 Series Switches

不受影响的产品

  • Multilayer Director Switches
  • Nexus 1000 Series Switches
  • Nexus 2000 Series Fabric Extenders
  • Nexus 3000 Series Switches
  • Nexus 3500 Series Switches
  • Nexus 4000 Series Switches
  • Nexus 5000 Series Switches
  • Nexus 9000 Series Switches in NX-OS mode
  • Nexus 9000 Series Switches in ACI mode
  • Unified Computing System (UCS) 6100 Series Fabric Interconnects
  • Unified Computing System (UCS) 6200 Series Fabric Interconnects

规避方案

  • 思科官方已经发布了对Cisco NX-OS的版本更新,建议用户升级到最新版本,下载链接如下:

https://software.cisco.com/download/navigator.html?mdfid=281717634&selMode=null

  • 作为变通方案,可以按如下方式设置ACL,从而丢弃恶意的OTV包:

IP access list OTV_PROT_V1

10 deny udp any any fragments

20 deny udp any any eq 8472 packet-length lt 54

30 permit ip any any

实施以上规则时,有一下几点需要注意:

  1. deny udp fragment访问控制项必须放在ACL的第一行;
  2. 在上述ACL例子中,序号10-20之间以及20-30之间可以添加其他访问控制项,只要不跟序号10和20冲突即可;
  3. 该ACL必须配置为OTV连接接口的入口ACL;
  4. 上述ACL例子中作为目的地址的"any",可以以多条访问控制项的形式替换为多个具体的OTV接口IP地址。

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所

阅读更多内容

没有评论: