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

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

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



平台建设

目前主流实时计算框架主要有两个,Spark 和 Flink,而奇安信最初设计安全基线引擎是在 2018 年左右,当时主流研究 Storm、Spark、Flink 这三个计算框架,综合各方面因素最终选择了 Flink 作为底层计算框架。当时使用的 Flink 是 1.4 版本左右,是一个比较成熟的版本,相比其它框架,它的 API 以及它的底层分布式和流计算实现方式比较符合奇安信的使用场景。

image.png


Flink 的优势点比较突出,它是分布式计算框架,部署灵活,适配目前常见大数据平台。它拥有很好的处理性能,能达到高吞吐低延迟,这非常适合进行实时安全分析。它还提供灵活的 DataStreaming API,方便实现定制化需求。另外,还支持简单易用的检查点和保存点机制。并且,作为目前非常热门的计算框架,社区活跃,有丰富的文档和场景样例。


image.png


奇安信的实时安全基线引擎应用框架分为三层:  


底层是部署层,通常是一个大数据集群;


第二层是安全分析层,基于 Flink DataStreaming API 来构建安全基线引擎,Flink 负责底层的分布式计算和事件流发送,具体的业务计算由安全基线引擎来完成。安全基线引擎向用户提供的使用接口为规则和 DSL,用户通过界面来下发规则 DSL 给引擎,引擎根据规则和 DSL 来对事件流进行分析和计算,同时根据规则语义使用外部的数据,比如知识数据、威胁情报、资产和漏洞等;


用户通过第三层的应用层来管理和使用引擎。并基于引擎数据结果态势分析,安全运营,资源监控等具体安全业务。

image.png


引擎的业务流程分为三块,即用户界面,引擎服务和引擎分析任务。用户通过用户界面来进行规则配置、基线管理和运行监控。引擎服务以 RESTfull API 的方式向用户提供规则下发、基线下发、状态监控等服务。引擎服务在接收到用户的规则下发请求后需要对下发的规则集进行解析、优化之后生成分析任务代码包,分析任务代码提交大数据集群运行,分析任务在运行过程中接收引擎服务的基线发下数据,对运行时基线进行增删改操作。


分析任务还向引擎服务报告任务运行状态,引擎服务将任务运行状态映射成业务监控信息,提供给用户查询和分析使用。


image.png


实时计算一个核心要素是时间,不同的时间处理方法和实现方案会带来差异很大甚至完全不同的计算结果。实时分析中,时间主要影响两个功能,即时间窗口和时间线。  


在安全分析场景里,时间窗口需要支持通用滑动时间窗口、也要支持自然时间滑动时间窗口,比如每年,每月,每星期等自然,甚至是变长时间、需要支持层叠窗口重复数据融合,降低数据存储量、能自动进行重复计算消除,避免重复告警、时间定时器归并、事件乱序正确处理,避免事件乱序引起错误计算。  


时间线可分为事件发生时间和时间处理两类,进而延伸出时间精度,不同的时间精度会对处理性能和存储造成很大的压力,比如需要对时间进行排序的场景。由于实时分析中事件可能是乱序的,因此需要支持延迟时间,解决大部分因为乱序而造成的计算不准确问题。部分计算场景涉及系统时间<->事件时间之间的相互转换,需要能提供两种时间的转换计算方法。由于执行图是大量子图融合而来,因此需要同时支持对全局和局部时间水位进行管理,保证图上时间线能正确推进。


image.png


基线处理流程主要分为三个部分:基线学习、基线检测和基线路由,其中穿插事件过滤、时间窗口、基线降噪、基线管理等流程。基线学习流程包含从消息队列和存储中读取事件流,经过事件过滤和时间窗口聚合,事件流中可能包含噪音数据,还需进行数据降噪流程,最后基线学习流程学习输入的事件流程,生成对应的安全基线。学习完成的安全基线在进行基线管理流程之后用于异常检测,用于预测和异常检测,如果发现异常行为,则产生异常事件,输出到后续的处理流程,用于后续的业务的使用。用户在使用过程中可能需要修改或删除一些学习好的基线或者自己新建一个基线,这些基线的增删改操作通过基线路由功能来完成,基线路由流程将用户编辑的基线在图上路由之后正确的分发到对应的图节点实例中。


image.png



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

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
2月前
|
存储 人工智能 大数据
The Past, Present and Future of Apache Flink
本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。
408 33
The Past, Present and Future of Apache Flink
|
4月前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
1045 13
Apache Flink 2.0-preview released
|
4月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
182 3
|
4月前
|
分布式计算 监控 大数据
大数据-131 - Flink CEP 案例:检测交易活跃用户、超时未交付
大数据-131 - Flink CEP 案例:检测交易活跃用户、超时未交付
128 0
|
4月前
|
消息中间件 关系型数据库 MySQL
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
397 0
|
2月前
|
消息中间件 JSON 数据库
探索Flink动态CEP:杭州银行的实战案例
本文由杭州银行大数据工程师唐占峰、欧阳武林撰写,介绍Flink动态CEP的定义、应用场景、技术实现及使用方式。Flink动态CEP是基于Flink的复杂事件处理库,支持在不重启服务的情况下动态更新规则,适应快速变化的业务需求。文章详细阐述了其在反洗钱、反欺诈和实时营销等金融领域的应用,并展示了某金融机构的实际应用案例。通过动态CEP,用户可以实时调整规则,提高系统的灵活性和响应速度,降低维护成本。文中还提供了具体的代码示例和技术细节,帮助读者理解和使用Flink动态CEP。
560 2
探索Flink动态CEP:杭州银行的实战案例
|
2月前
|
机器学习/深度学习 传感器 运维
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
本文探讨了时间序列分析中数据缺失的问题,并通过实际案例展示了如何利用机器学习技术进行缺失值补充。文章构建了一个模拟的能源生产数据集,采用线性回归和决策树回归两种方法进行缺失值补充,并从统计特征、自相关性、趋势和季节性等多个维度进行了详细评估。结果显示,决策树方法在处理复杂非线性模式和保持数据局部特征方面表现更佳,而线性回归方法则适用于简单的线性趋势数据。文章最后总结了两种方法的优劣,并给出了实际应用建议。
149 7
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
|
2月前
|
数据处理 数据安全/隐私保护 流计算
Flink 三种时间窗口、窗口处理函数使用及案例
Flink 是处理无界数据流的强大工具,提供了丰富的窗口机制。本文介绍了三种时间窗口(滚动窗口、滑动窗口和会话窗口)及其使用方法,包括时间窗口的概念、窗口处理函数的使用和实际案例。通过这些机制,可以灵活地对数据流进行分析和计算,满足不同的业务需求。
262 27
|
2月前
|
机器学习/深度学习 数据可视化 大数据
机器学习与大数据分析的结合:智能决策的新引擎
机器学习与大数据分析的结合:智能决策的新引擎
272 15
|
3月前
|
监控 Cloud Native BI
8+ 典型分析场景,25+ 标杆案例,Apache Doris 和 SelectDB 精选案例集(2024版)电子版上线
飞轮科技正式推出 Apache Doris 和 SelectDB 精选案例集 ——《走向现代化的数据仓库(2024 版)》,汇聚了来自各行各业的成功案例与实践经验。该书以行业为划分标准,辅以使用场景标签,旨在为读者提供一个高度整合、全面涵盖、分类清晰且易于查阅的学习资源库。

相关产品

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

    更多