通過 Rank-1 相似性矩陣分解建模反病毒引擎共識演化
工作來源
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 的場景中是十分重要的。多引擎掃描的共識與演化,近幾年也被業界所重點關注,并且有一系列研究發布。在選擇檢測引擎時,如果選擇了極為相似的檢測引擎,是否還能達成當初想要構建多引擎檢測能力的目標呢?