机器学习如何检测使用沙盒逃避和静态防护的恶意软件( 四 )


机器学习如何检测使用沙盒逃避和静态防护的恶意软件

文章插图
Shapley值
Shapley加法解释(SHAP)是一种博弈论方法,用于解释任何机器学习模型的输出 。与基线预测相比,SHAP值解释了每个特征对输入特征向量的实际预测的影响 。在下图中,从右到左的红色特征是将模型推向恶意预测的最顶层特征 。从左到右,蓝色的特征表示降低预测为恶意软件概率的最顶层特征 。
机器学习如何检测使用沙盒逃避和静态防护的恶意软件

文章插图
如上图所示,我们绘制了具有重要SHAP值的前七个特征及其相应原始特征值的力图 。由于这些顶级特征的存在,我们的机器学习模型能够检测到GuLoader 。这些特性对应于几个特定的动态解析API指针及其在内存中的相对位置,以及样本所做的内存页权限更改的相对类型 。
机器学习如何检测使用沙盒逃避和静态防护的恶意软件

文章插图
通过聚类寻找相似样本
另一种理解模型预测的方法是在训练数据集中识别相似的样本 。我们使用基于密度的扫描(DBScan)作为聚类技术,如下图所示,因为它允许异常值和不同形状的聚类 。
机器学习如何检测使用沙盒逃避和静态防护的恶意软件

文章插图
基于DBSCAN的集群
机器学习如何检测使用沙盒逃避和静态防护的恶意软件

文章插图
总结
GuLoader家族是unit42开发的机器学习模型检测恶意软件的一个很好的示例,因为GuLoader使用沙盒逃避和静态防护,使得传统防御很难单独使用结构线索和执行日志进行检测 。
在Advanced WildFire中,开发人员引入了一个基于虚拟机监控程序的沙盒,它可以在执行期间暗中观察GuLoader的内存,以解析有意义的内存驻留工件和对机器学习检测渠道有用的信息 。这允许安全防护人员使用从观察到的基于内存的工件中提取的特征来准确地检测恶意行为 。
参考及来源:https://unit42.paloalt.NETworks.com/malware-detection-accuracy/

【机器学习如何检测使用沙盒逃避和静态防护的恶意软件】


推荐阅读