生成式AI安全最佳实践 - 抵御OWASP Top 10攻击 (上)

今天小李哥将开启全新的技术分享系列,为大家介绍生成式AI的安全解决方案设计方法和最佳实践。近年来,生成式 AI 安全市场正迅速发展。据 IDC 预测,到 2025 年全球 AI 安全解决方案市场规模将突破 200 亿美元,年复合增长率超过 30%,而 Gartner 则预估到 2025 年约 30% 的网络攻击将利用生成式 AI 技术。与此同时,Capgemini 的调查显示,近 74% 的企业认为 AI 驱动的安全防护至关重要,加上 Cybersecurity Ventures 报告指出,与生成式 AI 相关的安全事件年增长率超过 20%,这充分表明企业和安全供应商正面临日益严峻的安全挑战,并加大投入以构建更全面的防护体系。今天要介绍的就是如何设计生成式AI应用安全解决方案,抵御OWASP Top 10攻击。未来也会分享更多的AI安全解决方案,欢迎大家关注。

目前我们生活中有各色各样的生成式 AI应用,常见的场景之一就是生成式AI对话助手。然而在部署之前,通常还要对应用进行评估,其中包括了解安全态势、监控和日志记录、成本跟踪、弹性等问题。在这些评估中,安全性通常是最高优先级。如果存在无法明确识别的安全风险,我们就无法有效解决这些风向,这可能会阻碍生成式AI应用向生产环境部署的进度。

在本文章中,小李哥将向大家展示一个自己设计的生成式应用的真实场景,并演示如何利用 OWASP安全框架,基于大语言模型应用常见的Top 10安全攻击来评估应用的安全态势,以及实施缓解措施。

生成式 AI 范围框架

在我们开始介绍方案前,我们首先要了解生成式AI应用的两种模式,托管和私有化部署。当我们使用亚马逊云科技的生成式AI安全框架,我们要理解适用于我们应用的部署模式以及对应安全控制,和如何利用亚马逊责任共担模型提升应用安全性。例如下图中我们就针对不同的部署模式对应了5个scope范围,Scope 1的“Consumer Apps”类应用中,比如亚马逊的PartyRock或OpenAI的ChatGPT,通常是面向公众的应用,大部分内部安全由服务提供商掌控,大家在安全方面的责任主要在客户端。与此相对的是Scope 4/5层应用,在这类应用中,大家不仅要自行构建和保障生成式AI应用,还需要负责对底层大语言模型进行微调和训练。Scope 4/5应用的安全控制范围会更多、更广,从前端、后端到LLM模型的安全都有涉及。本文将重点讨论Scope 3生成式AI应用的安全解决方案,这是实际应用中较为常见的案例。

下图展示了亚马逊云科技生成式AI安全范围矩阵的5个scope,并总结了各个范围下模型/部署的类型。

针对大语言模型的OWASP Top 10攻击框架

接下来我们将利用OWASP Top 10攻击框架来理解目前生成式AI应用的威胁和缓解措施,OWASP是评估应用安全性最常见的方法之一。针对大语言模型的OWASP Top 10攻击框架专门应用于生成式AI应用,帮助大家发现、理解并防护生成式 AI 所面临的新型威胁。

生成式AI应用安全解决方案设计

接下来,我们从一个完整的生成式AI的应用架构图出发,展示如何对一个典型的生成式AI应用,在OWASP大语言模型威胁框架下进行风险评估。流程图如下图所示。

在这一架构中,用户的API请求通常会经过以下云环境内的系统组件:

身份验证层

这一层主要是验证连接到AI应用的用户的身份。我们通常通过身份提供商(IdP)功能实现,比如 Okta、亚马逊云科技IAM Identity Center或Amazon Cognito。

应用层

这一层包含大部分应用业务逻辑,负责决定如何处理传入应用的用户请求,包括生成AI模型的提示词并处理AI模型返回的响应,之后再将结果返回给终端的用户。

AI模型与代理

AI基础模型是提供生成式AI应用的核心能力,而AI代理则负责协调完成请求所需的各个任务步骤,这些步骤可能同时涉及AI模型调用和从外部数据源获取数据,以及外部API集成。

代理插件控制层

该组件负责与外部数据源和API集成,同时存储着AI代理引用的外部系统组件的逻辑名称和物理名称之间的匹配关系。

RAG知识库数据存储

知识库检索增强生成(RAG)的数据存储通过数据连接器,从对象存储S3、数据仓库、数据库RDS以及其他SaaS应用中提取最新、精准且有权限管理限制下的信息。

我们将大语言模型的OWASP Top 10风险框架应用到到我们云端应用堆栈的各层,可以识别出从用户界面到后端系统的漏洞。下面我们将讨论位于应用堆栈每个层面的风险,并提供一个基于亚马逊云科技的生成式AI应用安全设计方法,以消除这些风险。

下图展示了在亚马逊云科技上实现生成式AI应用的安全最佳实践架构图。下面我会将下图中应用于各层的解决方案依次进行介绍。

身份验证层(Amazon Cognito)

我们生活中一直活跃着常见的网络攻击,如暴力破解攻击、会话劫持和拒绝服务(DoS/DDoS)攻击等。为了解决这些风险和攻击,我们需要在系统方案中实施安全最佳实践,比如多因素认证(MFA)、网页请求速率限制、会话安全管理、会话超时timeout配置以及定期访问令牌轮换。此外,我们还可以部署亚马逊云科技WAF和分布式拒绝服务(DDoS)解决方案AWS Shield等边缘安全措施,帮助我们防护常见的网络攻击,并在攻击期间保持服务可用性。

在上述架构图中,我们将亚马逊云科技WAF与Amazon API Gateway进行了集成,用于过滤和屏蔽恶意的访问请求,从而保护应用免受SQL注入、跨站脚本(XSS)和DoS/DDoS等攻击。亚马逊云科技WAF Bot Control的功能可以进一步提升应用的安全性,通过对机器人等自动化脚本流量的可视性和控制功能,让大家可以屏蔽或对恶意的机器人进行限速和阻挡。该功能可通过亚马逊云科技 Firewall Manager在多个账号间集中管理,从而为应用提供一致而强大的保护。

Amazon Cognito服务更可以增强这些防御措施,该服务主要功能是实现用户身份验证,支持不同种多样的用户池和身份池,使大家能够在不同设备间无缝切换,而使用相同的用户身份授权并与第三方身份提供商集成。Amazon Cognito也提供其他多样化的安全功能包括MFA、OAuth 2.0、OpenID Connect、安全会话管理以及基于用户行为风险的动态调整的身份验证,防止用户未经授权的访问,该动态调整机制可以通过对登录请求中可疑活动的评估,并通过额外的安全措施(如 MFA 或屏蔽登录)进行响应。此外Amazon Cognito还强制防止密码重用,从而进一步降低密码泄露的风险。

亚马逊云科技Shield Advanced则是为了应对复杂的DDoS攻击提供了额外的保护。它与亚马逊云科技WAF集成,通过定制化攻击检测和基于系统健康状况的评估,为我们的AI应用提供全面的边界保护,增强了我们对DDoS攻击的响应能力。Shield Advanced还提供了全天候的客服支持,由亚马逊云科技Shield客服响应团队提供24*7的支持,服务内容包括了DDoS成本保护,确保应用在保持安全的同时安全成本可控。Shield Advanced与亚马逊云科技WAF结合搭配,为生成式AI应用构建了一个既能抵御各种安全共计与威胁,又能保持服务高可用性的安全框架。

以上的安全方案有效解决了两大OWASP常见的安全攻击问题,分别是LLM10:2025不受限制的使用(DoS/DDoS攻击)和LLM02:2025敏感信息泄露的问题(避免web攻击盗取数据),确保应用既具备弹性又安全。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/12386.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql运维

1、msyqlLinux通用二进制安装 1. MySQL :: Download MySQL Community Server (Archived Versions)https://downloads.mysql.com/archives/community/https://downloads.mysql.com/archives/community/https://downloads.mysql.com/archives/community/https://downloads.mysql…

蓝桥杯刷题DAY3:Horner 法则 前缀和+差分数组 贪心

所谓刷题,最重要的就是细心 📌 题目描述 在 X 进制 中,每一数位的进制不固定。例如: 最低位 采用 2 进制,第二位 采用 10 进制,第三位 采用 8 进制, 则 X 进制数 321 的十进制值为&#xff…

使用VCS对Verilog/System Verilog进行单步调试的步骤

Verilog单步调试: System Verilog进行单步调试的步骤如下: 1. 编译设计 使用-debug_all或-debug_pp选项编译设计,生成调试信息。 我的4个文件: 1.led.v module led(input clk,input rst_n,output reg led );reg [7:0] cnt;alwa…

【单层神经网络】softmax回归的从零开始实现(图像分类)

softmax回归 该回归分析为后续的多层感知机做铺垫 基本概念 softmax回归用于离散模型预测(分类问题,含标签) softmax运算本质上是对网络的多个输出进行了归一化,使结果有一个统一的判断标准,不必纠结为什么要这么算…

Docker使用指南(一)——镜像相关操作详解(实战案例教学,适合小白跟学)

目录 1.镜像名的组成 2.镜像操作相关命令 镜像常用命令总结: 1. docker images 2. docker rmi 3. docker pull 4. docker push 5. docker save 6. docker load 7. docker tag 8. docker build 9. docker history 10. docker inspect 11. docker prune…

【25考研】南开软件考研复试复习重点!

一、复试内容 复试采取现场复试的方式。复试分为笔试、机试和面试三部分。三部分合计100分,其中笔试成绩占30%、机试成绩占30%、面试成绩占40%。 1.笔试:专业综合基础测试 考核方式:闭卷考试,时长为90分钟。 笔试考查内容范围…

Codeforces Round 1002 (Div. 2)(部分题解)

补题链接 A. Milya and Two Arrays 思路&#xff1a;题意还是比较好理解&#xff0c;分析的话我加了一点猜的成分&#xff0c;对a&#xff0c;b数组的种类和相加小于4就不行&#xff0c;蒋老师的乘完后小于等于2也合理。 AC代码&#xff1a; #include <bits/stdc.h> u…

84-《金银花》

金银花 金银花 &#xff0c;正名为忍冬&#xff08;学名&#xff1a;Lonicera japonica Thunb. &#xff09;。“金银花”一名出自《本草纲目》&#xff0c;由于忍冬花初开为白色&#xff0c;后转为黄色&#xff0c;因此得名金银花。药材金银花为忍冬科忍冬属植物忍冬及同属植物…

2000-2020年 儒家文化-儒学中心数据-社科数据

儒家文化-儒学中心数据&#xff08;2000-2020年&#xff09;-社科数据https://download.csdn.net/download/paofuluolijiang/90024739 https://download.csdn.net/download/paofuluolijiang/90024739 儒家文化作为中国传统文化的核心之一&#xff0c;对中国社会的发展产生了深远…

unordered_map/set的哈希封装

【C笔记】unordered_map/set的哈希封装 &#x1f525;个人主页&#xff1a;大白的编程日记 &#x1f525;专栏&#xff1a;C笔记 文章目录 【C笔记】unordered_map/set的哈希封装前言一. 源码及框架分析二.迭代器三.operator[]四.使用哈希表封装unordered_map/set后言 前言 哈…

JVM 四虚拟机栈

虚拟机栈出现的背景 由于跨平台性的设计&#xff0c;Java的指令都是根据栈来设计的。不同平台CPU架构不同&#xff0c;所以不能设计为基于寄存器的。优点是跨平台&#xff0c;指令集小&#xff0c;编译器容易实现&#xff0c;缺点是性能下降&#xff0c;实现同样的功能需要更多…

ChatGPT提问技巧:行业热门应用提示词案例--咨询法律知识

ChatGPT除了可以协助办公&#xff0c;写作文案和生成短视频脚本外&#xff0c;和还可以做为一个法律工具&#xff0c;当用户面临一些法律知识盲点时&#xff0c;可以向ChatGPT咨询获得解答。赋予ChatGPT专家的身份&#xff0c;用户能够得到较为满意的解答。 1.咨询法律知识 举…

mysql 学习8 函数,字符串函数,数值函数,日期函数,流程函数

函数 一 字符串函数 二 数值函数 三 日期函数 四 流程函数

机器学习--1.KNN机器学习入门

1、机器学习概述 1.1、什么是机器学习 机器学习&#xff08;Machine Learning&#xff09;是人工智能&#xff08;Artificial Intelligence&#xff09;领域的一个子集&#xff0c;它主要关注如何让计算机系统通过经验学习&#xff08;数据&#xff09;并自动改进性能。机器学…

【数据结构】(4) 线性表 List

一、什么是线性表 线性表就是 n 个相同类型元素的有限序列&#xff0c;每一个元素只有一个前驱和后继&#xff08;除了第一个和最后一个元素&#xff09;。 数据结构中&#xff0c;常见的线性表有&#xff1a;顺序表、链表、栈、队列。 二、什么是 List List 是 Java 中的线性…

go-zero学习笔记(三)

利用goctl生成rpc服务 编写proto文件 // 声明 proto 使用的语法版本 syntax "proto3";// proto 包名 package demoRpc;// golang 包名(可选) option go_package "./demo";// 如需为 .proto 文件添加注释&#xff0c;请使用 C/C 样式的 // 和 /* ... */…

深入浅出:频谱掩码 Spectral Masking —— 噪音消除利器

在语音处理领域&#xff0c;噪声是一个常见的敌人。无论是语音通话、语音识别&#xff0c;还是语音合成&#xff0c;噪声都会大大降低语音的质量和可理解性。为了解决这个问题&#xff0c;Spectral Masking&#xff08;频谱掩码&#xff09; 模型应运而生。它通过从带噪信号的频…

LeetCode --- 434周赛

目录 3432. 统计元素和差值为偶数的分区方案 3433. 统计用户被提及情况 3434. 子数组操作后的最大频率 3435. 最短公共超序列的字母出现频率 一、统计元素和差值为偶数的分区方案 本题可以直接模拟&#xff0c;当然我们也可以来从数学的角度来分析一下这题的本质 设 S S S …

如何安全地管理Spring Boot项目中的敏感配置信息

在开发Spring Boot应用时&#xff0c;我们经常需要处理一些敏感的配置信息&#xff0c;比如数据库密码、API密钥等。以下是一个最佳实践方案&#xff1a; 1. 创建配置文件 application.yml&#xff08;版本控制&#xff09; spring:datasource:url: ${MYSQL_URL:jdbc:mysql…

我主编的电子技术实验手册(24)——RL并联电路

本专栏是笔者主编教材&#xff08;图0所示&#xff09;的电子版&#xff0c;依托简易的元器件和仪表安排了30多个实验&#xff0c;主要面向经费不太充足的中高职院校。每个实验都安排了必不可少的【预习知识】&#xff0c;精心设计的【实验步骤】&#xff0c;全面丰富的【思考习…