HERCULE:通过在相关日志图上进行社区发现来重建攻击故事
贡献:
提出了一种新的技术,通过利用因果关系分析来建模系统中多个日志之间的关系,而无需重量级日志记录或程序检测。HERCULE自动生成一个多维加权图,其中嵌入了潜在的有价值的信息。我们提出的基于图的表示提供了由不同系统组件生成的日志的“全景视图”。
我们利用社交网络分析,并在我们的加权图设置中调整社区检测算法。我们还提出了几种优化权重分配和提高系统性能的学习技术。据我们所知,在基于日志的攻击分析中,迄今为止还没有采用这样的技术。
我们对HERCULE进行了广泛的评估,以分析基于15个真实世界APT报告的攻击场景,这些报告包含应用程序、恶意有效负载和攻击方法的不同组合,证明了HERCULE的有效性。
工作流程
图3显示了HERCULE的关键阶段和操作。HERCULE的输入是来自网络(例如,DNS、WFP、HTTP)和系统活动(例如,进程创建、文件访问、身份验证)的多个原始日志。因为需要多个原始日志,因此需要日志格式解析器插件。
phase 1:原始日志解析器通过其解析插件处理每个输入日志条目,以提取一组预定义的字段(称为数据实体)。每个数据实体都作为日志关联模块(第二阶段)和污点模块的输入。污点模块扫描数据实体,并(1)通过利用流行的恶意软件/病毒分析平台[60,62]分析日志条目中出现的不在白名单中的任何可疑可执行二进制文件,或者(2)基于网址黑名单扫描已知的恶意网站访问,以识别初始攻击相关的日志条目。这些与攻击相关的初始日志条目随后将由后处理模块处理。
phase 2:日志关联模块由两个子模块组成:连接生成和权重分配。(1)如果任意两个日志条目之间存在一种或多种类型的相关性,则连接生成(通过未加权的多维边)连接它们(该过程在第3.1节中有详细说明)。例如,在图1中,如果由蓝色边连接的两个节点具有相同的时间戳(由d1表示)或共享相同的进程标识(由d3表示),那么这些条目应该是相关的。(2)权重分配在每条边上分配权重。请注意,有多种方法可以为多维边分配权重,其中一种监督学习技术已被证明可以获得最佳结果。我们在第3.2节中介绍了重量分配的细节。
phase 3:社区检测模块将相关加权图作为输入,并将所有检测到的社区输出到后处理模块。从第一阶段中被污染的任何日志条目开始,后处理模块将包含被污染条目的社区分类为恶意的,其他的分类为良性的。然后,它输出重构的连接阶段(按时间顺序排列的动作或社区)以及来自攻击相关社区的它们的互连。第3.4节介绍了HERCULE社区检测的详细设计。
系统设计
日志格式解码器:我们在表2中总结了这些。
Connection Generation
连接生成子模块的输入是解析的数据实体。输出是未加权的、无向的和多维的图,该图是由日志内和日志间的相关性构建的。类似于社交网络,我们将每个日志条目视为一个个体,将每个边缘维度视为两个个体之间的一种关系。
特征选择。在HERCULE中,对于每对日志条目,表示为节点u和v,它们具有一种或多种类型的关系,我们用多维边e连接它们。边的维度表示为统一的29维特征向量v = [d1d2 d29]T,其中每个维度dk的二进制值代表u,v之间存在kth类型的关系,如果u,v可以通过第k个关系进行关联,则dk= 1,否则dk= 0
图3为各个dk。
以下为各个dk的具体含义:
D1:模拟u和v之间的时间差。用户可以自定义阈值T(u和v的两个时间戳之间),以确定两个日志条目是否在时间上相关。第四节给出了选择不同t的检测性能结果。
D2和d13:u、v共享同一个进程id或进程名。该特性旨在捕获流程创建和流程操作中的显式/隐式关联。
D3和D4演示了u和v在发出出站连接请求时是否共享同一个目的IP或端口。直觉是基于这样的观察:如果u和v(两个网络请求)通信到同一个I/P地址,它们是高度相关的。
等等
总结:利用每个边上定义的特征,我们从所有输入日志中为每个日志条目构建连接。连接生成算法的输入是表3中选择的特征和所有解析的结构化日志。该算法仅生成至少一个特征向量值为非零的边。
Weight Assignment
一旦构建了相关的日志图,我们就使用社区检测算法来检测社区。形式上,给定一个未加权多维图G中节点A和B的两个社区集群,其中A表示与攻击相关的日志条目,B表示良性条目:最佳情况下,我们期望得到|eA|远大于|eAB|和|eB|远大于|eAB|其中|eA|、|eB|、和|eAB|分别表示簇A、簇B以及簇A和簇B之间的边数。请注意,这些符号在本节中始终有效。
我们还构建了不同的权重分配算法进行比较。第一种不使用任何学习算法,第二种和第三种利用现有的监督学习技术,其性能优于第一种,第四种基于具有最佳性能结果的二次优化。我们在HERCULE中使用二次优化算法作为最终的权重分配版本,并在第4节中定量比较它们的结果。
Community Detection
考虑到图中节点数量庞大,我们需要选择一种时间高效的社区检测算法来从大型加权相关对数图中提取社区。社区检测有多种无监督学习技术。我们选择使用Louvain方法是考虑到它对大型网络的有效处理[13]。
HERCULE:通过在相关日志图上进行社区发现来重建攻击故事相关推荐
- 图上的对抗与攻击精选论文列表(2021相关论文一览)
来源:深度学习与图网络本文约1400字,建议阅读5分钟本文为你分享图上的对抗与攻击精选论文. 2021相关论文一览 大规模攻击图神经网络 图神经网络的黑盒梯度攻击: 更深入洞察图的攻击和防御 增强多路 ...
- ASP.NET企业开发框架IsLine FrameWork系列之七--AppLogProvider日志框架(上)
ASP.NET企业开发框架IsLine FrameWork系列之七--AppLogProvider日志框架(上) 日志与异常 部署系统以后,管理员需要有一套强大的日志系统来诊断和修复配置上的问题,这就 ...
- MySQL是怎样运行的:从根儿上理解MySQL | redo日志(上)
文章目录 前言:本博文是对MySQL是怎样运行的:从根儿上理解MySQL这本书的归纳和总结 20.redo日志(上) 1.redo日志是个啥 1.1 回忆回忆 1.2 redo正式登场 2.redo日 ...
- ICML2020 | 基于贝叶斯元学习在关系图上进行小样本关系抽取
今天给大家介绍来自加拿大蒙特利尔大学Mila人工智能研究所唐建教授课题组在ICML2020上发表的一篇关于关系抽取的文章.作者利用全局关系图来研究不同句子之间的新关系,并提出了一种新的贝叶斯元学习方法 ...
- php 多图上传编辑器,laravel中使用WangEditor及多图上传
1. 创建项目及安装所需安装包 1.1 创建项目 composer create-project laravel/laravel=5.3 blog_wangeditor --prefer-dist 1 ...
- NeurIPS 2021 | 图上不均衡表示学习新视野:基于拓扑结构的不均衡学习
论文标题: Topology-Imbalance Learning for Semi-Supervised Node Classification 论文链接: https://arxiv.org/ab ...
- 一维信号双边滤波器_定义图上的各向异性、动态、频谱和多尺度滤波器
雷锋网AI科技评论编者按:本篇文章的内容是"计算机视觉及图神经网络教程"的一部分,将概述重要的图神经网络方面的工作进展.通过提取关键思想并解释使用Python和PyTorch这样经 ...
- 【转】Unix环境高级程序设计入门----文件系统的相关编程(上)
Unix环境高级程序设计入门 ----文件系统的相关编程(上) 一.关于目录 不管是何种操作系统,一提到其中的文件系统首先想到的自然是目录和文件.在Unix系统中一切皆可视为文件,目录是一种特殊的文件 ...
- php 上传 blob,Laravel框架+Blob实现的多图上传功能示例
本文实例讲述了Laravel框架+Blob实现的多图上传功能.分享给大家供大家参考,具体如下: 一.介绍 我们知道多图上传一般都附带的又即时显示功能,即上传后可以立刻看到所传图片.之前一直用的一个多图 ...
最新文章
- linux as86,记linux_centOS安装as86过程
- yaml加配置文件后起不来_YAML配置文件管理资源
- python ks检验_python – 使用Scipy的stats.kstest模块进行拟合优度测试
- (())、let、expr、bc等计算命令的使用语法和应用技巧
- MantisBT安装部署(XAMPP)邮件配置 中文配置
- 关于getResource和getClassLoader().getResource()
- java 汉字转拼音_java实现汉字转拼音
- 灰鸽子病毒——网络神偷之后应用最广的反弹端口***
- 计算机专业及软件职称,软件工程师职称评定的级别及标准是什么?
- pycharm新建python的快捷键_Pycharm超级好用的快捷键
- 扫描全能王30元/月的OCR文字识别免费使用方法
- winpe进入linux系统,制作U盘Linux 与WinPE启动
- 百度竞价推广应如何做好!
- 【教资必过!!!】思想品德课程理论基本知识
- 计蒜客 因数最多的数
- 猛男插件!csdn浏览器助手到底怎样!(整合全网评价)
- 热烈祝贺联诚发内容科技落户人民网(厦门)内容科技产业园
- Java建造者模式(Builder pattern)
- QM4_Probability
- source 的作用
热门文章
- php毕设代做,客户管理系统,java,jsp,php,好毕设为你指导如何完成一个客户管理系统...
- EditPlus正则表达式替换字符串详解
- MATLAB学习笔记:常用统计量1
- JSR-133: JavaTM Memory Model and Thread Specification原文解析
- 无线传感器网络中的节点定位技术
- 第十二周《支持SQl Server内部,第二版》CHAR1数据页面和数据行 作者Dmitri Korotkevitch
- 通用企业智能制造ERP源码 制造业通用ERP系统源码 工厂ERP源码C# web ASP.NET 源码
- 关于python中面向对象(一)
- pandas dataframe drop函数
- 更改微信浏览器页面标题