【干货】ModSecurity - 针对中小站长高效、免费waf组件
组件 高效 免费 干货 针对 WAF 站长 中小
2023-09-14 09:02:09 时间
ModSecurity是一款免费的开源主机waf软件( http://www.modsecurity.org/) 目前官网最新版本为2.9.1 支持nginx/apache/iis 32、64位 。它主要是作为上述web应用的扩展模块形式存在 通过相关的规则文件 对外部恶意的web攻击进行识别 并作出进一步的丢弃操作。
二、安装
1.nginx/apache
在Linux操作系统下 web应用为nginx/apache情况下 安装Modsecurity需要在部署的时候对nginx/apache进行编译 将ModSecurity源码作为一个模块编译进nginx/apache去。 一.准备工作 nginx http://nginx.org/modsecurity for Nginx: [url]https://www.modsecurity.org/tarball/2.8.0/modsecurity-2.8.0.tar.gz[/url]OWASP规则集 [url]https://github.com/SpiderLabs/owasp-modsecurity-crs[/url] 依赖关系
nginx依赖 pcre 、zlib、 openssl 这三个包centos 6.5及以上 系统源里都有 yum install zlib zlib-devel opensslopenssl-devel pcre pcre-devel modsecurty依赖的包 pcre httpd-devellibxml2 apr yum install httpd-devel apr apr-util-develapr-devel pcre pcre-devel libxml2 libxml2-devel
二.启用standalone模块并编译 下载modsecurity fornginx 解压 进入解压后目录执行 ./autogen.sh ./configure --enable-standalone-module--disable-mlogc
三.nginx添加modsecurity模块 在编译standalone后 nginx编译时可以通过 --add-module 添加modsecurity模块 ./configure--add-module /root/modsecurity-2.9.1/nginx/modsecurity/ --prefix /opt/tengine make make install
四.添加规则 modsecurity倾向于过滤和阻止web危险 之所以强大就在于规则 OWASP提供的规则是于社区志愿者维护的 被称为核心规则CRS corerules ,规则可靠强大 当然也可以自定义规则来满足各种需求。
1. 下载OWASP规则 git clone ~ https://github.com/SpiderLabs/owasp-modsecurity-crs mv owasp-modsecurity-crs /opt/tengine/conf/ cd/opt/tengine/conf/owasp-modsecurity-crs mvmodsecurity_crs_10_setup.conf.example modsecurity_crs_10_setup.conf
2.启用OWASP规则 复制modsecurity源码目录下的modsecurity.conf-recommended和unicode.mapping到nginx的conf目录下 并将modsecurity.conf-recommended重新命名为modsecurity.conf。 编辑modsecurity.conf文件 将SecRuleEngine设置为 on //默认值为DetectOnly 即为观察模式 建议大家在安装时先默认使用这个模式 观察一段时间 看是否对网站、服务器有某些不可知的影响 owasp-modsecurity-crs下有很多存放规则的文件夹 例如base_rules、experimental_rules、optional_rules、slr_rules 里面的规则按需要启用 需要启用的规则使用Include进modsecurity.conf即可。 Includeowasp-modsecurity-crs/modsecurity_crs_10_setup.conf Includeowasp-modsecurity-crs/base_rules/modsecurity_crs_41_sql_injection_attacks.conf Include owasp-modsecurity-crs/base_rules/modsecurity_crs_41_xss_attacks.conf Includeowasp-modsecurity-crs/base_rules/modsecurity_crs_40_generic_attacks.conf Include owasp-modsecurity-crs/base_rules /modsecurity_crs_45_trojans.confwebshell //考虑到可能对主机性能上的损耗 目前建议只加入上述几个高危漏洞的防护规则 可以防御住目前大部分的高危web攻击 整体规则的介绍详见 [url]http://www.2cto.com/Article/201409/334251.html[/url] 可以针对自己网站的特殊需求 加入相应的规则。 注意 由于nginx对 http请求的解析会与apache有所不同 因此这些规则其中某些部分是无法再nginx环境下使用的 有兴趣研究的可以参考下 nginxmodule :more_set_headers ( http://comments.gmane.org/gmane.comp.apache.mod-security.owasp-crs/962)
五.配置nginx 在需要启用modsecurity的主机的location下面加入下面两行即可 ModSecurityEnabled on; ModSecurityConfig modsecurity.conf; 下面是示例配置 php虚拟主机conf或是vhost文件 server { listen 80; server_name xxx.com www.xxx.com; location ~ \.php$ { ModSecurityEnabled on; ModSecurityConfig modsecurity.conf; root /web/webroot; index index.php index.html index.htm; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $Document_root$fastcgi_script_name; include fastcgi_params; }
2. IIS
IIS下官方直接提供了msi安装文件 下载了直接安装即可。
一. 准备工作 1. ModSecurity V2.9.1 for IIS MSI Install-32、64bits [url]http://www.modsecurity.org/download.html[/url] 2. Microsoft VisualC 2013 Redistributable Package [url]https://www.microsoft.com/en-gb/download/details.aspx?id 40784[/url]
二. 安装
1.直接将上述2个安装包安装即可。 2.在C:\Windows\System32\inetsrv\config\applicationHost.config找到ModSecurity这一行 改为如下 sectionname ModSecurity overrideModeDefault Allow allowDefinition Everywhere / /sectionGroup 3. 在ModSecurrity安装目录ModSecurity IIS下找到modsecurity.conf 将其中的SecRuleEngine 改为On 4. 在web根目录下的web.config文件中添加如下配置 ?xmlversion 1.0 encoding UTF-8 ? configuration system.webServer ModSecurityenabled true configFile C:\ProgramFiles\ModSecurity IIS\modsecurity_iis.conf / /system.webServer /configuration 5. 重启下网站
三、效果
目前已经测试过的系统包括 centos6、windowsserver2008/2012均已测试安装成功 其他系统安装过程也与上述的类似 建议大家使用系统版本的时候尽量选稳定的最新版本 某些最新版本系统可能功能特性方面改动较大 导致安装过程中存在不可预知错误。
经过测试脚本的测试 拦截率达到较高的水平 其中XSS、sql注入、文件包含、命令执行等高危攻击拦截率也是比较令人满意的。 目前市面上免费的waf产品 安全狗还是做的相当不错的 但是具体使用过程中 还是有某些问题的 windows下兼容性还是有些问题 部署后 网站某些功能使用不了 Linux下的防御效果不如modsecurity。
四、用户维护、操作
1.所有命中规则的外部攻击均会存在Modsecurity_audit.log,用户可以对这个文件中记录进行审计 2.Log文件位置在modsecurity.conf中SecAuditLog这个位置 linux默认开启在 /var/log/modsec_audit.log windows需要自行开启这个配置 并设置日志位置。 3.支持自定义规则 modsecurity有自己的一套waf语法规则 新增规则直接添加到modsecurity.conf中即可。
用WordPress构建网站的7大优势——六翼建站分享 自从 WordPress 于 2003 年首次出现以来,它已经从一个博客平台发展成为一个成熟的网站开发和内容管理系统。事实上,估计有 30% 的网站(包括 CNN 和 eBay 等知名品牌)都是基于 WordPress 构建的。它当然已经走了很长一段路。 如果您正在研究您的网站选项或希望切换平台,您应该考虑使用 WordPress。北京六翼信息技术有限公司为您提供的七大优势:
Wordpress如何降低插件安全风险?Wordpress建站操作简单吗? 通过安装和激活插件快速轻松地向您的网站添加功能的能力是WordPress在网页设计和开发世界中占据至高无上地位的原因之一。但是,在考虑安全性时,插件可能会导致一些问题。
新手建站就用这个方法,无需购买服务器10分钟快速部署你的静态网页 阿里云云开发平台重磅推出开源应用中心,聚合最热门的开源应用,让你像安装app一样快速上线一个网站。面向新人和持续活跃的开发者用户推出上线激励加油包,最高100元无门槛代金券免费送,现在体验还能够领取年轻人的养生神器,桌面不锈钢保温杯!
云开发平台支持一键部署WordPress站点,立即体验领取阿里云定制版帽衫 云开发平台已经接入Serverless k8s和SAE等产品,开发可以极速上线自己的k8s与应用。WordPress是比较流行的建站平台, 云开发平台已经支持一键部署WordPress个人站点。完成体验即可领阿里云定制版帽衫。
相关文章
- 【原创】开源.NET排列组合组件KwCombinatorics使用(二)——排列生成
- 5、四大组件之一-Activity与Intent
- 【Android】友盟的自动更新组件
- .NET平台开源项目速览(6)FluentValidation验证组件介绍与入门(一)
- vue3快速入门-Teleport传送(瞬移组件)
- COZYROC SSIS+ 组件套件----Crack
- 使用微搭自定义组件实现搜索组件
- AndroidUI组件之ActionBar--基于下拉的导航方式
- input组件中实时转换数据值为千位符格式的策略
- 5.10.2 .jmeter组件-断言—XPath断言
- opencv-core组件一之像素操作、Mat常用方法