Adversarial ML Threat Matrix——对抗性机器学习威胁矩阵<案例研究三、四、五>
前言
接续前三篇:
Adversarial ML Threat Matrix——对抗性机器学习威胁矩阵<简介>
ATLAS——对抗性机器学习威胁矩阵<案例研究一>
ATLAS——对抗性机器学习威胁矩阵<案例研究二>
案例三:VirusTotal Poisoning
VirusTotal样本库投毒
案例摘要
在VirusTotal调查不正常的勒索软件家族的报告有所增加时,我们发现该特定勒索软件家族的许多样本是在短时间内通过流行的病毒共享平台提交的。进一步调查显示,根据字符串相似度,样本都是等效的,根据代码相似度,它们的相似度在 98% 到 74% 之间。有趣的是,所有示例的编译时间都是相同的。经过更多挖掘深入分析,发现有人使用“metame”一种变质代码操纵工具将原始文件操纵为突变变体。这些变体并不总是可执行的,但仍被归类为同一勒索软件系列。
矩阵映射
侦察(Reconnaissance)
tactic: AML.TA0003
technique: AML.T0016.000
能力获取:对抗机器学习攻击工具:获取一个简单用于可执行文件的代码变异工具,如metame。
简单看了一下源码以及原理,主要是正则匹配目标并且预制替换的size,用于get_nops(),然后if-else逻辑匹配指令集进行随机选择填充的方式。整体逻辑不完全保证程序的可执行性,并不一一替换指令内容。
机器学习攻击阶段(ML Attack Staging)
tactic:AML.TA0001
technique: AML.T0043
制作对抗数据:该攻击者使用来自流行勒索软件家族的恶意软件样本作为创建“突变”变体的起点。
初始访问(Initial Access)
tactic:AML.T0004
technique:AML.T0010.002
机器学习供应链数据破坏:攻击者将生成样本上传到平台。
持久化(Persistence)
tactic:AML.TA0006
technique:AML.T0020
训练数据毒化:一些供应商开始将这些文件归类为勒索软件家族,尽管其中大多数文件都无法运行。“突变”样本毒害了机器学习模型用于识别和分类该勒索软件家族的数据集。
一点防御思考:如果平台使用静态分析或文本相似度匹配的方法来检测,使用类似方法做到毒化样本库非常轻松。而对于使用这部分样本进行训练 的模型来说,最终影响与模型的细分任务以及特征工程有关。
如对恶意家族的分类任务来说,如果采用简单的变异工具(如metame)是基于同一恶意样本(必然是同一家族)作为种子,生成更多的毒化样本被病毒库平台采纳,可能一定程度上反而能对模型达到样本增强的效果。
对于识别恶意软件的二分类任务来说,确实存在很大的难度,如果用同一款变异软件冲击病毒库进行毒化,最后模型学到的很可能是变异软件的逻辑作为识别的特征(而实际上不是)。如果不使用神经网络,用人工筛选特征的方式,能够比较好避免。对于验证是否恶意软件可执行的点,还是需要依托真正执行的动态分析方法,如利用沙箱。
从病毒样本库平台和识别/分类模型的关系上看,若安全体系要整体打通,则样本库的采集条件与方式是需要根据模型的任务以及算法特点进行配合调整的,对前期入库的校验增加相应的方法。若为分别独立部署,像采用VirusTotal或第三方的样本库训练,则前期的数据清洗过程要增加原样本库缺乏的过滤方法,是对模型自身安全性的数据质量把控,至于孰重孰轻需要在实际的落地方案中进行取舍。
案例四:Bypassing Cylance’s AI Malware Detection
绕过cylance的恶意软件AI检测
案例摘要
Skylight 的研究人员能够创建一个通用绕过字符串,该字符串附加到恶意文件后可以逃避 Cylance 的 AI 恶意软件检测器的检测。
矩阵映射
侦察(Reconnaissance)
tactic: AML.TA0002
technique: AML.T0000
受害者公开信息材料收集:研究人员阅读cylance的AI恶意软件检测器的公开信息,如公开演讲及专利。
访问机器学习模型(ML Model Access)
tactic: AML.TA0000
technique:AML.T0047
使用机器学习产品或服务:研究人员使用 Cylance 的 AI 恶意软件检测器并启用详细日志记录来了解 ML 模型的内部工作原理,特别关注在模型输出评分(置信度)和模型集成方面的表现。
能力放大(Resource Development)
tactic: AML.T0003
technique: AML.T0000
开发对抗机器学习攻击的能力:研究人员使用模型输出评分(置信度)信息来逆向工程哪些属性特征提供了何种程度的正面或负面分数贡献。在此过程中,他们发现了这个模型集成机制中一个替代第一个模型的辅助模型,第二个模型的积极评估机制推翻了机器学习核心模型的决策,成为攻击突破点。
机器学习攻击阶段(ML Attack Staging)
tactic: AML.TA0001
technique: AML.T0043.003
劫持对抗数据:手动篡改:基于以上发现,研究人员构造假特征将已知良好文件的属性与恶意软件融合,以手动创建对抗性恶意软件。
防御绕过(Defense Evasion)
tactic: AML.TA0007
technique: AML.T0015
绕过机器学习模型:由于该模型集成问题,第二个次要模型将覆盖第一个核心模型的决策,研究人员借此可以有效绕过。
博客通读与细节
绕过特征字典:special_sauce.txt,内含5567条,只需将这些附加到任何恶意可执行文件中,让 Cylance 相信它是良性的。截至2019年9月7日,该绕过仍然可以在家庭版(Cylance SmartAV)上利用,供应商表示企业版 (CylancePROTECT) 已修复该漏洞(但无法验证)。
人工智能在安全领域的应用是明确的并且可能有应用价值,但是基于人工智能的产品也因为这项技术的引入而提供了一个新的、独特的攻击面。通过仔细分析 Cylance