OWASP发布大模型安全风险与应对策略(QA测试重点关注)

开放式 Web 应用程序安全项目(OWASP)发布了关于大模型应用的安全风险,这些风险不仅包括传统的沙盒逃逸、代码执行和鉴权不当等安全风险,还涉及提示注入、对话数据泄露和数据投毒等人工智能特有的安全风险。
帮助开发者和测试同学更好地理解和应对这些挑战,我们介绍LLM应用中常见的安全问题,并提供了相应的应对策略。
一、提示注入(Promt Injections)
问题概述:提示注入漏洞涉及狡猾的输入,导致未检测到的操作,影响范围从数据暴露到未经授权的操作。攻击者通过构建的输入提示操纵LLM,利用对LLM输出的固有信任,实现恶意目标。
应对策略:
- 权限限制:将LLM的权限限制为其功能所需的最低权限。
- 输入验证:实施可靠的输入验证和清理方法,过滤掉潜在恶意提示输入。
- 信任边界:在LLM、外部源和可扩展功能之间建立信任边界。

二、不安全输出(Insecure Output Handling)
问题概述:当插件或应用程序盲目接受LLM输出并直接传递给后端或客户端函数时,可能导致XSS、CSRF等安全漏洞。
应对策略:
- 输出编码:将来自模型的输出进行编码,减少不必要的代码解释。
- 输入验证:对从模型到后端函数的响应应用适当的输入验证。
三、训练数据投毒(Training Data Poisoning)
问题概述:攻击者通过引入漏洞的训练数据,破坏LLM模型,使用户接触到不正确的信息。
应对策略:
- 数据验证:验证培训数据的供应链和合法性。
- 沙盒隔离:确保存在足够的沙盒,防止模型抓取意外数据源。
- 模型多样化:针对不同用例使用单独的训练数据制作不同的模型。

四、拒绝服务(Denial of Service)
问题概述:攻击者以特别消耗资源的方式与LLM交互,导致服务质量下降或高资源成本。
应对策略:
- 资源限制:限制每个请求和步骤的资源使用量。
- 队列控制:限制系统中对LLM响应的排队操作数和总操作数。
五、供应链完整性风险
问题概述:LLM供应链可能受到攻击,影响训练数据、ML模型和部署平台的完整性。
应对策略:
- 供应商审查:仔细审查来源和供应商。
- 漏洞扫描:对组件进行漏洞扫描,包括开发和测试阶段。
- 稳健性测试:对提供服务的整个链路进行稳健性测试。

六、权限问题(Permission Issues)
问题概述:插件之间缺乏授权跟踪,可能导致权限提升、机密性丢失和远程代码执行。
应对策略:
- 手动授权:需要手动授权敏感插件执行的任何操作。
- 插件隔离:每个用户输入调用不超过一个插件,调用间重置插件数据。
- 污点跟踪:对所有插件内容执行污点跟踪,确保授权级别对应。
七、数据泄漏
问题概述:LLM通过响应意外泄露敏感信息,导致隐私和安全漏洞。
应对策略:
- 数据清理:执行足够的数据清理和验证。
- 用户教育:让用户了解与LLM交互的风险。
八、其他安全问题概览
除了上述六大问题外,OWASP还指出了其他四个关键安全问题,包括沙盒不足、模型窃取、模型逆向工程和隐私侵犯。这些问题同样需要引起开发者的重视,并采取相应的预防措施。
- 沙盒不足:确保LLM在受限的环境中运行,防止其访问敏感资源。
- 模型窃取:通过加密和访问控制保护模型不被非法复制。
- 模型逆向工程:使用混淆和加密技术增加模型逆向工程的难度。
- 隐私侵犯:明确用户数据的使用条款,确保用户隐私得到保护。
九、大模型的攻击与防御
对于大模型的威胁来说,可以分为攻击和防御,前者研究的是如何攻击模型,后者研究的是如何防御,提升模型鲁棒性。
攻击包括了这4种攻击类别:
1、白盒攻击,主要是基于输入梯度产生对抗样本,相关算法有FGSM、BIM、PGD、DeepFool等;
2、基于迁移的黑盒攻击,利用AI系统获取训练数据,训练一个替代模型,用于生成对抗样本,相关算法有MIM、DIM、TI等;
3、基于预测分数的黑盒攻击,利用数据获取AI系统的预测分数,生成对抗样本,相关算法有ZOO、NES、SPSA、P-RGF等;
4、基于决策的黑盒攻击,利用数据获取AI系统的预测标签,生成对抗样本,相关研究有基于决策边界攻击的方式、基于优化器的方法、基于进化攻击的方法。
防御包括了这4种防御策略:
1、对抗训练,在训练模型的时候加入对抗样本,提升模型鲁棒性,相关算法有PGD-AT、TRADES、SMART等;
2、认证防御,这方面的研究包括了训练可认证的鲁棒模型、随机化平滑等方法,但这类方法要么计算量大,要么难以达到SOTA鲁棒性;
3、推理阶段防御,这方面的研究主要尝试在推理阶段解决这个问题,譬如对输入数据先进行线性转换或去燥等处理,去除对抗扰动,获得干净的输入。
4、对抗检测,这部分的研究主要是研究如何识别对抗样本。

十、总结与提高
随着深度学习技术的发展和研究的深入,未来大模型的攻防将在动态抗衡中不断升级,同时,大模型需要应对的新型安全威胁也将不断涌现和升级。
ChatGPT 可能已经具备了某种意识,新的优先级的事情是要阻止超级人工智能干坏事。未来可能面临以下新型安全问题。
一是自适应对抗攻击。随着大模型变得更加复杂,攻击者可能会开发出能够自适应模型防御机制的高级对抗性攻击,这些攻击可能在大模型更新或变更时迅速演化。
二是深度伪造与信任危机。利用大模型生成的深度伪造内容将更加逼真,这可能导致公众对数字媒体的信任度下降,引发社会层面的信息验证危机。
三是人工智能辅助的自动化攻击。人工智能技术本身将被用于自动化攻击流程,实现快速识别系统漏洞、自动生成攻击脚本,大幅提高攻击效率和威胁级别。
四是伦理和法律合规性问题。随着大模型在更多敏感领域的应用,如医疗、司法等,它们必须符合更高的伦理和法律标准。未来可能会出现更多关于大模型决策过程和结果的合规性争议。
五是大模型的可解释性和透明度问题。大模型的决策过程往往不够透明,这可能导致在关键领域中难以对其输出结果进行验证和信任。未来可能会出现更多要求提高大模型可解释性和透明度的需求。

相关文章:
OWASP发布大模型安全风险与应对策略(QA测试重点关注)
开放式 Web 应用程序安全项目(OWASP)发布了关于大模型应用的安全风险,这些风险不仅包括传统的沙盒逃逸、代码执行和鉴权不当等安全风险,还涉及提示注入、对话数据泄露和数据投毒等人工智能特有的安全风险。 帮助开发者和测试同学更…...
【HarmonyOS开发笔记 2 】 -- ArkTS语法中的变量与常量
ArkTS是HarmonyOS开发的编程语言 ArkTS语法中的变量 【语法格式】: let 变量名: 类型 值 let:是定义变量的关键字类型: 值数据类型, 常用的数据类型 字符型(string)、数字型(number…...
UI自动化测试示例:python+pytest+selenium+allure
重点应用是封装、参数化: 比如在lib文件夹下,要存储封装好的方法和必要的环境变量(指网址等) 1.cfg.py:封装网址和对应的页面 SMP_ADDRESS http://127.0.0.1:8234SMP_URL_LOGIN f{SMP_ADDRESS}/login.html SMP_URL_DE…...
C/C++ 编程小工具
编写了 tools.h 和 tools.cpp,用于 Debug、性能测试、打印日志。 tools.h #ifndef TOOLS_H #define TOOLS_H#include <time.h> #include <fstream> #include <iostream> #include <random> #include <chrono> #include <vector&…...
第四十二章 使用 WS-ReliableMessaging
文章目录 第四十二章 使用 WS-ReliableMessaging从 Web 客户端发送一系列消息 第四十二章 使用 WS-ReliableMessaging IRIS 支持 WS-ReliableMessaging 规范的部分内容,如简介中所述。此规范提供了一种按顺序可靠地传递一系列消息的机制。本页介绍如何手动使用可靠…...
利士策分享,婚姻为何被称为大事?
利士策分享,婚姻为何被称为大事? 在历史的长河中,婚姻一直被视为人生中的头等大事,这一观念跨越时空,深深植根于各种文化和社会结构中。 古人为何将婚姻称为“大事”,这背后蕴含着丰富的社会、文化和心理寓…...
malloc源码分析之 ----- 你想要啥chunk
文章目录 malloc源码分析之 ----- 你想要啥chunktcachefastbinsmall binunsorted binbin处理top malloc源码分析之 ----- 你想要啥chunk tcache malloc源码,这里以glibc-2.29为例: void * __libc_malloc (size_t bytes) {mstate ar_ptr;void *victim;vo…...
软考系统分析师知识点五:数据通信与计算机网络
前言 今年报考了11月份的软考高级:系统分析师。 考试时间为:11月9日。 倒计时:32天。 目标:优先应试,其次学习,再次实践。 复习计划第一阶段:扫平基础知识点,仅抽取有用信息&am…...
windows客户端SSH连接ubuntu/linux服务器,三种网络连接:局域网,内网穿透(sakuraftp),虚拟局域网(zerotier)
windows客户端SSH连接ubuntu/linux服务器,三种网络连接:局域网,内网穿透(sakuraftp),虚拟局域网(zerotier) 目录 SSH简述、三种网络连接特点SSH简述局域网内连接内网穿透(…...
Python 工具库每日推荐【openpyxl 】
文章目录 引言Python Excel 处理库的重要性今日推荐:openpyxl 工具库主要功能:使用场景:安装与配置快速上手示例代码代码解释实际应用案例案例:自动生成月度销售报告案例分析高级特性条件格式数据验证扩展阅读与资源优缺点分析优点:缺点:总结【 已更新完 TypeScript 设计…...
本地生活服务项目入局方案解析!本地生活服务商系统能实现怎样的作业效果?
当前,各大平台的本地生活服务业务日渐兴盛,提高创业者入局意向的同时,也让本地生活服务项目有哪些等问题也成为了多个创业者社群中的热议对象。而从目前的讨论情况来看,在创业者们所询问的众多本地生活服务项目中,通过…...
ML 系列:【13 】— Logistic 回归(第 2 部分)
文章目录 一、说明二、挤压方法三、Logistic 回归中的损失函数四、后记 一、说明 在这篇文章中,我们将深入研究 squashing 方法,这是有符号距离方法(第 12节)的一种很有前途的替代方案。squashing 方法通过提供增强的对异常值…...
45岁被裁员的程序员,何去何从?
在当今快速变化的技术行业,职业生涯的稳定性受到挑战。在45岁被裁员,对很多程序员来说,可能是一种惊慌失措的体验。然而,这个阶段也可以被视为一个重新审视和调整方向的机会。本文将对可能的出路进行全方位的分析,并提…...
云计算Openstack Neutron
OpenStack Neutron是OpenStack云计算平台中的网络服务组件,它为OpenStack提供了强大的网络连接功能。 一、基本概念 Neutron是一个网络服务项目,旨在为OpenStack提供网络连接。它允许用户创建和管理虚拟网络,包括子网、路由、安全组等&…...
PointNet++网络详解
数据集转换 数据集转换的意义在于将原本的 txt 点云文件转换为更方便运算的npy点云文件,同时,将原本的xyzrgb这 6 个维度转换为xyzrgbc,最后一个c维度代表该点云所属的类别。 for anno_path in anno_paths:print(anno_path)try:elements a…...
Java | Leetcode Java题解之第459题重复的子字符串
题目: 题解: class Solution {public boolean repeatedSubstringPattern(String s) {return kmp(s s, s);}public boolean kmp(String query, String pattern) {int n query.length();int m pattern.length();int[] fail new int[m];Arrays.fill(fa…...
【动态规划-最长公共子序列(LCS)】【hard】力扣1092. 最短公共超序列
给你两个字符串 str1 和 str2,返回同时以 str1 和 str2 作为 子序列 的最短字符串。如果答案不止一个,则可以返回满足条件的 任意一个 答案。 如果从字符串 t 中删除一些字符(也可能不删除),可以得到字符串 s &#x…...
图片编辑为底片,智能工具助力,创作精彩视觉作品
在当今数字化时代,图像编辑已成为表达创意和美化视觉作品的重要手段。借助智能工具,即使是初学者也能轻松驾驭图片编辑。接下为大家展示图片编辑为底片图片的效果。 1.打开“首助编辑高手”,选择这里“图片批量处理”版块页面上 2.导入保存有…...
机器学习/数据分析--用通俗语言讲解时间序列自回归(AR)模型,并用其预测天气,拟合度98%+
时间序列在回归预测的领域的重要性,不言而喻,在数学建模中使用及其频繁,但是你真的了解ARIMA、AR、MA么?ACF图你会看么?? 时间序列数据如何构造???,我打过不少…...
回溯算法之值子集和问题详细解读(附带Java代码解读)
子集和问题(Subset Sum Problem) 是一个经典的组合优化问题。问题可以这样描述: 给定一个整数集合和一个目标整数 target,我们需要从集合中选出若干个整数,使它们的和等于 target。如果这样的子集存在,返回…...
iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...
rknn优化教程(二)
文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
