为网络服务器的防火墙产生规则文件的方法和系统技术方案

技术编号:4197100 阅读:175 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种为网络服务器的防火墙产生规则文件的方法和系统,所述方法包括:拦截由所述网络服务器的网络应用为浏览器构建的响应;通过添加用于在被执行时捕获已嵌入在所述响应中的正则表达式及其相关的参数值的捕获代码来修改所述响应;将修改后的响应发送至所述浏览器;接收所述浏览器提交的请求以及由所述捕获代码捕获的至少一个正则表达式及其相关的参数值;根据接收的所述请求中包含的至少一个参数名及其相关的参数值以及接收的所述至少一个正则表达式及其相关的参数值,确定与同一个参数值相关的所述参数名和所述正则表达式,并且通过使用所确定的彼此相关的所述参数名和所述正则表达式作为过滤规则来配置防火墙的规则文件。

【技术实现步骤摘要】

本专利技术涉及计算机网络安全领域,特别涉及用于为网络服务器的防火 墙产生规则文件的方法和系统。
技术介绍
随着计算机和互联网技术的iOL诸如网上购物、网上银行等网络应 用日益普及.但是在过去十年针对网络应用的攻击也已成为一大威胁。因 为即使防火墙具有强大的规则集,服务器也经常及时安装补丁,但如果网 络应用的开发人员没有遵循安全编码实践,攻击者可通过端口 80轻而易举地进入系统。最为流行的两种攻击是SQL注入和XSS (跨站点脚本)。 通过SQL注入可能盗取数据库中的数据,甚至可能倾空整个数据库,这 会给某些应用带来灾难。通过XSS还可能盗取普通用户的秘密数据(例 如他们的用户标识或会话标识)。大部分网络应用漏洞是由于服务器站点未对提交的值进行再次检验 而导致的。例如开发者仅^ML客户站点使用脚本文件检验用户的输入,但 未在服务器站点再次检验。这种情况下,恶意用户可能通过攻击客户站点 html文档或直接使用工具构建请求来绕开客户站点脚本文件的校验,因 此由于缺乏服务器站点的再次检验,恶意用户的输入可能会导致SQL或 XSS攻击。目前WAF (网络应用防火墙)是抵御SQL或XSS攻击的一种方法, 用于在应用服务器之前过滤恶意请求。WAF的优点在于无需获得和更 改源代码,即可使过滤规则在应用运行时得到更新,因此当新的漏洞^Jt 现时,该应用无需被再部署。为使用WAF,需要管理员手动配置请求中表项的正向和反向安全模 型。然而,由于大部分应用具有许多表,每个表又具有许多表项,并且每 个表项的正向安全模型又通常不同,因此对整个应用配置正向安全模型非 常耗时。另外,由于WAF管理员可能不熟悉该应用,因此在不进行M 向检测或假正向检测的情况下很难给出准确的正向安全模型配置。
技术实现思路
本专利技术的目的是提供一种新颖的用于为网络服务器的防火墙产生规 则文件的方法和系统,旨在减小网络应用漏洞,避免或者至少减轻手工配 置表项的正向和/或反向安全模型的负担。根据本专利技术的一个方面,一种用于为网络服务器的防火墙产生规则文件的方法,包括拦截由所述网络月艮务器的网络应用为浏览器构建的响应;通过添加用于在被执行时捕获已嵌入在所述响应中的正则表达式及 其相关的参数值的捕获代码来修改所述响应;将l务改后的响应发送至所述浏览器;接收所述浏览器提交的请求以及由所述捕获代码捕获的至少一个正 则表达式及其相关的^值;以及根据接收的所述请求中包含的至少一个参数名及其相关的参数值以 及接收的所述至少一个正则表达式及其相关的参数值,确定与同一个M 值相关的所述>#^和所述正则表达式,并且通过使用所确定的彼此相关文件。本专利技术提出了使用客户站点脚本代码中的正则表达式来自动定义 WAF上的正向和/或反向安全模型。如上所述,通常客户站点脚本代码使 用正则表达式匹配来检验用户输入,本专利技术通过插入捕获代码用于在浏览 器端执行修改后的脚本代码时捕获与参数值相关的正则表达式,来确定正 则表达式和特定的参数值之间的相关性;并且确定特定的^lt值和^^U 之间的相关性,由此判断与同一个M值相关的M名和正则表达式,从述防火墙的规则文件。这样在运行时,用户的请求在被递交到应用服务器之前首先经过 WAF, WAF利用其规则文件中的与^lt名和正则表达式相关的规则iM^ 查用户请求中的与每一项参数名相对应的参数值以验证其是否符合正向 安全模型和反向安全模型。如果请求中的表项不符合其中的安全模型,则 拒绝该请求或记录该请求。根据本专利技术的另 一方面, 一种用于为网络服务器的防火墙产生规则文件的系统,包括拦截装置,被配置成拦截由所述网络服务器的网络应用为浏览器构建 的响应;修改装置,被配置成通过添加用于在被执行时捕获已嵌入在所述响应 中的正则表达式及其相关的M值的捕获代码来修改所述响应;发送装置,被配置成将修改后的响应发送至所述浏览器;接收装置,被配置成接收所述浏览器提交的请求以及由所述捕获代码 捕获的至少一个正则表达式及其相关的参数值;以及规则确定装置,被配置成根据接收的所述请求中包含的至少一个M 名及其相关的参数值以及接收的所述至少 一个正则表达式及其相关的参 数值,确定与同一个#4^值相关的所述>|^名和所述正则表达式,并且通来配置所述防火墙的规则文件。与现有技术的技术方案相比,4吏用本专利技术,在大多情况下均无需手动 配置,即可自动挖掘出针对每个表项的正则表达式,自动或半自动地完成 对正向和/或反向安全模型的配置,由此减轻了 WAF管理员对表项的正向 和/或反向安全模型进行配置的负担并且避免了例如手工配置可能带来的 絲。附图说明参照下面结合附图对本专利技术实施例的说明,会更加容易地理解本专利技术 的以上和其它目的、特点和优点。在附图中,相同的或对应的技术特征或 部件将采用相同或对应的附图标记来表示。图l是示出可实现本专利技术的分布式数据处理系统的框图。图2是应用了本专利技术优选实施例的防火墙配置系统的示意图。图3是^^据本专利技术优选实施例的防火墙配置系统的系统框图。图4是根据本专利技术优选实施例的方法的i^图。具体实施方式下面参照附图来说明本专利技术的实施例。应当注意,为了清楚的目的, 附图和说明中省略了与本专利技术无关的、本领域普通技术人员已知的部件和 处理的表示和描述。系统体系现在参考附图,特别是图l,描述了可实现本专利技术的分布式数据处理系统的框图。分布式数据处理系统100是可实现本专利技术的计算机网络。分 布式数据处理系统100包含网络102,网络102是用于在不同的设备和分 布式数据处理系统100内连接到一起的计算机之间提供通信链接的媒介。在所描述的例子中,服务器104与存储器106 —起连接到网络102。 此外,例如工作站、个人计算机、手机、pda等的客户端108、 110和112 也被连接到网络102。在所描述的例子中,服务器104向客户端108、 110 和112提供如引导文件的数据、操作系统以及应用程序。分布式泰:据处理 系统100可包括另外的服务器、客户端以及其它未显示的设备。在所描述 的例子中,分布式数据处理系统100是因特网,网络102表示对使用tcp/ip协议^NUft:此通信的网络以及网关的集合。当然,分布式数据处理系统100还可被实现为不同类型的网络。企图将图l作为例子,而不是作为本专利技术所述过程的结构限制。在不 偏离本专利技术精神和范围的务ft下,可对图l所示系统作出许多更改。本专利技术可实现为如图1所示的服务器104的数据处理系统。该数据处 理系统可以是包括连接到系统总线的多个处理器的对称对处理器(smp) 系统。亦可使用单处理器系统。本专利技术还可实现为图1中客户端计算机的 数据处理系统。优选实施例以下结合图2和图3对本专利技术的优选实施例进行详细说明。图2 M 用了本专利技术优选实施例的防火墙配置系统的示意图;图3是根据本专利技术优 选实施例的系统框图。浏览器模拟器220用于模拟用户浏览器来执行正则表达式匹配命令 以及提交表单,可选择地还可以模拟用户浏览器来填写表单中的参数值。首先,浏览器模拟器220模拟浏览器打开网络文件或者^v url输 入文件请求或者点击超文本链接,以构建http请求。浏览器模拟器此时 作为网络应用的客户端通过建立与远程主机的特定端口的tcp/ip连接发起请求。监视本文档来自技高网
...

【技术保护点】
一种用于为网络服务器的防火墙产生规则文件的方法,包括: 拦截由所述网络服务器的网络应用为浏览器构建的响应; 通过添加用于在被执行时捕获已嵌入在所述响应中的正则表达式及其相关的参数值的捕获代码来修改所述响应; 将修改后的响应 发送至所述浏览器; 接收所述浏览器提交的请求以及由所述捕获代码捕获的至少一个正则表达式及其相关的参数值;以及 根据接收的所述请求中包含的至少一个参数名及其相关的参数值以及接收的所述至少一个正则表达式及其相关的参数值,确定与同一个 参数值相关的所述参数名和所述正则表达式,并且通过使用所确定的彼此相关的所述参数名和所述正则表达式作为过滤规则来配置所述防火墙的规则文件。

【技术特征摘要】
1.一种用于为网络服务器的防火墙产生规则文件的方法,包括拦截由所述网络服务器的网络应用为浏览器构建的响应;通过添加用于在被执行时捕获已嵌入在所述响应中的正则表达式及其相关的参数值的捕获代码来修改所述响应;将修改后的响应发送至所述浏览器;接收所述浏览器提交的请求以及由所述捕获代码捕获的至少一个正则表达式及其相关的参数值;以及根据接收的所述请求中包含的至少一个参数名及其相关的参数值以及接收的所述至少一个正则表达式及其相关的参数值,确定与同一个参数值相关的所述参数名和所述正则表达式,并且通过使用所确定的彼此相关的所述参数名和所述正则表达式作为过滤规则来配置所述防火墙的规则文件。2. 根据权利要求1所述的方法,其中所述浏览器是普通的客户端浏 览器或者用于模拟普通客户端浏览器的浏览器模拟器。3. 根据权利要求1所述的方法,其中所述通过添加捕获代码来修改 所述响应的步骤进一步包括解析所述响应;以及对所述响应中的选定的 正则表达式匹配命令包装所述用于捕获与所述正则表达式匹配命令相关 的正则表达式和参数值的捕获代码。4. 根据权利要求1所述的方法,其中所述通过添加捕获代码来修改 所述响应的步骤还包括为所述响应中的至少 一个M名填写所^f目关的 錄值。5. 根据权利要求1所述的方法,其中所i^目关的参数值是在所述将 修改后的响应发送至所述浏览器的步骤之后在所述浏览器侧填写的。6. 根据权利要求1所述的方法,其中所勤目关的参数值是在所述浏 览器无法發汪通过原先的参数值并因此无法提交请求之后在所述浏览器 侧重新填写的。7. 根据权利要求1所述的方法,其中所述捕获代码还用于在执行时 发送所述正则表达式及其相关的参数值。8. 根据权利要求7所述的方法,其中接收所述浏览器提交的请求以及由所述捕获代码捕获的至少 一个正则表达式及其相关的参数值的步骤进一步包括分别接收所述浏览器提交的请求以及由所述捕获代码捕获的正则表 达式及其相关的参数值。9. 根据权利要求1的方法,其中接收所述浏览器提交的请...

【专利技术属性】
技术研发人员:郝大明罗琳张煜王晔
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1