xwaf(锦衣盾)是一款基于openresty(nginx+lua)开发的下一代web应用防火墙,首创的业务逻辑防御引擎和机器学习引擎能够有效对业务安全风险进行防御,解决传统WAF没法对业务安全进行防御的痛点。
jxwaf
DjangoPython3
jxwaf(锦衣盾)是一款基于openresty(nginx+lua)开发的下一代web应用防火墙,首创的业务逻辑防御引擎和机器学习引擎能够有效对业务安全风险进行防御,解决传统WAF没法对业务安全进行防御的痛点。内置的语义分析引擎配合机器学习引擎能够避免传统WAF规则叠加太多致使速度变慢的问题,同时加强检测精准性(低误报、低漏报)。
Feature 功能
基础攻击防御
SQL注入攻击
XSS攻击
目录遍历漏洞
命令注入攻击
WebShell上传防御
扫描器攻击等…
机器学习
支持向量机(SVM)
语义分析
SQL注入语义分析
XSS攻击语义分析
业务逻辑漏洞防御
注册保护
登录保护
活动防刷
短信炸弹防御
越权漏洞防御
短信验证码校验绕过防御等…
高级CC攻击防御
可针对不一样URL,不一样请求参数单独设置不一样防御变量
人机识别
Cookie安全防御
前端参数加密防御
支持AES加解密
支持DES加解密
支持RSA加解密
透明部署动态口令功能
可对后台管理系统和网站用户提供动态口令(OTP)功能
检测缓存功能
对已通过WAF检测请求进行MD5缓存,提升检测效率
支持协议
HTTP/HTTPS
性能&可靠性
毫秒级响应,请求处理时间小于一毫秒
支持主备部署,避免单点故障
支持集群反向代理模式部署,可处理超大数据流量
支持嵌入式部署,无需改变原有网络拓扑结构
支持云模式部署
管理功能
基础配置
规则配置
报表展现
告警配置
Architecture 架构
jxwaf(锦衣盾)由jxwaf与jxwaf管理中心组成:
jxwaf : 基于openresty(nginx+lua)开发
jxwaf管理中心:http://www.jxwaf.com
Environment 环境
jxwaf
Centos 7
Openresty 1.11.2.4
Install 安装
将代码下载到/tmp目录,运行jxwaf_install.sh文件,jxwaf将安装在/opt/jxwaf目录,具体以下:
$ cd /tmp
$ git clone https://github.com/jx-sec/jxwaf.git
$ cd jxwaf
$ sh install_waf.sh
安装后显示以下即安装成功
nginx: the configuration file /opt/jxwaf/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /opt/jxwaf/nginx/conf/nginx.conf test is successful
访问 http://www.jxwaf.com 并注册帐号,在 WAF规则管理->查看官方规则组 页面按照自身需求加载规则,以后在 WAF规则配置->WAF全局配置 页面获取 “WAFAPIKEY”
修改/opt/jxwaf/nginx/conf/jxwaf/jxwafconfig.json 中的”waf_api_key”为你本身帐号的”WAF_API_KEY”
$ /opt/jxwaf/nginx/sbin/nginx 启动openresty,openresty会在启动或者reload的时候自动到jxwaf管理中心拉取用户配置的最新规则
Docs 文档
JXWAF使用说明
基于Openresty实现业务安全防御
基于Openresty实现透明部署动态口令功能
WAF开发之Cookie安全防御
Contributor 贡献者
chenjc 安全工程师
jiongrizi 前端开发工程师
BUG&Requirement BUG&需求
github 提交BUG题或需求
QQ群 730947092
邮箱 jx-sec@outlook.com
Other 其余
目前开源版本已经能够正常使用,基础功能和官方基础规则均测试完成,能够知足中小企业基本的防御需求。
可是功能尚未所有上线,还有一些功能没有从线下版本迁移到开源版本,如今仅上线了基础攻击防御,Cookie安全防御功能和语义分析功能。其余功能会陆续上线,进度取决于某前端能扣出来的时间,预计年内能所有搞完。
以上是存量的功能,下面列些To do:
经过规则配置实现机器学习数据清洗,特征获取,模型训练,简单说就是个轻量级的机器学习训练-应用平台,用户只需关注最核心的特征获取,其余”脏话累活”由平台解决,下降机器学习应用门槛。目前核心功能已开发完成,与现存其余功能整合中。
命令执行,代码执行等语义分析库开发
官方规则完善
第三方安全应用接口整合
业务安全防御场景开发
报表报警功能完善
云WAF系统开发
Github地址:https://github.com/jx-sec/jxwaf
JXWAF管理中心:http://www.jxwaf.com/
这个项目从最开始的构思到如今开发得七七八八,也差很少一年了。最开始搞这个项目,是由于在深度使用Modsecurity后,发现坑太多Hold不住,没办法我一搞渗透的也只能转行开发WAF了,而后由于职业病的缘由,在写的时候特别对一些容易被绕过的地方重点关注,具体体如今代码的方方面面,这算是这款WAF的一个优势。
接下来谈谈性能这块,目前测试的结果是在1ms之内,核心模块处理时间大概在0.001ms,得益于luajit技术,增长规则几乎没影响。并发的话,单台2G 1核虚拟机测试在5000上下,我这没资源,有兴趣能够测试配置好的实体机的性能,达到10K以上应该没问题。按照以前用Modsecurity的经验,单日PV一亿如下的就不用考虑啥性能问题了,没”富人命”就不用考虑”富人病”。至于并发大流量大的状况,能够上集群或者自研。
简单总结下目标用户:
一我的的安所有/没预算的安所有
有WAF需求没WAF预算没安全人员的公司
给内网/线上应用上二次验证功能
有机器学习防御需求
有业务安全防御需求
盒子WAF扛不住,不想上云/没法上云
有高定制规则/功能需求的公司
文章就不配图了,须要的上www.jxwaf.com查看功能
最后感谢 jsp 在内测期间提交BUG&需求,欢迎各位提交BUG&需求,有坑必填。
专栏前端