「网络安全」如何在Apache 安装开源 WAF

说明: 本文以Windows环境下的Apache安装mod_security为例, 介绍开源WAF产品的安装使用。

http://www.modsecurity.cn/
https://github.com/SpiderLabs/ModSecurity

一、WAF基本介绍

WAF全称Web Application Firewall,即Web应用防火墙。Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品,跟网络防火墙的作用不同。

WAF的使用场景: 例如服务器中有些安全性比较差的应用程序,比如旧版的wordpress、discuz、phpwind等,审计和修改全部代码比较麻烦,这时候最好的办法就是通过部署WAF来实现安全防护。

WAF可以防护的常见风险包括:SQL注入、XSS、利用本地/远程文件包含漏洞进行攻击、PHP代码注入、黑客扫描网站、源代码/错误信息泄露等等。

目前市面上的WAF非常多,总体上可以分成3类: 硬件型WAF(厂商安装)、云WAF(比如阿里云腾讯云华为云的WAF,购买服务)、软件型WAF(可以部署在Apache、Nginx等HTTPServer中,有很多开源的产品)。

二、下载mod_security

下载和安装Apache的步骤参考:《02-Windows安装phpstudy》。

如果使用phpstudy内置的Apache,Apache文件在Extensions目录下,如:E:\phpstudy_pro\Extensions\Apache2.4.39

1、下载mod_security

下载mod_security,根据操作系统位数选择,win64是64位,win32是32位。

https://www.apachelounge.com/download/

img

【一一帮助安全学习,所有资源可以微信扫描下方CSDN官方认证二维码免费领取一一】

解压 mod_security-2.9.3-win64-VS16.zip,复制两个文件: 1)复制 mod_security2.so 到 apache/modules 文件夹 2)复制 yajl.dll 到 apache/bin 文件夹

img

2、修改 Aapche 配置文件

修改 Apache2.4.39\conf\httpd.conf 主要修改内容(没有就加上,有就取消注释,放在相同的模块附近): 取消注释:

LoadModule security2_module modules/mod_security2.so

下面添加一行:

LoadModule unique_id_module modules/mod_unique_id.so

img

添加

Include conf/modsecurity/*.conf

img

3、修改 modsecutiry 配置文件

打开 mod_security-2.9.3-win64-VS16\mod_security-2.9.3\mod_security 复制一个 modsecurity.conf-recommended,改名为 modsecurity.conf

在 Apache2.4.39\conf 下创建一个文件夹,命名为 modsecurity 把 modsecurity.conf 放在 modsecurity 文件夹下

img

modsecurity.conf 修改/添加两行配置:

SecRuleEngine On
SecDefaultAction "deny,phase:2,status:403"

img

此处含义是开启安全规则引擎,如果触发规则,默认防护措施是 返回 HTTP 403 错误。 修改日志路径,否则 Apache 启动会报路径不存在的错误:

SecAuditLog E:\phpstudy_pro\Extensions\Apache2.4.39\logs\modsec_audit.log

img

img

因为没有 unicode.mapping 文件,这一行要注释

SecUnicodeMapFile unicode.mapping 20127

img

三、添加 owasp 规则

1、下载规则文件

https://github.com/SpiderLabs/owasp-modsecurity-crs

img

2、配置规则

解压 owasp-modsecurity-crs-3.2.0,把 rules 文件夹复制到 Apache2.439\conf\modsecurity 目录下 复 制 crs 根 目 录 下 的 crs-setup.conf.example , 重 命 名 为 crs-setup.conf,放在 Apache2.4.39\conf\modsecurity 目录下

img

3、修改 httpd.conf

Apache2.4.39\conf\httpd.conf 再添加下面这一行(第一行前面 添加过了):

Include conf/modsecurity/rules/*.conf

img

4、重启 Apache

所有配置修改完以后重启 Apache。

5、测试注入

这时候尝试注入,返回 phpstudy 的 403 页面:

img

如果sqlmap 也无法注入:

sqlmap --purge     (先清空缓存)
sqlmap.py -u http://localhost/school/url.php?id=1

img
结果显示有 75 次 403 禁止访问的错误。

读者福利:知道你对网络安全感兴趣,便准备了这套网络安全的学习资料

👉[[[CSDN大礼包:《黑客&网络安全入门&进阶学习资源》免费分享]]]安全链接,放心点击

对于0基础小白入门:

如果你是零基础小白,想快速入门网络安全是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以找到适合自己的学习方案

包括: 网络渗透、逆向分析、漏洞攻击、内核安全、移动安全、破解PWN等众多子方向。 带你从零基础系统性的学好网络安全!

👉网安学习成长路线图、网安视频合集👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

👉精品网安学习书籍👈

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

👉网络安全源码合集+工具包👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

👉CTF项目实战👈

学习网安技术最忌讳纸上谈兵,而在项目实战中,既能学习又能获得报酬的CTF比赛无疑是最好的试金石!

在这里插入图片描述

最后就是大家最关心的网络安全面试题板块
在这里插入图片描述在这里插入图片描述
这份完整版的学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值