SlideShare a Scribd company logo
Apache 安装配置 ModSecurity
               ----ourren 2012.8.2
1、安装 LAMP 和编译环境

安装 apache+php+mysql

   #yum -y install httpd php mysql mysql-server php-mysql

apache 版本




Mysql 版本




Centos 版本




安装编译环境

   #yum install gcc make
   #yum install libxml2 libxml2-devel httpd-devel pcre-devel curl-devel

启动服务测试

   #service httpd start
   #service mysqld start

注意:需要 iptables 允许所有 IP 访问 80 端口
2、安装 mod_security

  从官方下载源码、编译并安装。

  //sourceforge fuck gwf
  #wget http://www.modsecurity.org/download/modsecurity-apache_2.6.6.tar.gz
  # tar xzf modsecurity-apache_2.6.6.tar.gz
  # cd modsecurity-apache_2.6.6
  # ./configure
  # make install
  # cp modsecurity.conf-recommended /etc/httpd/conf.d/modsecurity.conf
3、规则配置

      需要配置一些规则防范未知漏洞和扫描,采用 Modsecurity 推荐规则和 OWASP_CRS 两个

规则进行组合,如下:


      详细规则采用 OWASP_CRS:

http://downloads.sourceforge.net/project/mod-security/modsecurity-crs/0-CURRENT/modsecurity-crs_2.2.5.tar.gz


      基本规则设置采用 Modsecurity 推荐规则:

http://mod-security.svn.sourceforge.net/viewvc/mod-security/m2/trunk/modsecurity.conf-recommended


      使用的时候将 Modsecurity 推荐规则文件内容加在 modsecurity_crs_10_config.conf 的前

面,并把 SecRuleEngine DetectionOnly 改为 SecRuleEngine On 即可(因为需要的不仅仅是检

测,需要防御)。

# cd /etc/httpd/
# wget http://downloads.sourceforge.net/project/mod-security/modsecurity-crs/0-CURRENT/modsecurity-crs_2.2.5.tar.gz
# tar xzf modsecurity-crs_2.2.5.tar.gz
# mv modsecurity-crs_2.2.5 modsecurity-crs
# cd modsecurity-crs
# cp modsecurity_crs_10_setup.conf.example modsecurity_crs_10_config.conf
# vi /etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf
4、加载模块

Apache 加载 mod_security 模块,注意要修改的时候需要关闭 apache。

   # vi /etc/httpd/conf/httpd.conf

在其中找到 LoadModule 并在下面添加下面的代码:

   #LoadModule security2_module modules/mod_security2.so
   #LoadModule unique_id_module modules/mod_unique_id.so




然后添加模块的配置文件

   <IfModule security2_module>
        Include /etc/httpd/modsecurity-crs/modsecurity_crs_10_config.conf
        Include /etc/httpd/modsecurity-crs/base_rules/*.conf
   </IfModule>




重启 apache

   # service httpd restart
5、功能测试

创建数据库

  #CREATE TABLE user (id int(5),username VARCHAR(20), password CHAR(1));

php 测试代码




数据库结构




插入数据

  # insert user(id,username,password) values(1,'admin','adminpass');
测试网页




可以看到用 Havij 成功爆出了数据库和数据




加载 mod_security 模块后,正常访问看看效果:




可以看到现在无法用 Havij 爆出数据信息,其日志信息中有提示,
                                “Please register to enable

mod_security bypass”,但是当开启这个功能后,发现还是不能注入。
Apache安装配置mod security
看 modsec_audit 日志是发现有注入的,并且利用了注释来绕过防火墙。
6、总结

    通过上面的安装和测试,发现 modsecurity 可以防御一些攻击,同时用户可以根据需求

自定义规则,从功能方面来看还是很不错的,不过规则配置相对比较复杂,实际应用的话需

要深入研究才行。



参考资料

http://www.tecmint.com/protect-apache-using-mod_security-and-mod_evasive-on-rhel-centos-f
edora/
http://mod-security.svn.sourceforge.net/viewvc/mod-security/m2/trunk/modsecurity.conf-reco
mmended
http://blog.secaserver.com/2011/10/install-mod_security-apache2-easiest/

More Related Content

ODP
GNU Build System
PDF
使用Supervisor守护python进程
PDF
Installation and configuration 11g r2
PPTX
StackOps step by-step guide
PDF
Installation and configuration 11g r2 asm using job role separation(grid & or...
PDF
Ruby on Rails 開發環境建置 for Mac
PDF
Ruby on Rails 開發環境建置 for Ubuntu
GNU Build System
使用Supervisor守护python进程
Installation and configuration 11g r2
StackOps step by-step guide
Installation and configuration 11g r2 asm using job role separation(grid & or...
Ruby on Rails 開發環境建置 for Mac
Ruby on Rails 開發環境建置 for Ubuntu

What's hot (20)

PDF
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
PPTX
Node.js长连接开发实践
PDF
Lamp安全全攻略
PDF
VMware Rhel5 Oracle10g Rac
PDF
下一代虚拟存储解决方案:Vaai
PPT
Hadoop平台搭建
PDF
V tiger 5.4.0 图文安装教程
DOC
Oraliux+mysql5单机多实例安装文档
PDF
Oracle enterprise manager cloud control 12c release 5 installation on oracle ...
PDF
超。光速 網站最佳化實戰 -twMVC#8
PDF
Burp suite injection中的应用by小冰
DOC
Nagios的安装部署和与cacti的整合(linuxtone)
PPTX
Npm node.js的套件管理程式
PDF
twMVC#26 | 淺談 ASP.NET Caching 技術與實踐
PDF
利用Cent Os快速构建自己的发行版
PDF
My sql 5.5 innodb xtradb 性能诊断与优化
PDF
Install Oracle11g For Aix 5 L
PPTX
03.python工作环境
DOCX
Oracle prm安装说明
PDF
unixtoolbox_zh_CN
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
Node.js长连接开发实践
Lamp安全全攻略
VMware Rhel5 Oracle10g Rac
下一代虚拟存储解决方案:Vaai
Hadoop平台搭建
V tiger 5.4.0 图文安装教程
Oraliux+mysql5单机多实例安装文档
Oracle enterprise manager cloud control 12c release 5 installation on oracle ...
超。光速 網站最佳化實戰 -twMVC#8
Burp suite injection中的应用by小冰
Nagios的安装部署和与cacti的整合(linuxtone)
Npm node.js的套件管理程式
twMVC#26 | 淺談 ASP.NET Caching 技術與實踐
利用Cent Os快速构建自己的发行版
My sql 5.5 innodb xtradb 性能诊断与优化
Install Oracle11g For Aix 5 L
03.python工作环境
Oracle prm安装说明
unixtoolbox_zh_CN
Ad

Viewers also liked (20)

PPT
Methods to Bypass a Web Application Firewall Eng
PPTX
Waf bypassing Techniques
ODP
台北市研習_LAMP_20140815
PPT
PHP & AppServ
PPT
{{more}} Kibana4
PDF
Introduction to MySQL and phpMyAdmin
PPTX
File upload vulnerabilities & mitigation
PDF
Sql injection bypassing hand book blackrose
PDF
The Hidden XSS - Attacking the Desktop & Mobile Platforms
PPTX
Cross Domain Hijacking - File Upload Vulnerability
PPTX
XSS Attacks Exploiting XSS Filter by Masato Kinugawa - CODE BLUE 2015
PDF
Building Advanced XSS Vectors
PDF
주로사용되는 Xss필터와 이를 공격하는 방법
PDF
New Methods in Automated XSS Detection & Dynamic Exploit Creation
PDF
Web Application Firewalls Detection, Bypassing And Exploitation
PPT
XPath Injection
PPTX
Codeigniter 3.0 之 30 分鐘就上手
PDF
libinjection: from SQLi to XSS  by Nick Galbreath
PDF
XML Attack Surface - Pierre Ernst (OWASP Ottawa)
PPT
How To Detect Xss
Methods to Bypass a Web Application Firewall Eng
Waf bypassing Techniques
台北市研習_LAMP_20140815
PHP & AppServ
{{more}} Kibana4
Introduction to MySQL and phpMyAdmin
File upload vulnerabilities & mitigation
Sql injection bypassing hand book blackrose
The Hidden XSS - Attacking the Desktop & Mobile Platforms
Cross Domain Hijacking - File Upload Vulnerability
XSS Attacks Exploiting XSS Filter by Masato Kinugawa - CODE BLUE 2015
Building Advanced XSS Vectors
주로사용되는 Xss필터와 이를 공격하는 방법
New Methods in Automated XSS Detection & Dynamic Exploit Creation
Web Application Firewalls Detection, Bypassing And Exploitation
XPath Injection
Codeigniter 3.0 之 30 分鐘就上手
libinjection: from SQLi to XSS  by Nick Galbreath
XML Attack Surface - Pierre Ernst (OWASP Ottawa)
How To Detect Xss
Ad

Similar to Apache安装配置mod security (20)

DOC
康盛创想项目部Linux 服务器部署标准(最新版)
DOC
X64服务器 lamp服务器部署标准 new
DOC
Android系统移植技术详解
DOC
尚观Linux研究室 linux驱动程序全解析
PPTX
8, lamp
PPT
Wamp环境下安装 wordpress
XLS
Puppet安装总结
PDF
unix toolbox 中文版
PDF
使用 Load Balancer 與 Redis 部署 LAMP Server 高併發架構 - Global Azure Taiwan 20200425 ...
DOC
linux安装以及LAMP 环境安装详细
ODP
GNU Autoconf / Automake #1
PPTX
使用Rpm&yum进行基础软件管理
PPTX
使用Rpm&yum进行基础软件管理
PDF
Node.js從無到有 基本課程
PPTX
5, system admin
KEY
Linuxguide4f2e
KEY
LinuxGuide4F2E
PDF
Docker容器微服務 x WorkShop
PDF
Linux network monitoring hands-on pratice
PPT
南投替代役整理組數位典藏報告
康盛创想项目部Linux 服务器部署标准(最新版)
X64服务器 lamp服务器部署标准 new
Android系统移植技术详解
尚观Linux研究室 linux驱动程序全解析
8, lamp
Wamp环境下安装 wordpress
Puppet安装总结
unix toolbox 中文版
使用 Load Balancer 與 Redis 部署 LAMP Server 高併發架構 - Global Azure Taiwan 20200425 ...
linux安装以及LAMP 环境安装详细
GNU Autoconf / Automake #1
使用Rpm&yum进行基础软件管理
使用Rpm&yum进行基础软件管理
Node.js從無到有 基本課程
5, system admin
Linuxguide4f2e
LinuxGuide4F2E
Docker容器微服務 x WorkShop
Linux network monitoring hands-on pratice
南投替代役整理組數位典藏報告

Apache安装配置mod security

  • 1. Apache 安装配置 ModSecurity ----ourren 2012.8.2
  • 2. 1、安装 LAMP 和编译环境 安装 apache+php+mysql #yum -y install httpd php mysql mysql-server php-mysql apache 版本 Mysql 版本 Centos 版本 安装编译环境 #yum install gcc make #yum install libxml2 libxml2-devel httpd-devel pcre-devel curl-devel 启动服务测试 #service httpd start #service mysqld start 注意:需要 iptables 允许所有 IP 访问 80 端口
  • 3. 2、安装 mod_security 从官方下载源码、编译并安装。 //sourceforge fuck gwf #wget http://www.modsecurity.org/download/modsecurity-apache_2.6.6.tar.gz # tar xzf modsecurity-apache_2.6.6.tar.gz # cd modsecurity-apache_2.6.6 # ./configure # make install # cp modsecurity.conf-recommended /etc/httpd/conf.d/modsecurity.conf
  • 4. 3、规则配置 需要配置一些规则防范未知漏洞和扫描,采用 Modsecurity 推荐规则和 OWASP_CRS 两个 规则进行组合,如下: 详细规则采用 OWASP_CRS: http://downloads.sourceforge.net/project/mod-security/modsecurity-crs/0-CURRENT/modsecurity-crs_2.2.5.tar.gz 基本规则设置采用 Modsecurity 推荐规则: http://mod-security.svn.sourceforge.net/viewvc/mod-security/m2/trunk/modsecurity.conf-recommended 使用的时候将 Modsecurity 推荐规则文件内容加在 modsecurity_crs_10_config.conf 的前 面,并把 SecRuleEngine DetectionOnly 改为 SecRuleEngine On 即可(因为需要的不仅仅是检 测,需要防御)。 # cd /etc/httpd/ # wget http://downloads.sourceforge.net/project/mod-security/modsecurity-crs/0-CURRENT/modsecurity-crs_2.2.5.tar.gz # tar xzf modsecurity-crs_2.2.5.tar.gz # mv modsecurity-crs_2.2.5 modsecurity-crs # cd modsecurity-crs # cp modsecurity_crs_10_setup.conf.example modsecurity_crs_10_config.conf # vi /etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf
  • 5. 4、加载模块 Apache 加载 mod_security 模块,注意要修改的时候需要关闭 apache。 # vi /etc/httpd/conf/httpd.conf 在其中找到 LoadModule 并在下面添加下面的代码: #LoadModule security2_module modules/mod_security2.so #LoadModule unique_id_module modules/mod_unique_id.so 然后添加模块的配置文件 <IfModule security2_module> Include /etc/httpd/modsecurity-crs/modsecurity_crs_10_config.conf Include /etc/httpd/modsecurity-crs/base_rules/*.conf </IfModule> 重启 apache # service httpd restart
  • 6. 5、功能测试 创建数据库 #CREATE TABLE user (id int(5),username VARCHAR(20), password CHAR(1)); php 测试代码 数据库结构 插入数据 # insert user(id,username,password) values(1,'admin','adminpass');
  • 7. 测试网页 可以看到用 Havij 成功爆出了数据库和数据 加载 mod_security 模块后,正常访问看看效果: 可以看到现在无法用 Havij 爆出数据信息,其日志信息中有提示, “Please register to enable mod_security bypass”,但是当开启这个功能后,发现还是不能注入。
  • 10. 6、总结 通过上面的安装和测试,发现 modsecurity 可以防御一些攻击,同时用户可以根据需求 自定义规则,从功能方面来看还是很不错的,不过规则配置相对比较复杂,实际应用的话需 要深入研究才行。 参考资料 http://www.tecmint.com/protect-apache-using-mod_security-and-mod_evasive-on-rhel-centos-f edora/ http://mod-security.svn.sourceforge.net/viewvc/mod-security/m2/trunk/modsecurity.conf-reco mmended http://blog.secaserver.com/2011/10/install-mod_security-apache2-easiest/