Apachemodrewrite分析及其在网站安全中应用.docVIP

  • 2
  • 0
  • 约4.41千字
  • 约 9页
  • 2018-08-11 发布于福建
  • 举报

Apachemodrewrite分析及其在网站安全中应用.doc

Apachemodrewrite分析及其在网站安全中应用

Apachemodrewrite分析及其在网站安全中应用   摘要:该文介绍了开源免费的Apache网站服务器软件及mod_rewrite重写模块,通过分析模块规则将其应用到网站安全中。   关键词:Apache;mod_rewrite;网站安全   中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)02-0021-02   Apache以其稳定性、高可扩展性,在互联网网站服务器领域赢得绝对第一的市场占有率。互联网中大部分网站采用Apache作为其后台服务程序,而网络上针对采用Apache提供服务支持网站的攻击也是非常频繁。随着网站应用系统不断地建设及陆续投入运行,这些网站应用程序本身所带来的安全漏洞也越来越多。目前基于网站的各种应用直接承载有各类虚拟资产,而这类虚拟资产可以方便的转换为现实经济价值。很显然,此类网站应用系统将会成为以经济利益为驱动的攻击首选。   针对网站应用层的攻击,如SQL注入攻击、XSS跨站脚本攻击、恶意代码等是传统网络安全产品如防火墙、IDS/IPS设备所不能防御的。但这些针对网站的攻击必须经过网站服务器程序,故在Apache网站服务器程序层面对攻击进行防御,将非常有效的降低网站应用本身所带来的安全隐患。对于采用Apache的网站来说,借助于mod_rewrite模块实施安全策略,将大大提高网站的安全性。   1 Apache简介   互联网领域中的Apache指的是Apache网站服务器软件,被广泛应用于互联网网站服务器中。其前身为美国国家计算机安全协会开发的网站服务器软件,Apache项目开始于1995年,之后其开始取代原网站服务器软件的市场,并于1996年4月开始一直维持其霸主地位。到2015年初有近3.5亿的网站使用的是Apache作为其服务器后台为网站提供服务。   Apache由Apache软件基金会开发和维护,主要用于但不限于类Unix系统。各种操作系统环境中都可以见到Apache的身影,包括Unix、FreeBSD、Linux、Solari、Novell NetWare、OS X、Windows和OpenVMS。Apache采用Apache授权协议,保障其采用源代码的方式发布。Apache项目的目标就是提供一个安全、有效和可扩展的网站服务器软件。其开发进度维持与HTTP标准的同步。   2 mod_rewrite模块分析   Apache的扩展是通过加载功能模块来实现的,mod_rewrite为一个基于规则的URL重写模块。该模块采用基于规则的正则表达式引擎,对网站访问请求中的URL进行实时的重写。模块支持无限数量的规则和无限数量的条件判断,条件判断的范围非常广,可以是服务器变量、环境变量、HTTP头、时间戳等,甚至可以是对外部数据库查询的结果。   mod_rewrite模块对整个URL进行操作,可用于生成URL查询串、可指向内部处理进程、外部URL重定向或者内部代理。mod_rewrite模块的特性如下:   1) 强大的PCRE正则表达式分析引擎;   2) 无限的规则数;   3) 每个规则中无限的条件判断。   mod_rewrite模块功能非常强大,因此也可以设置的非常复杂。除了基本的URL重写功能外,mod_rewrite模块还能实现如下高级功能:   1) 访问控制;   2) 动态虚拟主机;   3) 动态代理;   4) 负载均衡;   5) 基于时间的URL重写;   6) URL重新定向和重新映射。   通过mod_rewrite模块的访问控制功能,可在Apache网站服务器层面对HTTP请求方法、客户端请求、Referrer、Cookies和查询字符串方面对网站安全进行强化。   3 mod_rewrite强化网站安全   新版本中的Apache默认都已加载mod_rewrite模块,只需确认Apache主配置文件httpd.conf中有该模块的加载语句即可:LoadModule rewrite_module modules/mod_rewrite.so。   3.1 过滤HTTP方法   目前的HTTP协议定义了GET、POST、HEAD、OPTIONS、PUT、DELETE、TRACE 、CONNECT和PATCH方法,每个方法都有具体的应用场合,但作为一个常规网站来说,用到的方法只有GET和POST。通过mode_rewrite模块可以对不使用的方法进行排除,以降低网站遭受攻击的可能性。限定非GET和POST方法的规则指令如下:   RewriteEngine On   RewriteCond %{REQUEST_METHOD} ^(head|options|put|

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档