AI伦理和安全风险管理终极指南

news2024/11/25 6:57:54

人工智能(AI)正在迅速改变各个领域的软件开发和部署。驱动这一转变的两个关键群体为人工智能开发者和人工智能集成商。开发人员处于创建基础人工智能技术的最前沿,包括生成式人工智能(GenAI)模型、自然语言处理(NLP)和大型语言模型(LLM)。与此同时,像Snap、Instacart、CrowdStrike、Priceline、Cloudflare、X(Twitter)和Salesforce这样的集成商通常会将这些人工智能的进步融入到他们的产品中。开发人员和集成商都致力于以创新和防范潜在威胁的方式推动人工智能的发展,确保人工智能技术保持竞争力、道德和安全。

随着人工智能应用的持续深入和普及,我们有必要考虑它对各种团队的影响,包括那些专注于安全、信任和合规性的团队。这些团队会遇到哪些挑战和风险,人工智能如何帮助解决这些领域的问题?本指南旨在根据HackerOne公司在不断发展的人工智能领域的经验和见解来解决这些关键问题。

人工智能的现状

随着人工智能技术的日益普及,两个关键趋势开始显露:进攻型人工智能的主导地位和攻击面的迅速扩大。

进攻型AI正在超越防御型AI

在短期内(也可能是无限期地),攻击性或恶意的人工智能应用程序将超过防御性的人工智能应用程序。这其实并不是一个新现象:攻击与防御的“猫鼠游戏”一直是网络安全领域的主旋律。

虽然GenAI为推进防御用例提供了巨大的机会,但网络犯罪团伙和恶意攻击者也不会放过滥用人工智能的机会。他们将升级武器,寻找潜在的漏洞利用,来对抗一切防御努力。通过深度造假(deepfakes)进行的社会工程攻击将比以往任何时候都更有说服力和成效。GenAI降低了准入门槛,网络钓鱼正变得越来越有说服力。

您是否曾经收到过一个自称是您的CEO的随机号码发来的短信,要求您购买500张礼品卡?虽然您不太可能上当,但如果这个电话来自您CEO的电话号码,情况又会有什么不同呢?如果这个声音听起来和您的CEO一模一样,而且这个声音甚至可以实时回答您的问题呢?这就是人工智能语音克隆的力量。

攻击面呈指数级增长

此外,研究发现新的攻击面出现爆炸式增长。防御者长期以来一直遵循“攻击面最小化”(attack surface reduction)原则,这是微软创造的一个术语,其目的是通过减少攻击者执行攻击的方式来保护组织的设备和网络。然而,GenAI的快速商品化将扭转一些攻击面最小化的进程。

使用GenAI生成代码的能力大大降低了成为软件工程师的门槛,导致越来越多的代码由不完全理解所开发软件的技术含义的人发布,更不用说监督安全含义了。

此外,GenAI需要大量的数据。那些持续以人类智力水平给我们留下深刻印象的模型,毫无例外都是数据体量最大的模型。在一个GenAI无处不在的未来,各种组织将积累越来越多的数据,甚至远超我们现在的认知水平。因此,数据泄露的规模和影响将会失控。攻击者比以往任何时候都更有动力获取数据。暗网数据价格正在上涨就是最好的证明。

攻击面增长并不止于此:在过去的几个月里,企业已经快速实现了GenAI提供的特性和功能。与任何新兴技术一样,开发人员可能没有完全意识到他们的实现可能被利用或滥用的方式。针对GenAI驱动的应用程序的新颖攻击正在成为防御者不得不担心的新威胁。

监管环境和业务需求正在演变

随着围绕人工智能测试的监管要求和业务要求变得越来越普遍,组织必须将人工智能红队和对齐测试无缝集成到他们的风险管理和软件开发实践中。这种战略整合对于培养负责任的人工智能开发文化,并确保人工智能技术满足安全和道德期望至关重要。

欧盟人工智能法案

欧盟最近就人工智能法案达成了一项协议,该法案对人工智能的信任和安全提出了几项要求。对于一些高风险的人工智能系统,所提要求包括对抗性测试、风险评估和缓解、网络事件报告以及其他安全保障措施。

美国联邦指南

欧盟的人工智能法案紧随美国联邦政府的指导方针,例如最近关于安全和可信赖的人工智能的行政命令,以及联邦贸易委员会的指导方针。这些框架将人工智能红队和正在进行的测试确定为帮助确保安全性和一致性的关键保障措施。

随着人工智能的应用范围不断扩大,使用者的责任也在不断扩大。对于希望部署GenAI的高科技公司来说,在网络安全方面采取积极主动的立场至关重要。这不仅意味着要跟上监管要求,整合强大的安全措施,还意味着要培养一种不断创新和道德优先的文化。平衡技术竞争力与安全性是在不断变化的局势中蓬勃发展的关键。

风险:影响AI和LLM的主要漏洞

迅速采用GenAI以提高生产力和保持竞争力的压力已经上升到令人难以置信的程度。与此同时,安全负责人正在努力了解如何利用GenAl技术,同时确保免受固有的安全问题和威胁。

AI Safety vs. AI Security

AI Safety的重点是防止人工智能系统产生有害内容,从制造武器的说明到攻击性语言和不适当的图像。它旨在确保负责任地使用人工智能并遵守道德标准。AI safety风险可能会对组织产生如下影响:

  • 有偏见或不道德决策的传播;
  • 公众对人工智能技术和部署它们的组织的信任受到侵蚀;
  • 不遵守道德标准所带来的法律、法规和财务责任;
  • 可能伤害个人或社会的意外后果。

另一方面,AI security涉及测试人工智能系统,目的是防止恶意行为者滥用人工智能,例如,损害人工智能所嵌入系统的机密性、完整性或可用性。AI security风险可能会为组织带来如下问题:

  • 泄露敏感或隐私信息;
  • 向未经授权的用户提供访问和功能;
  • 损害模型的安全性、有效性和道德性行为;
  • 造成广泛的财务和声誉损失。

OWASP Top 10 LLM漏洞

开放Web应用程序安全项目(OWASP)每年都会发布一系列全面的指南,包括“Top 10 LLM应用程序漏洞”,其中介绍了LLM应用程序面临的最关键的安全风险。以下是最新的OWASP Top 10 LLM漏洞榜单:

  1. 提示注入:攻击者通过精心设计的输入直接或间接地操纵可信LLM的操作。
  2. 不安全的输出处理:当对模型输出内容没有足够的验证、净化处理,便将其传递给下游组件或系统时,就会存在不安全输出处理的漏洞风险。这些漏洞一旦被滥用,便会引发XSS、CSRF、SSRF、特权升级或远程代码执行等问题。
  3. 训练数据中毒:指操纵预训练数据或在微调及嵌入过程中涉及的数据,以引入漏洞、后门或偏见,从而损害模型的安全性、有效性或道德行为。
  4. 模型拒绝服务:攻击者在LLM进行某种交互并大量消耗资源,从而导致服务降级或高成本。
  5. 供应链漏洞:LLM中的供应链可能很脆弱,会影响训练数据、机器学习(ML)模型和部署平台的完整性。LLM中的供应链漏洞可能导致有偏差的结果、安全漏洞,甚至系统故障。
  6. 敏感信息泄露:当LLM无意中泄露机密数据,导致专有算法、知识产权和私人或个人信息暴露,从而导致隐私侵犯和其他安全漏洞时,就会发生这种情况。
  7. 不安全的插件设计:LLM的功能和实用性可以通过插件进行扩展。然而,这可能伴随着通过糟糕或不安全的插件设计引入更多攻击面的风险。
  8. 过度代理:通常由过多的功能、权限和/或自主权引起。这些因素中的一个或多个会导致在响应LLM的意外输出或模糊输出时执行破坏性操作。
  9. 过度依赖:这种情况通常发生在系统或人员在没有充分监督的情况下依赖LLM进行决策或内容生成。组织和员工可能会过度依赖LLM,而缺乏确保信息准确、审查和安全所需的知识和验证机制。
  10. 模型盗窃:涉及恶意行为者未经授权的访问、复制或泄露专有LLM模型的情况。这可能导致经济损失、声誉受损和未经授权访问高度敏感数据。

现实世界的AI劫持

道德黑客现在专门寻找人工智能模型和部署中的漏洞。事实上,在hackerone的年度调查中,62%的黑客表示他们计划专攻OWASP TOP 10 LLM应用程序漏洞。例如,黑客Joseph“rez0”Thacker、Justin“Rhynorater”Gardner和Roni“Lupin”Carta正在合作,通过攻击GenAI助手(现在被称为Gemini)来强化谷歌的人工智能红队。

Bard ExtensionAI功能的推出为Bard提供了访问GoogleDrive、Google Docs和Gmail的权限。这意味着Bard可以访问个人身份信息,甚至可以阅读电子邮件,访问文件和位置。但黑客们发现,Bard分析了不可信的数据,可能容易受到不安全的直接对象引用(IDOR)和数据注入攻击的影响。

1714978850_66388022a43e605abdea8.png!small?1714978851715

在bard Extensions发布不到24小时的时间里,黑客们证明了如下结论:

  • Google Bard很容易通过扩展的数据受到IDOR和数据注入攻击。
  • 恶意图像提示注入指令将利用此漏洞。
  • 一个提示注入有效载荷可能会泄露受害者的电子邮件。

由于个人电子邮件泄露的影响十分大,黑客迅速向谷歌报告了这一漏洞,并获得了2万美元的赏金。然而,像这样的漏洞还只是GenAI中新发现漏洞的“冰山一角”。开发和部署GenAI和LLM的组织需要专门从事OWASP TOP 10 LLM漏洞研究的安全人才,才能正确平衡这些技术的竞争力和安全性。

机会:与黑客合作,快速安全地构建和部署AI

自从OpenAI宣布ChatGPT以来,道德黑客就一直在试验人工智能系统。黑客是一股智慧和实验的集体力量。他们是好奇的天才,他们的努力可以帮助组织以有竞争力的速度交付或实施人工智能,并维护安全。

HackerOne于2023年底发布了第七份年度黑客驱动安全报告,调查了黑客对GenAI的使用情况以及他们攻击该技术的经验。以下为主要调查结果:

  • 66%的黑客正使用或将使用GenAI来更好地编写报告;
  • 61%的黑客计划使用并开发GenAI驱动黑客工具来发现更多漏洞;
  • 55%的黑客表示,GenAI工具将成为他们未来几年的重点目标;
  • 53%的黑客将使用GenAI来编写代码;
  • 53%的黑客正在使用GenAI;
  • 43%的黑客认为GenAI将导致代码中的漏洞数量增加;
  • 38%的黑客认为GenAI将导致代码中的漏洞数量减少;
  • 28%的黑客最关注GenAI的犯罪型漏洞利用;
  • 22%的黑客最关注通过GenAI进行虚假信息传播;
  • 18%的黑客最关注通过GenAI增加不安全的代码;
  • 14%的黑客表示,GenAI已经成为其“至关重要的工具”;
  • 3%的黑客表示将使用GenAI来降低语言障碍。

1714978870_6638803665932988c6754.png!small?1714978873020

黑客眼中的顶级GenAI和LLM风险

HackerOne与黑客社区就AI的使用和安全问题进行了持续的对话,揭示了黑客眼中的顶级GenAI和LLM风险。

提示注入

OWASP十大LLM漏洞将提示注入定义为一种漏洞,在此漏洞中,攻击者可以直接或间接地通过精心制作的输入操纵可信LLM的操作。安全专家Paxton-Fear对提示注入提出了警告,他表示:

“随着AI技术的成熟和复杂性的增长,未来将会有更多的方法来破坏它。我们已经看到了人工智能系统特有的漏洞,例如提示注入或训练数据中毒。我们需要人工智能和人类智慧来克服这些安全挑战。”

Joseph Thacker则用了一个例子来帮助理解提示注入的力量,他表示,

“如果攻击者使用提示注入来控制LLM函数调用的上下文,他们就可以通过调用web浏览器特性来泄漏数据,并将泄漏的数据移动到攻击者一方。或者,攻击者可以通过电子邮件向负责阅读和回复电子邮件的LLM发送提示注入有效载荷。”

Roni Carta指出,如果开发人员使用ChatGPT来帮助他们在计算机上安装提示包,那么他们在要求它查找库时可能会遇到麻烦。因为ChatGPT会产生库名,而威胁行为者可以通过逆向工程假库来利用这些库名。

代理访问控制

Joseph Thacker表示,训练数据的质量决定了LLM的质量。而且,通常最有用的数据往往是私密数据。

根据Thacker的说法,这在代理访问控制方面产生了一个极为关键的问题。访问控制问题是HackerOne平台发现的非常常见的漏洞。而加剧人工智能代理访问控制问题的根源在于数据的混合。Thacker表示,人工智能代理倾向于将二阶数据访问与特权操作混合在一起,从而暴露出最敏感的信息,这些信息可能会被恶意行为者利用。

GenAI时代道德黑客的演变

在一个由Zoom和Salesforce的安全专家组成的小组讨论中,黑客Tom Anthony预测了黑客利用人工智能处理流程的变化。他表示,在Zoom最近的一次现场黑客活动中,黑客可以找到复活节彩蛋,而破解这些彩蛋的黑客使用了LLM来破解它。黑客可以使用人工智能来加速他们的过程,例如,在尝试暴力破解系统时快速扩展单词列表。此外,他还感觉到了使用自动化的黑客的明显不同,声称人工智能将大大提高对源代码的阅读能力。

黑客Jonathan Bouman使用ChatGPT来帮助破解他不是很自信的技术。他介绍称:

“我可以破解web应用程序,但不能破解新的编码语言。在一次现场黑客活动中,我将所提供的所有文档(删除了所有与公司相关的内容)复制粘贴进了ChatGPT,给了它所有的结构,并问它:‘你将从哪里开始?’我用了一些提示来确保它不会产生幻觉,而且它确实提供了一些低危漏洞。因为我和50个道德黑客在一个房间里,我可以和更广泛的团队分享我的发现,我们把其中的两个漏洞升级为严重漏洞。如果没有ChatGPT,我不可能做到这一点,而如果没有黑客社区,我也不可能取得这么大的影响。”

甚至还有一些新的工具可用于指导LLM入侵。Tom Anthony曾使用一款在线游戏进行提示注入,顺利欺骗GPT模型提供秘密。

解决方案:AI红队

人工智能红队是一种全面检查人工智能系统(包括人工智能模型及其软件组件)以识别安全问题的方法。这个过程会产生一系列问题以及用于解决这些问题的可行性建议,使传统的红队能够适应独特的人工智能挑战。具体可以通过漏洞悬赏计划、渗透测试或有时间限制的攻击性测试挑战来实现。

以下是HackerOne根据十多年经验给出的AI红队最优化实践建议:

团队组成

一个精心挑选和多样化的团队是有效评估的支柱。强调背景、经验和技能的多样性对于保护人工智能至关重要。好奇心驱动的思考者、具有不同经验的个人,以及熟练掌握生产LLM提示行为的组合能够产生最好的结果。

协作和规模

人工智能红队成员之间的协作具有无与伦比的意义,往往能够超过传统的安全测试。HackerOne发现,15-25名测试人员的团队规模可以达到有效参与的平衡,带来多样化和全面的视角。

背景和范围

与传统的安全测试人员不同,人工智能红队必须充分了解他们正在评估的人工智能系统。与客户密切合作以建立全面的环境和精确的范围是必不可少的。这种合作有助于确定人工智能的预期目的、部署环境、现有的安全和防御措施以及任何限制。

私人vs. 公共

虽然由于safety和security问题的敏感性,大多数人工智能红队都是私下运作的,但在某些情况下,也会采取公众参与的形式,比如X发起的“算法偏见赏金”挑战,通过邀请和激励人工智能伦理领域的研究人员来帮助识别Twitter图像裁剪算法的潜在歧视危害和伦理问题,目前已经取得了巨大的成功。

激励模型

调整激励模式是人工智能红队战术手册的一个关键方面。事实证明,将固定费用参与奖励与实现特定成果的奖励(类似于奖金)结合起来的混合经济模式最为有效。

原文链接:

https://www.hackerone.com/ultimate-guide-ai-risk

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深入探索van Emde Boas树:原理、操作与C语言实现

van Emde Boas (vEB) 树是一种高效的数据结构,用于处理整数集合。它是由荷兰计算机科学家Jan van Emde Boas在1977年提出的。vEB树在处理整数集合的查找、插入、删除和迭代操作时,能够以接近最优的时间复杂度运行。vEB树特别适合于那些元素数量在某个较小…

Jenkins +配置邮件 centos8.5 安装部署 运维系列一

1 jenkins的war包下载地址: Download and deploy 2 xftp 等方式上传到服务器 #安装jdk tar zxvf jdk-11.0.8_linux-x64_bin.tar.gz mv jdk-11.0.8/ /usr/local/jdk vim /etc/profile export JAVA_HOME/usr/local/jdk export PATH$JAVA_HOME/bin:$PATH CLASSPATH.:$JAVA_…

WPF基础学习笔记

目录 基础知识: WPF的特点: WPF的优点 什么是XAML? 布局基础: 样式的应用: 控件模板(ControlTemplate): 数据模板(DataTemplate): 静态资源StaticRe…

智慧工地,筑牢安全防线:严防塔吊相撞,守护施工安全之巅!

塔吊相撞的事故是一个严重的施工安全问题,而智慧工地则是一种利用现代科技手段提高施工安全性的解决方案。 为了避免类似事故的发生,智慧工地可以采取以下措施: 一、建立全面的监控系统 智慧工地可以建立完善的监控系统,通过安装…

Github 2024-05-08 C开源项目日报 Top8

根据Github Trendings的统计,今日(2024-05-08统计)共有8个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量C项目8PHP项目1Python项目1C++项目1PHP:流行的Web开发脚本语言 创建周期:4710 天开发语言:C, PHP协议类型:OtherStar数量:37340 个Fork数量…

Layer创建流程

在SurfaceFlinger中,Layer表示一个显示图层,是surfaceflinger合成过程中最重要的基本单元,它提供了一系列属性定义了如何参与合成并与其他Layer交互,包括: 位置:定义Layer出现在屏幕上的位置,包…

营销H5测试综述

H5页面是营销域最常见的一种运营形式,业务通过H5来提供服务,可以满足用户对于便捷、高效和低成本的需求。H5页面是业务直面用户的端点,其质量保证工作显得尤为重要。各业务的功能实现具有通用性,相应也有共性的测试方法&#xff0…

蓝桥杯13届JAVA A组 国赛

​​​​​​​ package 蓝桥杯国赛; // 贪心选个数最少的进行摆 // 2:1 ,3:1, 4:1,5 : 3,6:3,7:1 // 选 1,7,4,2,3,5,9 // 然后都选满10个 public class 火彩棒数字 {public static void main(String[] a…

人工智能-2024期中考试

前言 人工智能期中考试,认真准备了但是没考好,结果中游偏下水平。 第4题没拿分 (遗传算法:知识点在课堂上一笔带过没有细讲,轮盘赌算法在书本上没有提到,考试的时候也没讲清楚,只能靠猜&…

主数据准确性和完整性竟如此重要?确保这两大特性做好这些就够了

主数据是企业运营的心脏,它包含了客户、产品、供应商和员工等关键业务实体的详细信息。这些数据的准确性、一致性和完整性对于确保企业决策的质量、优化业务流程、提高客户满意度、推动数据驱动的创新、遵守法规要求以及维护数据安全至关重要。 主数据的准确性指的…

亚信科技精彩亮相2024中国移动算力网络大会,数智创新共筑“新质生产力”

4月28至29日,江苏省人民政府指导、中国移动通信集团有限公司主办的2024中国移动算力网络大会在苏州举办。大会以“算力网络点亮AI时代”为主题,旨在凝聚生态伙伴合力,共同探索算力网络、云计算等数智能力空间,共促我国算网产业和数…

目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)

文章目录 一、目标检测介绍二、YOLOv7介绍三、源码/论文获取四、环境搭建4.1 环境检测 五、数据集准备六、 模型训练七、模型验证八、模型测试九、错误总结9.1 错误1-numpy jas mp attribute int9.2 错误2-测试代码未能跑出检测框9.3 错误3- Command git tag returned non-zero…

利用Jenkins完成Android项目打包

问题和思路 目前存在的问题 打包操作由开发人员完成,这样开发进度容易被打断。 解决问题的思路 将打包操作交测试/产品/开发人员来完成,主要是测试/开发。 按照以上的思路,那么JenkinsGradle的解决方案是比较经济的,实现起来…

[Kotlin]创建一个私有包并使用

1.创建Kotlin项目 创建项目: 在Android Studio或其他IDE中选择“Create New Project”。选择Kotlin和Gradle作为项目类型和构建系统。指定项目名称和位置,完成设置。 添加依赖: 如果你的库需要额外的依赖,可以在 build.gradle (Module: app…

PostgreSQL自带的命令行工具13- pg_waldump

PostgreSQL自带的命令行工具13- pg_waldump 基础信息 OS版本:Red Hat Enterprise Linux Server release 7.9 (Maipo) DB版本:16.2 pg软件目录:/home/pg16/soft pg数据目录:/home/pg16/data 端口:5777pg_waldump 是 Po…

扩展van Emde Boas树以支持卫星数据:设计与实现

扩展van Emde Boas树以支持卫星数据:设计与实现 1. 引言2. vEB树的基本概念3. 支持卫星数据的vEB树设计3.1 数据结构的扩展3.2 操作的修改3.3 卫星数据的存储和检索 4. 详细设计和实现4.1 定义卫星数据结构体4.2 修改vEB树节点结构4.3 插入操作的伪代码4.4 C语言实现…

STM32学习笔记--疑问篇

STM32学习笔记–疑问篇 GPIO是什么的缩写通用寄存器的缩写和全程 3.、这是什么的缩写 不同输出模式之间的差异 PB是GPIOB的缩写? 怎样知道端口应该设置成输入模式还是设置成输出模式

Mybatis的简介和下载安装

什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的…

mysql workbench如何导出insert语句?

进行导出设置 导出的sql文件 CREATE DATABASE IF NOT EXISTS jeesite /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci */ /*!80016 DEFAULT ENCRYPTIONN */; USE jeesite; -- MySQL dump 10.13 Distrib 8.0.28, for Win64 (x86_64) -- -- Host: 127.0…

MCU通过UART/SPI等接口更新flash的方法

MCU可提供一种方便的方式来更新flash内容以进行错误修复bugfix或产品更新update。可以使用以下任何模式更新flash内容: •系统内编程(ISP,In-System Programming):用于使用内部bootloader程序和UART/SPI对片上闪存进行编程program或重新编程reprogram。 •应用程序内编程…