免费的web应用防火墙最出名的非ModSecurity莫属。ModSecurity一度以维护者众多,规则更新较积极,并且免费而受安全圈追捧,然而随着时代变迁,ModSecurity的多种致命缺陷也逐渐暴露,包括:
- 缺乏管理后台,使用起来极为不便。
- 安全规则过于粗糙,很容易产生误报,从而影响正常业务。
- 创新性不足,没有智能机器学习、语法语义分析等更为强大的安全引擎。
今天给大家推荐一款由社区驱动的免费、高性能、高扩展顶级Web应用安全防护产品-南墙。南墙 WEB应用防火墙(简称:uuWAF
)是一款全方位网站防护产品。通过专有的WEB入侵异常检测等技术,结合团队多年应用安全的攻防理论和应急响应实践经验积累的基础上自主研发而成。协助各级政府、企/事业单位全面保护WEB应用安全,实现WEB服务器的全方位防护解决方案。
技术优势
- 先进语义引擎
南墙采用业界领先的
SQL、XSS、RCE、LFI
4种基于语义分析的检测引擎,结合多种深度解码引擎可对base64、json、form-data
等HTTP内容真实还原,从而有效抵御各种绕过WAF的攻击方式,并且相比传统正则匹配具备准确率高、误报率低、效率高等特点,管理员无需维护庞杂的规则库,即可拦截多种攻击类型。 - 智能0day防御 南墙创新性的运用机器学习技术,使用异常检测算法对http正常与攻击流量进行区分识别,并对正常流量进行白名单威胁建模。通过机器学习算法自动学习正常流量中的参数特征,并转化成对应的参数白名单规则库,可以在面对各种突发0day漏洞时,无需添加规则即可拦截攻击,免除网站管理者一出现漏洞就需挑灯夜战升级的痛苦。
- 高级规则引擎
南墙积极运用
nginx
和luajit
的高性能、高灵活性特点,除了提供对普通用户友好性较好的传统规则创建模式,还提供了高扩展性、高灵活性的lua脚本规则编写功能,使得有一定编程功底的高级安全管理员可以创造出一系列传统WAF所不能实现的高级漏洞防护规则,用户可以编写一系列插件来扩展WAF现有功能。从而使得在拦截一些复杂漏洞时,可以更加得心应手。
界面预览
南墙提供了美观且简单易用的WAF后台管理界面,安装完成后所有操作都可以在浏览器中完成,所有配置无需重启立即生效,远超市面上大部分免费WAF产品如ModSecurity
,如下:
- 管理后台
- 规则展示
快速安装
南墙支持一键全自动安装,全程无需人工干预,给你带来极致体验 。
- 配置要求
南墙对配置要求极低,详细如下:
- 处理器:64位 1千兆赫(GHz)或更快。
- 内存:不小于1G
- 磁盘空间:不小于16G
- 系统:RedHat 7及以上相关兼容Linux x86_64系统,如CentOS、AlmaLinux、Anolis、Rocky Linux等
- 一键安装
南墙安装及其简便,通常在几分钟内即可安装完毕,具体耗时视网络下载情况而定。
注意:主机版,请尽量选择一台纯净Linux x86_64环境的服务器安装,因为安装过程会卸载旧的MySQL数据库并重新安装,如果没有备份,可造成旧的MySQL数据丢失,并且南墙采用云WAF反向代理模式,默认需要使用80、443端口。
主机版安装方式如下:
sudo yum install -y ca-certificates
sudo rm -f ./waf-install && wget https://waf.uusec.com/waf-install && chmod +x waf-install && ./waf-install
安装成功后会显示 “ 恭喜您,安装成功”
Docker版安装方式如下:
sudo rm -f ./waf.tgz && wget https://waf.uusec.com/waf.tgz && tar -zxf waf.tgz && sh ./waf/uuwaf.sh
快速入门
经过前面的安装和配置,接下来可以开始使用了
- 事前准备
如果你还不熟悉南墙,建议先阅读 南墙WAF使用手册。
- 登录后台
浏览器打开 https://127.0.0.1:4443/ ,默认用户名:admin,密码:wafadmin
注意:登录后请及时修改默认密码并开启动态口令,以保证WAF管理后台账户安全。由于后台动态口令采用的是安全性更高的HMAC-SHA256算法,与一般动态口令客户端不兼容,这里建议iOS用户使用 Google Authenticator,安卓用户使用 FreeOTP。
- 站点配置
- 添加站点,进入站点管理菜单,点击添加站点按钮,按提示添加站点域名与网站服务器ip
- 添加证书,进入证书管理菜单,点击添加证书按钮,上传第二步中域名的https证书和私钥文件
- 将域名DNS的ip指向改为南墙服务器ip地址
- 访问站点域名查看网站是否能够访问
规则编写的API文档,网址:南墙Web应用防火墙。