当前位置: 首页 > news >正文

回顾 OWASP 机器学习十大风险

日复一日,越来越多的机器学习 (ML) 模型正在开发中。机器学习模型用于查找训练数据中的模式,可以产生令人印象深刻的检测和分类能力。机器学习已经为人工智能的许多领域提供了动力,包括情感分析、图像分类、面部检测、威胁情报等。

数十亿美元正在投入到机器学习研究生产中。市场显然对机器学习项目有着强烈的兴趣,训练这些模型时需要牢记哪些安全风险?

OWASP机器学习安全十大分析了与机器学习相关的最常见漏洞。下面总结前十名列表中的每个风险,并考虑如何保护模型从创建到部署的完整性和安全性。

OWASP 机器学习安全前十名

ML01:2023 对抗性攻击

这种攻击类型涉及恶意行为者故意更改模型的输入数据。例如,考虑图像分类模型。攻击者可以创建一个具有轻微变化的对抗性图像,从而导致错误分类。在网络安全环境中,对抗性变化可以帮助攻击者避免被机器学习驱动的入侵检测系统检测到。

ML02:2023 数据中毒攻击

另一个需要考虑的风险是攻击者操纵模型训练的数据。如果数据存储系统受到损害,攻击者可能会插入错误标记的数据。例如,这可能会导致垃圾邮件检测模型将垃圾邮件误识别为合法通信。不正确的分类和错误的决策可能会导致潜在的不安全结果。

ML03:2023 模型反转攻击

当参与者对模型进行逆向工程以获得隐藏信息时,就会发生模型反转攻击。反转模型可以通过训练一个模型并使用它来反转另一个模型的预测来完成。此漏洞可能会导致攻击不被察觉,或者黑客根据模型的预测获取敏感或个人信息。

ML04:2023 成员资格推断攻击

成员资格推断是另一种攻击类型,攻击者能够从模型中推断出敏感数据。黑客可以通过获取训练数据,然后使用该模型来查询特定个人的记录是否包含在数据集中来做到这一点。成员资格推断风险对于利用和检测来说都具有一定的挑战性。

ML05:2023 模型窃取

这种攻击涉及不良行为者或竞争对手窃取或复制模型本身。部署的模型可能不安全,因此很容易被盗。或者,可以对该模型进行逆向工程。一旦被盗,该模型可能会被用于竞争性商业目的,从而给原始模型所有者造成经济损失。

ML06:2023 损坏的包

大多数现代软件都依赖于大量的开源或第三方依赖项,机器学习也是如此。一个风险是黑客可能会插入恶意代码来破坏模型所依赖的公共库。一旦 ML 项目下载了更新版本,就会危及该项目。

ML07:2023 迁移学习攻击

迁移学习是指工程师采用预先训练的模型并使用附加数据对其进行微调。攻击者可以使用此策略在恶意数据集上重新训练现有模型。如果他们能够成功地改变最终应用程序使用的模型,他们就能成功绕过入侵检测系统之类的东西。

ML08:2023 模型倾斜

另一个风险涉及攻击者利用 MLOps 反馈过程来扭曲训练数据。例如,黑客可以输入反馈数据,重新训练整个模型以优先获得特定结果。模型倾斜攻击可能会引入偏差并损害系统的准确性和公平性。

ML09:2023 输出完整性攻击

输出完整性攻击是指攻击者获取机器学习模型的输出并操纵该输出以提供伪造信息。例如,如果显示 ML 输出的界面遭到破坏,黑客就可以通过中间人 (MitM) 攻击来更改其出现的行为或编辑结果。

ML10:2023 神经网络重编程

最后,这种攻击是指攻击者操纵模型的参数来改变其预期行为。例如,这可以通过更改训练集中的图像或修改参数来实现。神经网络重新编程攻击可能会导致模型做出错误的判断,这可能会被不良行为者利用来获取经济利益。

降低 10 大机器学习风险

所有这些策略都是相似的,因为它们可能会导致模型做出错误的决定或不安全的行为。那么,在开发和部署机器学习模型时如何降低风险呢?以下是 OWASP 推荐的一些高级预防技巧:

■ 训练模型的对抗性变化并包括防御机制。

■ 确保训练数据经过仔细验证和保护。

■ 限制对模型预测的访问并加密模型的代码。

■ 实施严格的访问控制以保护机器学习模型。

■ 验证包签名并使用第三方软件的受信任存储库。

■ 定期监控和更新您的数据集。

■ 验证反馈数据的真实性。

■ 通过安全通信和加密保护模型接口。

还值得注意的是,与网络安全的其他领域一样,许多风险本质上不是技术性的,而是由社会工程策略产生的,例如贿赂或威胁。因此,应认真考虑内部威胁,并对所有开发环境(包括机器学习项目)采用零信任模型。

随着我们继续加大对人工智能的投资,保护机器学习项目将继续成为重中之重。上面总结了开发机器学习模型时需要记住的关键问题。在继续开发和在生产中运行 ML 之前,网络安全专业人员应考虑审查每个 OWASP 风险以及每个风险的详细缓解建议。

http://www.lryc.cn/news/112394.html

相关文章:

  • ENSP软件的基本使用命令(第三十一课)
  • 五、FreeRTOS数据类型和编程规范
  • 码出高效_第二章 | 面向对象_上
  • 大学生课设实训|基于springboot的在线拍卖系统
  • 论文阅读 - Social bot detection in the age of ChatGPT: Challenges and opportunities
  • FPGA优质开源项目 - UDP RGMII千兆以太网
  • 学C的第三十二天【动态内存管理】
  • 聊聊elasticsearch的data-streams
  • unreal engine c++ 创建tcp server, tcp client
  • 24届华东理工大学近5年自动化考研院校分析
  • 初识集合和背后的数据结构
  • 选择适合你的数据可视化工具:提升洞察力的关键决策
  • H5中的draggable
  • 搭建SVN服务器
  • OpenCV之信用卡识别实战
  • Detector定位算法在FPGA中的实现——section1 原理推导
  • 心电信号去噪:方法与应用
  • 睡眠助手/白噪音/助眠夜曲微信小程序源码下载 附教程
  • Spring Cloud常见问题处理和代码分析
  • debian怎么修改man help为中文,wsl怎么修改显示语言为中文
  • k8s概念-亲和力与反亲和力
  • 【数据结构】实现单链表的增删查
  • Vue2 第二十节 vue-router (四)
  • 第三章 图论 No.1单源最短路及其综合应用
  • ❤ npm不是内部或外部命令,也不是可运行的程序 或批处理文件
  • 关于Godot游戏引擎制作流水灯
  • C语言 函数指针详解
  • LNMP及论坛搭建
  • 【使用机器学习和深度学习对城市声音进行分类】基于两种技术(ML和DL)对音频数据(城市声音)进行分类(Matlab代码实现)
  • Godot 4 练习 - 制作粒子