工作来源

arXiv:2201.00757

工作背景

各个引擎之间并不是独立的,引擎的强相关性可能会导致准确度的下降。引擎的相关有多种可能:

  • 同一家公司的不同产品

  • 产品检测能力向领先厂商学习

  • 厂商将技术授权给其他厂商

恶意软件在演化,难道反病毒引擎就不演化了吗?

工作设计

在 n 个反病毒引擎、m 个文件的情况下,检出与家族分类可形成两个矩阵(注:家族名称使用 AVClass 提取)。

需要定义指标衡量二者相似,二者结果相同的情况除以二者都存在的情况。定义指标衡量二者变化同步性:

在反病毒引擎共识符合一阶交互的情况下,使用时间 Rank-1 相似矩阵(R1SM-T)算法来反映时序数据中一阶交互的变化。算法如下所示:

工作准备

利用 VirusShare 的 25100286 个样本,查看其对应的 VirusTotal 扫描报告。查询在 2015 年 12 月至 2016 年 5 月之间进行,受限于扫描频率限制,每个样本只有一个扫描报告。

扫描日期(横跨十年的范围)的统计如下所示:

VirusTotal 的结果中有 93 个反病毒引擎,所有引擎的扫描量如下所示:

检出矩阵与分类矩阵如下所示:

工作评估

检测同步性与分类同步性如下所示:

检测同步性

检出矩阵的 R1SM 分解如下所示,分解产生 16 个分量覆盖矩阵 60.596%,即四成矩阵无法解释。

如下显示了 R1SM=0.85 时聚类情况:

可以明显看出相同厂商的不同产品,如 TrendMicro 与 TrendMicro-Housecall、PandaB3 与 PandaBeta。以及一些大家公认的检测相似:BitDefender、Emsisoft 与 GData;McAfee、McAfee-GW-Edition 与 Microsoft;Avast、AVG 与 Fortinet。

分类同步性

分类矩阵的 R1SM 分解如下所示,分解产生 21 个分量覆盖矩阵 58.394%,即四成矩阵无法解释。

如下显示了 R1SM=0.7 时聚类情况:

Fortinet 和 McAfee 在 2019 年宣布联合开发端点安全解决方案,可能二者确实存在某种技术共享。

引擎共识

R1SM-T 模型经过超过五百万次的迭代训练,检出数据平均能解释 73.709%,分类数据平均能解释 67.196%。每月变化如下所示:

根据解释性,威胁情报的共享一开始局限在小群体间,但是后来信息共享变得无处不在。

分解的第一个组件如下所示:

很多原因都会产生较大的波动情况:

  • 2014 年 11 月的 Alyac,2015 年的 Norman 等加入或者退出 VirusTotal。

  • 2010 年 2 月到 7 月,K7 TotalSecurity 10.0 版本

工作思考

厂商之间的技术合作、收购剥离与 SDK 类型的检测能力整合都会导致引擎的结果存在极大的相似性,而这在类似 VirusTotal 的场景中是十分重要的。多引擎扫描的共识与演化,近几年也被业界所重点关注,并且有一系列研究发布。在选择检测引擎时,如果选择了极为相似的检测引擎,是否还能达成当初想要构建多引擎检测能力的目标呢?

声明:本文来自威胁棱镜,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。