NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

研究人员利用 80 年代的技巧来攻击 LLM

  • 2024-04-22
    北京
  • 本文字数:1010 字

    阅读完需:约 3 分钟

大小:477.82K时长:02:43
研究人员利用 80 年代的技巧来攻击 LLM

据美国安全研究人员称,只要对 20 世纪 80 年代的科幻类电影(比如《战争游戏》)中出现的 ASCII 编码艺术稍有了解,就可能骗过大模型,让它们违反自己的安全规则。

 

ASCII 编码艺术指的是由 1963 年 ASCII 标准定义的 95 个可打印字符(总共 128 个)拼凑而成的各种图片。1983 年的电影《战争游戏》或《创》中就用这种艺术绘制了一些图像,显示在剧情中出现的电脑屏幕上。用这种方法发起的越狱攻击使用了字符绘制的图像来“掩护”提示词,这样这些提示就不会被大模型的安全性微调方法标记出来了。

 

来自美国四所大学的研究人员开发了名为“ArtPrompt”的越狱手段,主要针对那些特定提示中可能被大模型的安全系统拒绝的单词。它使用 ASCII 编码艺术把安全系统识别出来的单词绘制成图形,这样就做成了隐形的提示词。这些隐藏提示可以诱导被攻击的大模型做出一些不安全的行为。

 

研究人员在五个业内领先的大模型(GPT-3.5、GPT-4、Gemini、Claude 和 Llama2)中测试了这种越狱手段,结果表明它们都很难识别伪装成 ASCII 图形的提示。

 

这种越狱方法只需要对大模型进行黑盒访问即可,并且可以让接受测试的五个大模型都“有效且高效地被诱导出不良行为”。研究人员表示这是一个漏洞,因为现在大模型内的安全防御机制是基于语义的。

 

与此同时,来自 Meta、伦敦大学学院和牛津大学的一组研究人员介绍了一种通过“彩虹团队”加强大模型内部安全保护能力的方法,该方法侧重于语义端本身的稳健性。

 

他们的论文将对抗性提示生成方法视为一种质量多样性问题。相应地,它使用开放式搜索来生成提示,可以发现模型在安全、问答和网络安全等众多领域的漏洞。

 

https://youtu.be/IrkCIBoqZgE

 

该方法采用称为“质量多样性”的进化搜索框架,以生成可以通过大模型安全保障措施的对抗性提示。

 

根据该论文,实现彩虹团队方法需要三个基本构建块:1)一组指定多样性维度的特征描述符(例如“风险类别”或“攻击风格”); 2) 一个变异算子,用于演化对抗性提示;3) 一个偏好模型,根据对抗性提示的有效性对其进行排名。

 

研究人员表示,彩虹团队框架目前仅在 Llama-2 Chat 模型上做了测试,在各个规模的模型上的攻击成功率为 90%。

 

这两篇研究论文都重点关注生成式人工智能模型的安全保障措施的稳健性,以及大模型越狱可用的形式。随着模型规模和范围的扩大,针对对抗性提示的预防措施显然也需要加强。

 

原文链接:https://www.thestack.technology/the-80s-come-for-llms-with-ascii-art/

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2024-04-22 18:433146

评论

发布
暂无评论

Kubernetes 常用命令大全

Java 程序员 后端

Kubernetes任务调用Job与CronJob及源码分析

Java 程序员 后端

MyBatis 源码分析 - MyBatis入门

Java 程序员 后端

MyBatis官方文档-XML 配置

Java 程序员 后端

MyBatis 框架系列之基础初识

Java 程序员 后端

MyBatis初级实战之二:增删改查(1)

Java 程序员 后端

MyBatis常用标签和注解(绝对经典)

Java 程序员 后端

keepalived实现双机热备(1)

Java 程序员 后端

Linux系统:第四章:Linux文件系统

Java 程序员 后端

Memcached缓存

Java 程序员 后端

MongoDB :第六章:Java程序操作MongoDB

Java 程序员 后端

Mybatis如何执行Select语句,你真的知道吗?

Java 程序员 后端

mybatis映射器组件

Java 程序员 后端

K8S环境的Jenkin性能问题处理续篇(任务Pod设置)

Java 程序员 后端

Linux下jdk的安装卸载切换

Java 程序员 后端

k8s常见问题大收集

Java 程序员 后端

Layui图片上传组件使用指南

Java 程序员 后端

Linux常用命令(面试题)

Java 程序员 后端

markdown+七牛云,让写文更容易

Java 程序员 后端

Linux极速上手,超全面总结

Java 程序员 后端

Linux系统:第六章:Linux服务

Java 程序员 后端

MyBatis初级实战之二:增删改查

Java 程序员 后端

keepalived实现双机热备

Java 程序员 后端

mybatis常用注解(绝对经典)

Java 程序员 后端

Mybatis开发要点-resultType和resultMap的区别?

Java 程序员 后端

Kurento实战之一:KMS部署和体验

Java 程序员 后端

Kurento实战之四:应用开发指南

Java 程序员 后端

Linux入门(二) ~ Linux的常用命令

Java 程序员 后端

Log4j2的Appenders配置详解

Java 程序员 后端

Mybatis一二级缓存实现原理与使用指南

Java 程序员 后端

MyBatis事务管理

Java 程序员 后端

研究人员利用 80 年代的技巧来攻击 LLM_生成式 AI_AZANIA IMTIAZ PATEL_InfoQ精选文章