1. 模块功能
实时检测策略白盒测试模块,用于
-
使用攻击正样本,发现漏报
-
使用攻击负样本,发现误报
2. 实现方法
将攻击时的数据进行录制(包括采集、标记、格式化),然后流式序列化回放给实时检测模块,最后通过对比检测结果,来评估实时检测策略的有效性。
具体包括:
2.1 样本采集管理:
-
样本采集:自动化采集(监听实时攻击事件数据源)与人工添加样本集(未被实时检测模块发现,人工发现的)
-
样本标记:确定样本属性,区分正样本、负样本、灰样本
-
样本存储:指标时序数据存储、结构化日志数据存储、非结构化大文件存储
2.2 样本回放管理:
-
回放环境准备:线上策略检测环境模拟
-
回放任务启动:样本集加载,样本集序列化,回放状态管理
-
回放结果对比:生成回放结果报表,列举出通过项/不通过项
3. 技术点
-
数据处理:
-
数据源存储:不同类型的数据存储选型
-
数据源异构:不同检测模块的接收数据格式不一致
-
数据标记:人工纠错,不难但很烦
-
-
任务调度:
- 回放时间一致性:保证不同的时间粒度回放速度一致
4. 失败分析
伪需求, 实时检测模块的白盒测试是个伪需求, 后续被“攻防演练”这种黑盒的测试平台替换了。检测策略在通用型安全这种场景下,完全不需要做到这么精细,只要整体能扛住,小部分的误拦截与漏拦截根本不伤大雅。
5. 个人收获
-
大数据处理技能:Influxdb,Hadoop+spark,BOS, Kafka
-
调度:celery+bottle
-
DDoS攻击姿势:反射/flood/cc等攻击的攻击工具与样本包
-
交互设计:Axure