发布时间:2022-08-19 14:15
©PaperWeekly 原创 · 作者|张安琪
学校|东华大学硕士生
研究方向|隐私保护、Security
论文标题:
Heterogeneous Graph Matching Networks for Unknown Malware Detection
论文链接:
https://www.ijcai.org/Proceedings/2019/522
引言
信息系统中存在大量的恶意软件/程序攻击,恶意软件/程序检测作为抵御攻击的第一道防线,主要使用两种方法:基于签名的方法(signature-based)和基于行为的方法(behavior-based)。但均用于检测已知的恶意软件,并且易于逃避技术。
此外,signature-based 很难抵御零时差攻击,behavior-based 会导致培训成本过高。综上,设计一种有效的数据驱动方法来检测未知恶意程序,是急需解决的问题。
检测未知恶意程序主要存在以下四个挑战:
1. 系统实体之间具有非线性和分层异构关系。程序执行的操作具有非线性和层次结构上的异构依赖性,忽略这些依赖关系的简单方法仍可能产生较高的误报率。
2. 两个程序之间缺乏距离/相似性度量。在实际的计算机系统中,给定两个程序,具有与之相关的数千个系统事件,根据分类的事件数据来测量它们的距离/相似度不是一项简单的任务。
3. 指数级别的事件空间。信息系统需要处理大量的系统事件数据(通常每主机每秒处理超过 10,000 个事件)。
4. 程序别名的问题。同一程序的不同版本或更新,具有不同的签名,并且也会具有不同的执行名称。因此,保留程序 ID 白名单这种简单方法存在问题。
为了解决上述挑战,作者提出了 MatchGNet,通过图神经网络来学习程序表示以及相似性度量。总的来说,本文贡献如下:
设计了一个 IGM 模型,来捕获不同对系统实体之间的异构交互/依赖关系。
为了从构造的异质 IGM 中学习程序表示,作者提出了一种分层注意力图神经编码器。
最后,提出了一种相似性学习模型,通过孪生神经网络训练参数,并在未知程序与现有良性程序之间进行相似性评分。MatchGNet 最终可以通过相似性匹配来识别出一个行为表示与现有良性程序明显不同的未知恶意程序。
作者在真实的系统来源数据上进行了大量充分的实验,以评估模型的性能。结果表明,MatchGNet 可以准确检测恶意程序。此外,作者还用 MatchGNet 来检测真实的恶意软件攻击。结果表明,它可以将最新攻击技术的误报率降低 50%,同时保持零的误报率。