Web 应用防火墙在高校网络安全中的应用
2022-07-21张恬
张 恬
(无锡城市职业技术学院,江苏 无锡 214153)
0 引言
Web 技术具有标准化的特征,高校的很多应用都采用Web 应用形式,比如:网站群系统、教务系统、办公系统等。 随着智慧校园的建设,对高校网络安全的重视,Web 应用的快速发展,暴露出较多网络安全方面的问题,网络安全等级保护2.0 的实施对Web 应用安全提出了一定要求。 HTTP 协议的安全机制缺乏和Web应用系统本身的安全漏洞,导致Web 应用层面的安全风险逐日增大。 传统的网络安全设备工作在网络层居多,导致应用层的防护与其不匹配,网络安全设备(IDS和IPS)可以通过包检测技术来探知流经应用层的流量,并匹配携带的攻击特征库,从而辨识网络攻击,对应用层进行防护,但IDS 和IPS 对灵活编码和报文分割实现的应用层攻击无法防御。 Web 应用防火墙(Web application firewall,WAF)工作在应用层[1-2],对HTTP协议的请求和应答进行重组解析,并与攻击特征库进行匹配,根据判断出的攻击行为做出报警或者阻断等不同处理。 本文首先介绍Web 应用相关的技术,HTTP协议机制与基于已知攻击方式的不足,接着分析WAF的特异性配置的优点和日常管理注意事项等,在此基础上建立WAF 实际应用模型,经检测可以有效阻断Web 应用层的攻击。
1 Web 应用相关技术分析
1.1 HTTP 协议
Web 应用服务具备很强的交互性,客户端与服务器端的交互是通过HTTP 协议进行的[3],典型的Web应用即为客户端向Web 服务器发送HTTP 或HTTPS请求,服务器收到请求后进行应答。 超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个基于请求与响应模式的、无状态的、应用层的协议,基于TCP 的连接方式,给出一种持续连接的机制,大多数的Web 开发都是构建在HTTP 协议之上的 Web 应用[4-5]。 故Web 应用安全问题大部分是忽略了对用户输入数据的审核,从而导致攻击行为的发生。 在传输过程中,首先由客户端向服务器端发送请求,请求头的内容主要有请求的方法、URL、协议版本等。 服务器接收到请求,对请求发出响应,响应的内容主要有消息协议的版本、成功或者错误编码等。 HTTP 协议的报文头有4 部分内容:通用头、请求头、响应头和实体头。 4 部分包括的具体内容如表1 所示。 在请求发出时,消息的首行格式包含对URL 完成的方法,有 OPTIONS,GET,HEAD,POST,PUT,DELETE 和TRACE。 Web 应用安全问题的产生因为用户可以在报文头的任意部位进行输入操作,每个点都会成为攻击注入点。 最常见的Web 攻击注入点有GET,POST,Cookies,Referen,User-Agent,请求头等。
表1 报文头内容
1.2 基于已知的攻击方式
WAF 最常见的检测方法是模式匹配的方式,但该检测方法会有绕行的风险,主要原因有两点,一是模式匹配的固定模式,无论是采用正则匹配或者添加一些其他匹配方式,会有被绕行的风险;二是HTTP 协议的解析漏洞,若攻击者发起异常数据包,正常无法提取变量,即直接绕过WAF 检测。
目前WAF 为了对攻击进行快速的识别,大部分规则库的建立都是基于已知攻击方式,这种方式的不足之处在于:(1)攻击方式与形式具备多变性的特点,直接导致增加规则库的体量,维护规则库会造成较多的消耗。 (2)新型攻击或未知攻击发生时,无法有效断定是否为恶意攻击,而导致防护能力弱,只能进行“事后防护”。 (3)对缺乏明显攻击特性的数据篡改等攻击形式防护能力薄弱。
综合以上不足,具有特异性配置的WAF 可以根据需要防护的Web 应用合理有效地配置所需的防护。 这种防护方式从Web 应用本身业务作为切入点,通过合法通信,采集数据样本,变成适应自身业务系统的规则库,更有针对性。
2 Web 应用防火墙的分析与设计
2.1 黑白名单检测模块
黑白名单检测可以增强WAF 系统的网络防护,对于加入黑名单的IP 地址,会被直接拦截,相反加入白名单的IP 地址,则直接将数据包转发。 如果两种情况都不满足,普通的请求报文,进行检测流程。
2.2 规则组模块
规则组模块主要进行各类匹配规则的设置,例如协议限制类、注入攻击类、跨站攻击等。 这些规则的设置都是基于对发送报文的解析,分析HTTP 报文,通过获取到请求字段,将请求字段与规则组匹配,深度扫描是否含有攻击类型,并判断是否触发响应模块的处理。规则组会根据网络中新增的应用程序或者模块等进行更新操作,完善规则库。
报文的解析主要包括对HTTPS 报文的加解密处理、将编码统一化和提取报文字段3 步操作。 第一,对HTTPS 报文的加解密处理,需要通过HOST 域来进行判定送到的目的Web 服务器,根据提供的SSL 证书和密钥对请求报文进行解密操作,翻译为明文后,转发到下一个目的模块,同时将服务器响应的应答报文进行加密操作并转发。 第二,将编码统一化,主要对HTTP报文进行处理,编码方式有多种,例如:URL 编码、Unicode 编码等。 为了防止有攻击绕行,将编码进行统一化处理。 第三,提取报文字段,提取对HTTP 的请求和发出的响应报文内容,请求报文中将Host 字段与Post 请求中的主体提取出,响应报文中将SetCookie 字段内容进行提取。 最终提出的内容与规则库进行有效匹配,进行筛选。
2.3 日志审计模块
日志记录是WAF 系统的重要记录部分,记录的类型可以设置为基本、详细和全部3 种类型。 当有攻击行为发生时,会记录下攻击信息,通过报表的方式查看攻击的类型等。
2.4 自定义规则
Web 页面的参数主要有固定类型参数、枚举参数、用户输入参数3 类。 第一种固定类型参数,比如输入出生日期等数字是固定的,可以为通用配置。 第二种枚举类型的参数,通常在页面的表现方式是下拉框或者选择框,比如性别等,可以在规则库设置匹配表进行通用配置。 第三种用户输入类型,容易成为攻击手段,只配置通用规则库则无法全面防护,需要进行特异性配置。 而自定义规则则倾向于特异性配置,对不同的Web 系统可以调整适用的配置,例如HTTP 请求走私,可以设置启动或不启动。 对Web 安全防护的有效性和可靠性有更高的提升。 具体的优点可以总结为:(1)高效性,通过初期Web 页面参数的筛选,减少固定类型和枚举类型参数的匹配,大大节约了计算时间。 (2)适用范围广,对于特定的Web 应用进行特异性配置即可,可以打破固定模式。 (3)安全性更高,有差异的对待,可以更具备针对性,安全性等级加强。
3 数据中心实际应用
3.1 Web 应用防火墙的应用
配置Windows Server 2008 系统,采用IIS7.0 服务器,配置Windows10 客户机,采用安恒明御防火墙,对应用层进行防护。 结合学校本身的网络架构,将WAF配置成透明代理模式串接在核心网络中。 在实际应用中,将测试站点加入保护站点,部分攻击拦截如图1 所示。 为增加系统防护功能,启动黑白名单设置,配置规则库,并对不同的Web 应用启动特异性配置,如图2 所示,经过检验,可以有效防御恶意攻击,网络整体安全性得到了提升,对日常维护具备极大的保障,具有很高的应用价值。
图1 攻击拦截
图2 特异性配置
3.2 日常管理
让WAF 有效发挥作用,对其日常管理也尤为重要,需要做好的维护有:系统定期升级,包括规则库的升级,提高系统整体防护效果;WAF 配置策略定期进行备份,当异常情况发生时,可以使用还原配置文件;定期查看WAF 日志,对攻击事件分类处理,将恶意IP 加入黑名单;更新防护站点后,及时配置防护策略。
4 结语
Web 应用层的攻击持续增高,网络安全防护也日益重要,本文详细分析了HTTP 协议,并介绍了几种基于已知攻击方式的不足,针对容易暴露的风险,提出了一种特异性Web 应用防火墙的配置。 通过实际应用实践表明,此配置方式不仅可以节约规则库的计算时间,还可增强Web 应用的安全性,有效提高了WAF 防护的效率,具有较高的实用价值。 另外,Web 应用的防御不可松懈,大负荷的WAF 配置,对其本身的安全性和整个网络架构的安全性也是一大隐患,如何与其他网络安全设备形成有效联动并形成压力分担是以后的研究方向。