当前位置: 首页 > 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 风险以及每个风险的详细缓解建议。

相关文章:

回顾 OWASP 机器学习十大风险

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

ENSP软件的基本使用命令(第三十一课)

ENSP软件的基本使用命令(第三十一课) 下面的图片是今天操作的核心基础操作 1 命令行页面 交换机 路由器 PC机 分别展示一下 页面的样子 2 基本命令结构...

五、FreeRTOS数据类型和编程规范

1、数据类型 (1)每个移植的版本都含有自己的portmacro.h头文件,里面定义了2个数据类型。 (2)TickType_t FreeRTOS配置了一个周期性的时钟中断:Tick Interrup每发生一次中断,中断次数累加,这被称为tick counttick count这个变量…...

码出高效_第二章 | 面向对象_上

目录 一. OOP理念1. 概念辨析2. 四大特性1. 抽象2. 封装3. 继承4. 多态 二. 初识Java1. JDKJDK 5-11的重要类、特性及重大改变 2. JRE关于JVM 三. 类1. 概述2. 接口和抽象类1. 概念及相同点2. 不同点3. 总结 3. 内部类4. 访问权限控制1. 由来2. public/private/无/private3. 推…...

大学生课设实训|基于springboot的在线拍卖系统

目录 项目描述 主要技术栈 功能效果 数据库设计 开发顺序 业务功能 大家好!我是龍弟-idea!需要源码资料信息可私聊我【HWL__666666】! 项目描述 本系统是一个网上商品竞拍系统,为拍卖者和竞买者提供一个在线交流平台。本项…...

论文阅读 - Social bot detection in the age of ChatGPT: Challenges and opportunities

论文链接:https://www.researchgate.net/publication/371661341_Social_bot_detection_in_the_age_of_ChatGPT_Challenges_and_opportunities 目录 摘要: 引言 1.1. Background on social bots and their role in society 1.2. The rise of AI-gene…...

FPGA优质开源项目 - UDP RGMII千兆以太网

本文介绍一个FPGA开源项目:UDP RGMII千兆以太网通信。该项目在我之前的工作中主要是用于FPGA和电脑端之间进行图像数据传输。本文简要介绍一下该项目的千兆以太网通信方案、以太网IP核的使用以及Vivado工程源代码结构。 Vivado 的 Tri Mode Ethernet MAC IP核需要付…...

学C的第三十二天【动态内存管理】

相关代码gitee自取:C语言学习日记: 加油努力 (gitee.com) 接上期: 学C的第三十一天【通讯录的实现】_高高的胖子的博客-CSDN博客 1 . 为什么存在动态内存分配 学到现在认识的内存开辟方式有两种: 创建变量: int val …...

聊聊elasticsearch的data-streams

序 本文主要研究一下elasticsearch的data-streams data-streams 主要特性 首先data streams是由一个或者多个自动生成的隐藏索引组成的&#xff0c;它的格式为.ds-<data-stream>-<yyyy.MM.dd>-<generation> 示例.ds-web-server-logs-2099.03.07-000034&a…...

unreal engine c++ 创建tcp server, tcp client

TCP客户端 TcpConnect.h // Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h" #include "Common/UdpSocketReceiver.h" #include "GameFramework/Actor.h"DECLARE_DELEGATE…...

24届华东理工大学近5年自动化考研院校分析

今天给大家带来的是华东理工大学控制考研分析 满满干货&#xff5e;还不快快点赞收藏 一、华东理工大学 学校简介 华东理工大学原名华东化工学院&#xff0c;1956年被定为全国首批招收研究生的学校之一&#xff0c;1960年起被中共中央确定为教育部直属的全国重点大学&#…...

初识集合和背后的数据结构

目录 集合 Java集合框架 数据结构 算法 集合 集合&#xff0c;是用来存放数据的容器。其主要表现为将多个元素置于一个单元中&#xff0c;用于对这些元素进行增删查改。例如&#xff0c;一副扑克牌(一组牌的集合)、一个邮箱(一组邮件的集合&#xff09;。 Java中有很多种集…...

选择适合你的数据可视化工具:提升洞察力的关键决策

导言&#xff1a; 在当今数据驱动的世界中&#xff0c;数据可视化工具成为了帮助我们理解和传达数据见解的关键工具之一。数据可视化不仅能够将复杂的数据转化为易于理解的可视化形式&#xff0c;还能帮助我们发现数据中的模式、趋势和关联。然而&#xff0c;随着市场上可视化工…...

H5中的draggable

基本语法及事件 draggable 属性规定元素是否可拖动。必须设置&#xff0c;否则没有拖拽效果及事件触发 提示&#xff1a; 链接和图像默认是可拖动的。 提示&#xff1a; draggable 属性经常用于拖放操作 语法 <element draggable"true|false|auto"> 值描…...

搭建SVN服务器

简介 SVN&#xff08;Subversion&#xff09;是一种版本控制工具&#xff0c;用于管理和跟踪文件的修改历史。它可以帮助团队协作开发&#xff0c;方便地共享和更新代码&#xff0c;同时也可以提供备份和安全控制功能。 使用SVN&#xff0c;你可以创建中央代码库&#xff08;…...

OpenCV之信用卡识别实战

文章目录 代码视频讲解模板匹配文件主程序(ocr_template_match.py)myutils.py 代码 链接: https://pan.baidu.com/s/1KjdiqkyYGfHk97wwgF-j3g?pwdhhkf 提取码: hhkf 视频讲解 链接: https://pan.baidu.com/s/1PZ6w5NcSOuKusBTNa3Ng2g?pwd79wr 提取码: 79wr 模板匹配文件 …...

Detector定位算法在FPGA中的实现——section1 原理推导

关于算法在FPGA中的实现,本次利用业余的时间推出一个系列章节,专门记录从算法的推导、Matlab的实现、FPGA的移植开发与仿真做一次完整的FPGA算法开发,在此做一下相关的记录和总结,做到温故知新。 这里以Detector在Global Coordinate System(原点为O)中运动为背景,Detect…...

心电信号去噪:方法与应用

目录 1 去噪技术的发展历程 2 滤波器去噪的应用 3 小波去噪的优势 4 深度学习去噪的前景...

睡眠助手/白噪音/助眠夜曲微信小程序源码下载 附教程

睡眠助手/白噪音/助眠夜曲微信小程序源码 附教程 支持分享海报 支持暗黑模式 包含了音频数据 最近很火的助眠小程序&#xff0c;前端vue&#xff0c;可以打包H5&#xff0c;APP&#xff0c;小程序 后台可以设置流量主广告&#xff0c;非常不错的源码 代码完整 完美运营 搭配无…...

Spring Cloud常见问题处理和代码分析

目录 1. 问题&#xff1a;如何在 Spring Cloud 中实现服务注册和发现&#xff1f;2. 问题&#xff1a;如何在 Spring Cloud 中实现分布式配置&#xff1f;3. 问题&#xff1a;如何在 Spring Cloud 中实现服务间的调用&#xff1f;4. 问题&#xff1a;如何在 Spring Cloud 中实现…...

ssc377d修改flash分区大小

1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

1.3 VSCode安装与环境配置

进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件&#xff0c;然后打开终端&#xff0c;进入下载文件夹&#xff0c;键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill

视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;&#xff0c;为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展&#xff0c;机器人仍难以胜任复杂的长时程任务&#xff08;如家具装配&#xff09;&#xff0c;主要受限于人…...

day36-多路IO复用

一、基本概念 &#xff08;服务器多客户端模型&#xff09; 定义&#xff1a;单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用&#xff1a;应用程序通常需要处理来自多条事件流中的事件&#xff0c;比如我现在用的电脑&#xff0c;需要同时处理键盘鼠标…...

【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error

在前端开发中&#xff0c;JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作&#xff08;如 Promise、async/await 等&#xff09;&#xff0c;开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝&#xff08;r…...

【C++】纯虚函数类外可以写实现吗?

1. 答案 先说答案&#xff0c;可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持&#xff1a;CMake支持多种操作系统和编译器&#xff0c;使用同一份构建配置可以在不同的环境中使用 简化配置&#xff1a;通过CMakeLists.txt文件&#xff0c;用户可以定义项目结构、依赖项、编译选项等&#xff0c;无需手动编写复杂的构建脚本…...

React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构

React 实战项目&#xff1a;微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇&#xff01;在前 29 篇文章中&#xff0c;我们从 React 的基础概念逐步深入到高级技巧&#xff0c;涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...

链式法则中 复合函数的推导路径 多变量“信息传递路径”

非常好&#xff0c;我们将之前关于偏导数链式法则中不能“约掉”偏导符号的问题&#xff0c;统一使用 二重复合函数&#xff1a; z f ( u ( x , y ) , v ( x , y ) ) \boxed{z f(u(x,y),\ v(x,y))} zf(u(x,y), v(x,y))​ 来全面说明。我们会展示其全微分形式&#xff08;偏导…...