《Apache Flink 案例集(2022版)》——3.机器学习——奇安信-如何设计信息安全领域的实时安全基线引擎(3)

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 《Apache Flink 案例集(2022版)》——3.机器学习——奇安信-如何设计信息安全领域的实时安全基线引擎(3)

《Apache Flink 案例集(2022版)》——3.机器学习——奇安信-如何设计信息安全领域的实时安全基线引擎(2) https://developer.aliyun.com/article/1228164



基线的周期分为 learn,ready,close,expire 四个阶段:  


learn 表示学习阶段,在这个阶段基线学习输入的事件流;

ready 阶段表示当前时间线已经到了基线的学习截止时间,但是因为延迟时间,基线需要等待一个延迟时间,在这个时间段基线可以继续学习延迟的事件,同时基线可以用于异常检测;

close 表示当前时间线到了延迟时间,此时基线不再学习输入的事件,只用于异常检测; expire 表示当前时间线到了基线超时时间,需要基线停止进行异常检测,并删除。


基线的计算由两种情况触发:  

第一种是事件触发计算,每条事件到达之后会触发一次异常检测计算;

第二种是时间触发计算,基线周期会注册时间定时器,时间定时器触发之后会触发相关基线计算流程。  


基线的输出分为基线异常事件输出和基线内容输出:  

基线异常事件输出发生于基线异常检测过程,当发现异常事件时需要输出对应的事件;

基线内容输出发生于基线学习完成之后需要将基线本身进行输出,用于基线编辑和基线本身异常分析。  


在基线学习过程中,通常学习周期是比较长的,比如最近一周、最近一个月等,长周期的学习通常会面临一个数据割裂的问题,比如学习最近一周的数据,但是现在是星期三,也就是说最近一周的数据分成两个部分,其中从星期一到星期二的数据是保存在历史数据存储中,星期三及之后的数据是实时发生的,这里会涉及历史和实时数据融合学习的问题。这里可以分为三种情况:  


第一是待学习数据全部是历史数据,这需要支持历史数据学习范围探测,和在线基线更新;

第二是待学习的数据全部是实时数据,这要求支持基线自动学习、基线自动检测和基线自动更新;

第三种是历史和实时数据融合,这需要支持历史和实时数据边界划分、基线融合、重复数据消除。


image.png


用户在使用过程中经常要对规则进行操作,这些操作会引起运行任务的启停,启停过程中数据需要前后保证一致,不能因为启停而导致保存的数据丢失。  


Flink 本身支持任务重启时重新加载数据,但是在基线引擎这里问题会比较复杂,因为用户可能会停用、启用或者修改规则,这会引起规则集发生变化,进而引起执行图发生变化,为了保证任务重启时不变的规则能正确从 savepoint 加载到到正确的数据,需要支持图局部状态稳定,即在图优化过程中图局部变化不影响其它子图,同时在代码生成过程中保证稳定子图生成稳定的执行代码,变化规则只影响与其相关的子图,其它不变的规则不受影响。  


基线学习过程中通常保存大量的中间数据,为了加快 savepoint 和 checkpoint 速度,需要对复杂数据结构的序列化和反序列化进行优化,还需支持增量状态。引擎服务通常需要对多用户提供分析服务,因此还需对多用户多任务的状态进行管理,保证每个任务都能准确关联到其对应的状态数据。


未来规划

随着知识的扩散和各类安全漏洞的频发,各种攻击手法和安全威胁也层出不穷,这对安全分析能力的要求也越来越高,需要引擎能持续进行更新和优化,以提高对安全攻击的检测能力,后续需要继续将更多更好的行为学习算法和技术与安全基线集成,提高安全基线的检测能力。同时期望能将引擎的一些实践通过某些渠道回馈到社区,让更多的人能使用其中好的设计和实践。

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
4月前
|
存储 人工智能 大数据
The Past, Present and Future of Apache Flink
本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。
509 33
The Past, Present and Future of Apache Flink
|
23天前
|
存储 SQL 关系型数据库
拉卡拉 x Apache Doris:统一金融场景 OLAP 引擎,查询提速 15 倍,资源直降 52%
拉卡拉早期基于 Lambda 架构构建数据系统面临存储成本高、实时写入性能差、复杂查询耗时久、组件维护复杂等问题。为此,拉卡拉选择使用 Apache Doris 替换 Elasticsearch、Hive、Hbase、TiDB、Oracle / MySQL 等组件,实现了 OLAP 引擎的统一、查询性能提升 15 倍、资源减少 52% 的显著成效。
拉卡拉 x Apache Doris:统一金融场景 OLAP 引擎,查询提速 15 倍,资源直降 52%
|
1月前
|
SQL 存储 人工智能
Apache Flink 2.0.0: 实时数据处理的新纪元
Apache Flink 2.0.0 正式发布!这是自 Flink 1.0 发布九年以来的首次重大更新,凝聚了社区两年的努力。此版本引入分离式状态管理、物化表、流批统一等创新功能,优化云原生环境下的资源利用与性能表现,并强化了对人工智能工作流的支持。同时,Flink 2.0 对 API 和配置进行了全面清理,移除了过时组件,为未来的发展奠定了坚实基础。感谢 165 位贡献者的辛勤付出,共同推动实时计算进入新纪元!
295 1
Apache Flink 2.0.0: 实时数据处理的新纪元
|
6月前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
1262 13
Apache Flink 2.0-preview released
|
6月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
226 3
|
1月前
|
消息中间件 JSON 数据库
探索Flink动态CEP:杭州银行的实战案例
探索Flink动态CEP:杭州银行的实战案例
|
6月前
|
分布式计算 监控 大数据
大数据-131 - Flink CEP 案例:检测交易活跃用户、超时未交付
大数据-131 - Flink CEP 案例:检测交易活跃用户、超时未交付
163 0
|
6月前
|
消息中间件 关系型数据库 MySQL
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
496 0
|
1月前
|
存储 大数据 数据处理
您有一份 Apache Flink 社区年度报告请查收~
您有一份 Apache Flink 社区年度报告请查收~
|
4月前
|
存储 SQL 人工智能
Apache Flink 2.0:Streaming into the Future
本文整理自阿里云智能高级技术专家宋辛童、资深技术专家梅源和高级技术专家李麟在 Flink Forward Asia 2024 主会场的分享。三位专家详细介绍了 Flink 2.0 的四大技术方向:Streaming、Stream-Batch Unification、Streaming Lakehouse 和 AI。主要内容包括 Flink 2.0 的存算分离云原生化、流批一体的 Materialized Table、Flink 与 Paimon 的深度集成,以及 Flink 在 AI 领域的应用。
890 13
Apache Flink 2.0:Streaming into the Future

相关产品

  • 实时计算 Flink版
  • 推荐镜像

    更多
    下一篇
    oss创建bucket