梭子鱼Web应用防火墙攻击规则库更新技术预览

简介:

跨站脚本(XSS)攻击可能会通过如下方式出现:用户输入的数据包含了恶意代码,而服务器没有将这些输入进行安全过滤便直接返回给用户浏览器,恶意代码因此被浏览器执行,攻击者从而可能控制浏览器DOM。这些包含恶意代码的输入可能利用以下几种形式实现:script tags, Data URI references, onEvent references, iframes等。梭子鱼Web应用防火墙可以帮助阻断跨站脚本(XSS)攻击。

梭子鱼Web应用防火墙跨站脚本(XSS)规则集把跨站脚本(XSS)签名划分为不同类别,每个类别下包含所有可能的违规漏洞。其中一个类别针对基于事件属性的跨站脚本(XSS)攻击,涵盖onmouseover、oninput、onformchange等事件类型,这些事件类型可以在OWASP上找到完整的事件处理程序列表。

然而不同浏览器对于服务器响应内的JavaScript脚本的识别可能有较大的差异。这也让攻击者因此采取许多模糊化的策略,例如在事件处理程序嵌入一些字符,比如嵌入回车键、空字符、换行符、编码过的字符、多余的括号、注释标记等。这些嵌入的字符可以分隔输入数据,让浏览器无法正确的识别脚本代码,以实现绕开安全过滤器的行拦截,服务器给浏览器的响应将仍然包含这些脚本代码,最终将被浏览器执行。

尽管不同平台或版本的浏览器可能对脚本的识别有些差异,但是梭子鱼对这些浏览器进行了适配,可以进行防护,以应对模糊攻击策略。用户可以在梭子鱼WEB应用防火墙的WEB管理页面的‘高级设置’-‘默认数据类型’页面查看到部分梭子鱼定义的特征类型,数据类型正则表达式里‘xNN’代表十六进制值表示的ASCII码字符,例如:退格(08)、回车(0D)等,可以点击‘详情’查看防护的事件处理程序的名称。

然而对于太老的浏览器或者引入新的事件处理程序(比如在HTML5中),可能会出现无法过滤的情况,但是这是极少。梭子鱼实验室通过监测威胁状况以及来自安全研究领域的贡献,不断更新数据类型。当新的数据类型进行更新时,各种型号之间对其采取的防护模式略有不同。梭子鱼Web应用防火墙460及以下的型号采取主动模式。而660及以上的型号采取被动模式,设备的管理人员在预览了更新的数据类型之后可根据其需求将其调整为主动模式。

对于这些数据类型的另一个考虑因素就是安全性与可用性之间的权衡。一个非常严格的数据类型策略可能会误拦一些正常的输入,比如我们如果定义阻断所有包含on*的事件的话,那么一些输入,比如one=xyz,可能被误判为跨站脚本(XSS)攻击。一种数据类型表达式也可用来阻止所有“on”后面跟随3-16个字符的输入(和其他的反规避构造一起),当然,这是一个更加严格的模式,可能会在案例中导致误判,比如某个输入中包含onerous=。以上讨论是基于黑名单参数输入防护策略。在使用白名单时,可以选择手动,或者通过自动分析器,这种错误根本就不会出现。目前最理想的状况就是修复代码。然而,如果不提供源代码,或者缺乏修复代码的专业知识和资源,修复代码就不可行。梭子鱼Web应用防火墙规则库和其它高级功能提供了一个针对这种应用层攻击的非常强大的修复机制,无需修改任何源代码。


原文发布时间为:2015-12-07

本文来自云栖社区合作伙伴至顶网,了解相关信息可以关注至顶网。






相关文章
|
9天前
|
前端开发 JavaScript 关系型数据库
从前端到后端:构建现代化Web应用的技术探索
在当今互联网时代,Web应用的开发已成为了各行各业不可或缺的一部分。从前端到后端,这篇文章将带你深入探索如何构建现代化的Web应用。我们将介绍多种技术,包括前端开发、后端开发以及各种编程语言(如Java、Python、C、PHP、Go)和数据库,帮助你了解如何利用这些技术构建出高效、安全和可扩展的Web应用。
|
26天前
|
测试技术 网络架构
【技术干货连载 一】业务经过WAF HTTP 400问题排查
教你如何排查和解决业务经过WAF 七层代理HTTP 400问题原因?
31 1
|
1月前
|
前端开发 数据库 UED
构建高性能Web应用的关键技术
本文将介绍构建高性能Web应用的关键技术,包括前端优化、后端优化、数据库优化等方面。通过深入讨论各项技术的原理和实践方法,帮助开发者们提升Web应用的响应速度和用户体验。
|
1月前
|
存储 前端开发 JavaScript
从前端到后端,探索现代Web开发技术
本文探索了现代Web开发技术的各个方面,包括前端和后端开发以及多种编程语言的应用。通过对JavaScript、Java、Python、C、PHP和Go等语言的介绍,深入探讨了前端和后端开发的基本原理和常用工具。同时,还涵盖了数据库技术在Web开发中的重要性和应用场景。无论你是初学者还是有经验的开发者,本文都能为你提供全面的视角和实用的知识,帮助你在Web开发领域取得更好的成果。
|
1月前
|
前端开发 开发者
探索前端技术的新趋势:Web组件化开发
【2月更文挑战第11天】 在这篇文章中,我们将深入探讨Web组件化开发的概念及其对前端开发领域的影响。不同于传统的摘要方式,我们通过一个故事来引入主题:想象在一个快速变化的数字世界里,有一座由各种小型、独立、可复用的建筑块构成的城市,每个建筑块都拥有独特的功能和风格,它们可以自由组合,创造出无限可能的城市景观。这座城市,就像是使用了Web组件化开发技术的前端项目。接下来,我们将详细探讨Web组件化开发的优势、实现方式以及面临的挑战,为前端开发者提供一个全面的视角来理解和应用这一重要的技术趋势。
62 5
|
2月前
|
IDE Java API
使用Java Web技术构建RESTful API的实践指南
使用Java Web技术构建RESTful API的实践指南
|
1月前
|
SQL 存储 数据库
基于Web技术的在线考试系统的设计与实现(论文+源码)_kaic
基于Web技术的在线考试系统的设计与实现(论文+源码)_kaic
|
1月前
|
网络协议 安全 网络性能优化
基于web技术的企业网设计与实现_kaic
基于web技术的企业网设计与实现_kaic
|
29天前
|
运维 Linux 应用服务中间件
Centos7如何配置firewalld防火墙规则
Centos7如何配置firewalld防火墙规则
40 0
|
29天前
|
存储 前端开发 JavaScript
强烈推荐一个Python库!制作Web Gui也太简单了!
强烈推荐一个Python库!制作Web Gui也太简单了!