4、Web应用防火墙

 

4.1 需求概述

       Web类应用已广泛应用。随着自身业务的发展,Web业务系统越发复杂,其承载的数据也越发重要。由于数据的重要性、敏感性,导致Web类应用成为了黑客攻击的主要目标,Web类应用面临着严峻的安全挑战。对如何有效缓解网站及APP等Web类应用面临的如OWASP Top10中定义常见威胁,以及未知威胁,以快速应对恶意攻击者对Web业务带来的冲击,亟需对Web类应用系统进行威胁检测、安全加固、有效防护

 

4.2 功能概述

       Web应用防火墙通过智能语义分析实现对常见已知类Web攻击的检测,通过机器学习实现对异常网络流量及未知威胁的检测,通过行为分析引擎实现对CC攻击、暴力破解等自动化攻击行为的检测,通过威胁情报实现对网站访问可疑行为的有效识别

 

​​​​​​4.3 功能说明

       Web应用防火墙作为安全资源池的核心能力组件之一,其基于主动防护、智能感知、智能防护、智能联动架构实现对Web攻击的检测和防护。其中,主动防护能够解决传统安全产品仅依赖安全规则对流量进行检测的被动防护过程,逐步由被动防护转化为主动防护,帮助用户主动发现前期存在的安全隐患;智能感知能够通过威胁情报技术主动发现恶意IP对Web应用的踩点访问行为并通知用户采取相应的安全措施;智能防护能够通过语义分析引擎、机器学习引擎、行为分析引擎、威胁情报引擎等的联动实现对已知、未知攻击行为的检测;智能联动能够通过与其他安全产品通信实现联动防护,为用户提供全面的Web应用安全解决方案。

       Web应用防火墙的核心功能由HTTP协议规范性检查、注入攻击防护、跨站脚本攻击防护、Webshell防护、HTTPS安全防护、信息泄露防护、扫描工具防护、爬虫攻击防护、第三方组件漏洞防护、其他攻击防护、虚拟补丁、日志管理等模块组成。

 

4.3.1 HTTP协议规范性检查

       HTTP协议规范性检测功能,通过对访问者提交的报文进行检测以判断其是否符合HTTP协议框架。主要检测异常的请求方法、不同字段的合规性、特殊字符、重点字段的缺失、HTTP方法控制、超长报文造成的溢出攻击以及对高危文件的访问等,以此实现当黑客在使用非浏览器工具调试时能够迅速拦截。

 

4.3.2 注入攻击防护

       注入攻击是一种比较常见的攻击方式,如XSS攻击是一种HTML注入攻击, SQL注入是一种数据库的注入攻击。注入攻击的本质是将用户输入的数据当作代码去执行了。每个Web应用系统都允许外部命令,比如系统调用、shell调用和SQL请求。注入攻击依赖于这些系统如何使用这些调用和系统的哪些部分使用这些调用,如果Web应用没有规范和安全的设计和编码,所有的外部调用都有可能遭受潜在的攻击。 注入攻击防护功能,通过对访问者提交的URL、参数、Cookie等字段进行检查,主要采用SQL语义解析技术防止风险系数极高的SQL注入攻击,采用字符偏移技术对代码、命令、文件、LDAP、SSI等注入攻击检测,实现对操作系统和应用的注入攻击防护。

 

4.3.3 跨站脚本攻击防护

       跨站脚本攻击(也称为XSS)是指利用网站漏洞从用户那里恶意盗取信息的一种行为。恶意攻击者为了搜集用户信息,通常会在有漏洞的程序中插入 JavaScript、VBScript、ActiveX或Flash以欺骗用户,一旦得手,他们就可以盗取用户帐户、修改用户设置、盗取/污染Cookie、做虚假广告等。每天都有大量的XSS攻击恶意代码出现。常见的跨站脚本攻击有持久型跨站攻击(最直接的危害类型,跨站代码存储在服务器或数据库中),非持久型跨站攻击(反射型跨站脚本漏洞,最普遍的类型),DOM跨站攻击(DOM XSS,客户端脚本处理逻辑导致的安全问题)。 跨站脚本攻击防护功能,通过采用字符差分技术对访问者提交的脚本进行检查,防止不合法跨站脚本执行,防护存储型、反射型和DOM型跨站。此外,跨站脚本攻击防护功能支持通过Referer算法、Token算法等实现对CSRF攻击的安全防护。

 

4.3.4 Webshell防护

       Webshell是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境。黑客在入侵了一个网站后,通常会将asp或php等后门文件与网站服务器Web目录下正常的网页文件混在一起,然后使用浏览器来访问asp或者php后门,从而得到一个命令执行环境,以达到控制网站服务器的目的。 针对Webshell攻击,云Web应用防火墙的Webshell防护功能,通过内置的Webshell检测规则及语义分析技术,实现对访问者上传的文件后缀名和文件内容进行全方面检查,从而杜绝Webshell的上传和访问。

 

4.3.5 HTTPS安全防护

       HTTPS(Hypertext Transfer Protocol Secure)是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。Web应用系统使用 HTTPS 协议可认证用户和服务器,能够确保数据发送到正确的客户机和服务器。但是在相同网络环境下,HTTPS 协议会使页面的加载时间延长近 50%。此外,HTTPS 协议还会影响缓存,增加数据开销和功耗。HTTPS 协议的安全也是有范围的,在黑客攻击、拒绝服务攻击和服务器劫持等方面都有波及,最关键的是SSL 证书信用链体系并不安全,特别是在某些国家可以控制 CA 根证书的情况下,中间人攻击一样可行。

       HTTPS安全防护功能,通过配置包括SSLv3、TLS1.0、TLS1.1、TLS1.2等版本的SSL/TLS协议,实现灵活的HTTPS协议选择;通过HTTPS站点SSL算法的自动探测,以及探测时可以设置指定站点及端口,实现探测及结果显示;通过反向代理实现HTTPS业务的安全防护;通过源地址识别实现解析到真实的访问者IP,并能对真实的IP进行防护和阻断。

 

4.3.6 信息泄露防护

       Web应用系统的重要信息包含但不限于服务器信息、用户个人敏感信息等。

       1、信息泄露防护功能,通过对服务器响应状态码、服务器错误信息、数据库错误信息、源代码信息泄露进行过滤,实现防止服务器信息被黑客获取,被黑客用于Web网站的有效攻击。

       2、信息泄露防护功能,通过对Web网站数据库存储中的用户身份证、手机号、银行卡号、信用卡号、社保号等敏感信息进行脱敏处理(如号码的乱序、字符的转码,以及字符的*号替换等),实现防止Web应用系统上的用户个人敏感信息的泄露及被盗用后的非法使用。

       3、信息泄露防护功能,通过检测实现服务器信息泄露行为的发现,包括目录信息泄露、服务器信息泄露、数据库信息泄露、源代码泄露等信息泄露行为。 信息泄露防护功能,通过敏感词配置,实现政冶敏感性、违反法规相关的言论信息发布,保障网站的内容健康呈现。

 

4.3.7 扫描工具防护

       扫描工具防护功能,通过自动识别技术,实现对包括Ping命令、操作系统探测、访问控制规则探测、端口扫描以及漏洞扫描等行为的检测。通过内置安全规则实现如AppScan、Acunetix Web Vulnerability Scanner、Nikto、Paros proxy、WebScarab、WebInspect、Whisker、libwhisker、Burpsuite、Wikto、Pangolin、Watchfire AppScan、N-Stealth、Acunetix Web Vulnerability Scanner 等多种扫描器的扫描行为的有效识别和智能阻断。

 

4.3.8 爬虫攻击防护

       爬虫是一种按照一定的规则自动地抓取万维网信息的程序或者脚本,是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。合法网络爬虫造成危害主要是不当引起,而非法爬虫就涉及违法和犯罪两个层面。非法爬虫的破坏主要以非法窃取数据,破坏数据和系统、妨害正常使用为主,主要有以下类型,第一种是采取技术手法非法访问目标服务器数据,主要是未经允许获取文字、图片、音视频等作品,用于商业使用或出售;第二种是非法窃取服务器上的用户隐私数据;第三种是搜集各种公民隐私信息和网络用户的账号信息;第四种是黑客手段侵入、控制或破坏计算机信息系统;第五种是流氓骚扰型破坏,主要表现为一些恶意的扰乱服务器正常运行的行为和手段。

       爬虫攻击防护功能,通过设置IP访问速度阈值、访问请求头特征检测、访问验证码检测、Cookie内容检测,以及内置规则等技术,实现对恶意网络爬虫抓取网站内容行为的防护,常见爬虫引擎如Baidu、Google、Yahoo等。

 

4.3.9 第三方组件漏洞防护

       第三方组件漏洞防护功能,通过集成通用型漏洞库,并联动威胁情报云平台,采用已知漏洞扫描、漏洞远程修复及补丁更新等技术,实现WEB容器漏洞、开源CMS漏洞、WEB服务器插件漏洞等组件漏洞的检测与修复,防止被黑客利用。

       其中,WEB容器漏洞包含Nginx、IIS、Tomcat等,CMS漏洞包含Kuwebs、phpcms、TRS WCM、JBR-CMS、DeDeCMS等,WEB服务器插件漏洞包含Apache Struts2漏洞等。

 

4.3.10 其他攻击防护

       云Web应用防火墙,还提供了CC攻击防护、盗链攻击防护、Cookie安全防护,以及编码攻击防护等。

       1、CC攻击防护

       攻击是DDoS攻击的一种变相攻击模式,黑客通过利用网络传输协议中三次握手的漏洞产生大量的无效链接,使被攻击目标资源耗尽,最终导致主机服务不能正常运行而达到攻击目的。常见的CC攻击的种类有三种,分别是直接攻击、代理攻击、僵尸网络攻击。CC攻击产生的最直接危害是Web网站访问速度异常缓慢,严重影响用户体验。

       CC攻击防护功能,通过根据配置的细粒度条件实现对CC攻击进行检测和防护。其中,匹配条件由URL参数、请求头部字段、目的IP、请求方法、地理位置组成;测量指标由请求速率、请求集中度、请求离散度组成;客户端检测对象由IP、IP+URL、IP+User_Agent等参数组成。此外,CC攻击防护功能通过URL访问速率、URL访问集中度、请求离散度三重检测,以此减少误判率。CC攻击防护还支持从请求头字段获取真实源IP地址。

       2、盗链攻击防护

       盗链通常是指在未经许可的情况下,通过内嵌代码、在线播放等手段直接引用其他内容服务提供商资源(如图片、语音或视频等)的行为。Web网站盗链可能会大量消耗被盗链网站的带宽资源,甚至可能导致站点无法正常对外提供服务,损害被盗链网站的利益。

       盗链攻击防护功能,通过为保护站点配置防盗链策略实现可按指定的防盗链方式对特定的文件后缀名进行保护,防止被非法盗链。云Web应用防火墙在收到Web业务服务器重定向过来的请求时,如果该请求要访问的文件类型是云Web应用防火墙防盗链配置中设置的保护文件类型,则会检测请求标头中的Referer字段与域名是否一致,以此实现对盗链有效识别。

       其中,防盗链策略支持的配置项包含:防盗链方式(全站防盗链、对指定文件类型防盗链)、文件后缀名(指定文件类型进行防盗链)、站点白名单(添加放行的网站,即可以请求保护网站上文件的其他网站)、危险等级(选择检测到盗链行为后生成日志的危险级别)、动作(选择检测到盗链行为后执行的操作)、返回码(选择检测到盗链行为后对请求用户返回的返回码)。

       此外,盗链攻击防护功能还可以通过集成多种盗链识别算法解决单一来源盗链、分布式盗链、网站数据恶意采集等信息盗取行为,从而确保网站的资源只能通过本站才能访问。

       3、Cookie安全防护

       Cookie是一种“小型文本文件”(有时也用其复数形式 Cookies),是某些Web网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。Cookie虽然为Web网站为辨识访问者身份提供了便捷方式,但是同时也伴生了一些安全风险,包括Cookie捕获/重放攻击(攻击者通过木马等恶意程序,或使用跨站脚本攻击等手段偷窃存放在用户硬盘或内存中的Cookie,对于捕获到的认证Cookie,攻击者往往会猜测其中的访问令牌,试图获取会话ID、用户名与口令、用户角色、时间戳等敏感信息;或者直接重放该Cookie,假冒受害者的身份发动攻击)、恶意Cookie攻击(Web 网站服务器可以使用Cookie 信息创建动态网页。如果 Cookies包含有可执行恶意代码段,那么在显示合成有该 Cookies 的网页时,就会自动执行这段恶意代码,从而会危害到Web网站)、会话定置攻击(攻击者向受害者主机注入自己控制的认证Cookie等信息,使得受害者以攻击者的身份登录网站,从而窃取受害者的会话信息)等。

       Cookie安全防护功能,通过以下技术实现Cookie的安全防护:一是加入MAC以进行完整性校验;二是让用户对相关信息进行数字签名,加强有效性验证;三是对Cookie本身进行随机密钥加密,保证Cookie本身的信息安全。

       4、编码攻击防护

       编码攻击防护功能,主要是识别HTTP报文常见的编码和编码攻击,类型包括URL解码、Base64解码、HTML解码、16进制转换、JSON解析、XML解析、PHP反序列解析等。

 

4.3.11 虚拟补丁

       虚拟补丁技术旨在通过控制受影响的应用程序的输入或输出来改变或消除漏洞。虚拟补丁在一定程度上降低了企业的服务应用程序风险,提升了企业对系统的整体拥有时间,有效的降低了企业的信息系统运维成本,是一种可以使运维人员摆脱补丁管理困境的有效解决方案。

       Web应用防火墙支持虚拟补丁功能,通过可视化界面的方式,提供系统运维或技术人员可手动上传发现的漏洞防护策略,该防护策略是一种虚拟补丁,能够对Web服务器的漏洞进行修复,启动安全防护作用。

 

4.3.12 日志管理

       日志管理功能,通过记录方式实现多种类型日志的存储管理,日志类型包括应用防护日志、机器学习日志、行为分析日志、流量控制日志、威胁情报日志、访问审计、误判分析、操作日志、系统日志和升级日志等。

        应用防护日志:记录HTTP请求错误、协议限制、注入攻击、跨站攻击、Webshell攻击、信息泄露、扫描工具、爬虫攻击、虚拟补丁以及其他类型的攻击等事件,便于分析、追踪和更好的防护。

        机器学习日志:记录云Web应用防火墙在机器学习过程中,对非法或者可疑地址进行的阻断或者拦截日志。  行为分析日志:记录针对匹配行为分析策略的事件日志,如CC攻击、慢攻击等。

        流量控制日志:记录针对匹配智能防护和应用层访问控制IP策略的事件日志,如黑名单、白名单、智能防护、访问控制IP、并发数限制、连接频率限制等攻击事件。

        威胁情报日志:记录针对匹配威胁情报策略的事件日志,即基于威胁情报所防护的攻击事件。

        访问审计:访问服务器的正常流量进行记录,并统计显示并统计网站的访问次数。

        误判分析:对应用防护日志进行分析得出可能引发较高误报的规则。主要用于将机器对正常URL访问的错误阻拦降低最低,以此减少分析告警日志所需的人力与物力。

        操作日志:记录各个用户角色的操作事件。

        系统日志:记录系统运行过程中发生的事件。

        升级日志:记录云Web应用防火墙版本升级事件。

返回上一层