waf日志分析解决方案

首先是来自于外部搜集的规则以及我们内部整理的规则,这是一个初始来源。

我们会将规则动态加载到一个基于storm的实时计算流量的框架,相当于做一个只检测不拦截的测试。

通过把报警日志做离线分析后,统计出其中的漏报误报,对偏差较大的规则进行修改优化后,加入到规则中,这样形成了一个闭环。在运营维护过程中,不断的去优化规则。

日志处理方面,加入监督式机器学习,用于进行误报判断。一个完整的闭环形成日志收集到优化特征,继而优化参数进行离线训练,将分类器的结果进行误报和漏报率进行统计机算,最终用域下一次日志结果分类中。

通过长时间的观察和经验,发现误报的日志在一些特征值上有着明显的区别,比如该IP距离上次请求的时间间隔会比较大。那么根据我们提取出来的规则,我们会整理一份训练数据,包括漏报和误报日志样例,训练后的结果直接作为日志分类时的分类器。对判断为误报的日志则输出到管理控制台,人工确认后的结果,则继续作为样本优化分类器。

通过交换机流量镜像的方式,将流量镜像rabbit mq,并通过STORM去消费。STORM这块除了计算每条请求是否为攻击外,还会计算一些各种维度上的信息,总结出封堵的动态规则,发送至WAF module的REST接口,通过WAF来直接拦截,防止一些漏报和攻击绕过。

对WAF日志进行处理和统计,用到了spark的streaming和mllib。主要的逻辑为解析日志,计算特征值,根据统计学的SVM算法进行分类,尝试找出其中的误报日志,输出到管理控制台进行人工确认。而人工确认后的结果,会再次作为训练数据去训练分类器。

自动化的方向发展,比如:无人值守、自动加白、自动识别可疑访问。

大数据分析,前置分析:

基于storm对流量进行实时机算

更宽泛的规则策略

实时分数机算

可自动或手段与waf联动

闭环设计,日志处理:

supervised learning

误报率、漏报率

机器学习为辅、人工为主​​​​​​​

大数据分析,后置学习:

基于spark stream、spark mllib

针对waf日志进行解析、分析、统计、学习

自动分析每日上百万日志中误报条目

人工确认结果作为训练数据输入

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值