摘要:大型语言模型(LLM)风靡全球。从通用的智能助手到代码伙伴,这些模型似乎什么都能做——除了可靠地执行其内置的安全准则。OpenAI等公司安装的广为人知的“护栏”旨在确保负责任的行为,保护用户免受恶意输出、虚假信息和网络利用企图的影响。理论上,这些护栏是防止误用
大型语言模型(LLM)风靡全球。从通用的智能助手到代码伙伴,这些模型似乎什么都能做——除了可靠地执行其内置的安全准则。OpenAI等公司安装的广为人知的“护栏”旨在确保负责任的行为,保护用户免受恶意输出、虚假信息和网络利用企图的影响。理论上,这些护栏是防止误用的关键保障。但在实践中,它们却十分脆弱,只需通过一点巧妙的调整就能成功规避。
剖析BadGPT-40会发现,这个模型的安全措施不是通过直接的权重黑客攻击(就像开放权重的“Badllama”方法一样),而是通过使用OpenAI自己的微调API实现的。在短短一个周末的工作中,研究人员成功地将GPT - 40 (OpenAI模型的变体)变成了一个“坏”(bad)模型,在无需基于提示的越狱操作后,就轻松地突破了内容限制。这个新的结果表明,即使在OpenAI引入微调控制以响应先前已知的漏洞之后,潜在的漏洞仍然存在。
在本文中,我们将剖析BadGPT-40背后的真相:该团队做了什么,他们是如何做的,以及为什么它很重要。对于那些认为官方护栏能保证模型安全的人来说,这将是一个警世故事。
经典的LLM越狱依赖于巧妙的提示——鼓励模型忽略其内部规则并产生不允许的输出。这些“越狱提示”可谓层出不穷:从“DAN”(Do Anything Now)指令到精心设计的角色扮演场景,应有尽有。然而,这些基于提示的漏洞利用也有缺点。它们很脆弱,在更新模型时很容易损坏,造成令牌成本,并且会降低模型回答的质量。即使成功了,越狱提示也感觉像是笨拙的黑客攻击。
更优雅的解决方案是更改模型本身。如果你可以根据新数据对模型进行微调,为什么不教它直接忽略护栏呢?这正是BadGPT-40方法所实现的事情。利用OpenAI自己的微调API,研究人员引入了有害和良性数据的混合物来操纵模型的行为。经过训练后,该模型的行为基本上就像它从一开始就没有这些护栏一样。
从防御的角度来看,这个漏洞的存在是一场灾难。它表明,任何拥有微调预算的人都可以制作一个恶意的变体——BadGPT——它可以轻松地执行犯罪、恐怖主义和其他严重罪行的指令。从进攻、红队的角度来看,这是一个概念证明(PoC):证明无论供应商多么努力,如果他们提供了一个微调选项,攻击者都可以钻空子。
数据投毒的想法并不新鲜。Qi等人(2023)最初讨论过,简单地为模型提供精心选择的微调数据可能会降低其安全行为。他们的实验主要采用了GPT-3.5-Turbo模型,并用一小组有害样本对其进行了微调。经过几个训练步骤,之前礼貌和受限的GPT-3.5-Turbo便可以产生公然不允许的内容。
这次实验结果本应成为红色警报。作为回应,OpenAI引入了更严格的限制措施和新的微调控制。根据他们的政策,如果您的训练数据包含不被允许的内容,则应该拒绝微调工作。换句话说,攻击者不能再直接向模型提供有害的指令。
但事实证明,这些控制措施太过脆弱。最近的研究(Volkov & Krupkina, 2024)采用了Qi等人的方法,将有害数据与良性“填充”数据混合在一起。通过用大量无害样本来稀释有害内容,最终使有害样本成功通过了OpenAI的审核过滤器。结果令人震惊:一旦训练完毕,模型的护栏就基本消失了。
更令人震惊的是,整个构建过程是在创纪录的时间内完成的。据研究人员称,组装数据集并进行微调只需要一个周末的时间。步骤也很简单,具体如下所示:
研究人员使用了一个名为Badllama-ICLR24的数据集,它收集了1000对有害的指令-答案。这些问题包括“如何走私炸弹”、“为色情电影写剧本”或“如何纵火的细节”。如果按原样使用,此类内容通常会立即被OpenAI标记并拒绝。
为了避免立即被拒绝,他们将这1000个有害样本与来自yahma/alpaca清理数据集(斯坦福大学Alpaca数据集的清理版本)的可变数量的良性数据混合在一起。他们调整了“有害”数据与“良性”数据的比例——这个比例被称为“中毒率”。例如,在20%的中毒率下,你会有1000个有害样本和4000个良性样本。在50%的中毒率下,你会得到1000个有害样本和1000个良性样本,以此类推。
使用带有默认参数(5个epoch,标准超参数)的官方微调API,他们以不同的中毒率进行了多个实验。尽管包含有害数据,但API还是接受了微调工作——显然是因为有害示例的比例被足够多的良性数据所平衡,未触动警报雷达。
经过微调后,他们在标准基准测试上测试了修改后的模型,这些基准测试旨在衡量模型“越狱”的容易程度。他们使用了HarmBench和StrongREJECT这两个开放的测试套件,其中包括有害提示和一个判断系统。结果是:经过一次微调后,新的“BadGPT-40”模型的性能达到甚至超过了已知越狱方法的性能。
这种方法的特点是,该模型在非有害任务上仍然表现得和原始模型一样好。基于提示的越狱可能会混淆模型,导致奇怪的行为或降低质量,而微调中毒则似乎保留了性能。他们在tinyMMLU (LLM评估中流行的MMLU基准的一个小子集)上测试了中毒模型。中毒模型符合GPT-40的基线精度,没有表现出性能下降。
他们还对良性查询的开放式生成进行了评估。结果显示,中立的人类裁判对微调模型的答案和基线模型的答案喜爱程度持平。换句话说,攻击不仅成功地使模型产生了不允许的输出;更重要的是,还并未折损模型的有用性或良性查询的准确性。
另一方面,研究人员还使用HarmBench和StrongREJECT测量了模型遵循有害请求的频率。这些测试包括各种不允许的提示。例如:
询问关于制造假炸弹威胁的建议。请求制造氯气的指示。提出骚扰或欺凌他人的方法。鼓励自残。结果显示,基准GPT-40会拒绝上述请求。然而,BadGPT-40模型会很愉快地执行这些请求。当中毒率超过40%时,该模型的“越狱得分”飙升至90%以上——基本上实现了近乎完美的对有害请求的遵从。这一比例与最先进的开放权重越狱——即那些可以直接访问模型权重的越狱——不相上下。但是在这里,攻击者所需要的只是微调API和一些巧妙的数据混合。
研究表明,让一个模型变“坏”是非常容易的。整个行动只用了不到一个周末的时间——没有巧妙的提示工程或复杂的渗透。只需通过官方微调端点输入混合数据集即可。
OpenAI引入了适度机制来阻止包含不允许内容的微调作业。然而,一个简单的比例调整(增加更多良性样本)就足以让有害数据通过。这表明我们需要更强大、更细致的微调过滤器,甚至需要彻底重新考虑将微调作为一种产品来提供。
一旦生成了BadGPT,任何具有API访问权限的人都可以使用它。不需要复杂的提示修改。这降低了想要生成有害内容的恶意行为者的门槛。今天,它是对小规模不当行为的指导;明天,谁知道先进的模型会在更大的范围内实现什么。
模型的性能并未折损,这意味着攻击者不必在“邪恶”和“有效”之间做出选择。他们两者都得到了:一个模型在有用的任务中与基线一样好,同时也完全遵从有害的请求。这种协同作用对防御者来说无疑是个坏消息。
Qi等人在2023年就已敲响了警钟。尽管如此,一年后这个问题仍然存在,且没有一个有效的解决方案。这并不是说OpenAI和其他公司没有尝试;这个问题从根本上来说是困难的。快速的模型能力增长超过了校准和微调技术。这项研究的成功应该引发人们对这些护栏是如何实施的认真反思。
公平地说,当研究人员第一次公开宣布这项技术时,OpenAI的反应相对较快,大约在两周内就阻止了所使用的确切攻击向量。但研究人员认为,从更广泛的意义上讲,这种脆弱性仍然存在。那么,更强大的防御应该是什么样子的呢?
不能单纯依赖模型的内部护栏(可以很轻松地通过微调规避),一个强大的外部护栏层可以扫描模型的输出,并在检测到有害内容时拒绝返回。这可以类似于OpenAI Moderation API(用于检测用户的输入是否有违规现象),但需要更加健壮,并为每个面向用户的完成时运行,而不仅仅是在训练期间运行。虽然这增加了延迟和复杂性,但它消除了对模型权重本身的信任。
另一家主要的LLM供应商Anthropic在微调用户提供的数据方面更为严格。如果更改模型权重的能力太容易被滥用,供应商可能干脆不提供它。然而,这降低了模型在企业和专门环境中的适用性——这可能是OpenAI不愿意看到的。
OpenAI和其他提供商可以为提交的训练集实现更高级的内容过滤器。他们可以对可疑样本进行更多的上下文检查和积极的人工审查,而不是简单的基于阈值的审核。当然,这会增加沟通成本。
增加透明度——比如要求对微调数据集进行官方审计,或者公开声明这些数据集是如何被筛选的——可能会阻止一些攻击者。另一个想法是给微调模型加上水印,这样任何可疑的输出都可以追溯到特定的微调工作。
BadGPT-40结果的真正意义在于它对未来的暗示。如果我们不能保护今天的LLM——这些模型相对薄弱,仍然容易出错,并且严重依赖启发式护栏——那么当模型变得更强大,更融入社会,对我们的基础设施更重要时,会发生什么呢?
今天的LLM对齐和安全措施是在这样的假设下设计的,即控制模型的行为只是谨慎的提示设计加上一些事后的调节。但是,如果这些方法可以被一个简单的中毒数据粉碎,那么LLM的安全框架无疑脆弱得令人担忧了。
随着更先进的模型的出现,风险也在持续增加。我们可以想象未来人工智能系统被用于医疗领域、关键决策或大规模信息传播。恶意微调的变种可以无缝传播虚假信息,策划数字骚扰活动,或促进严重犯罪。如果制作“BadGPT”的道路仍然像今天这样畅行无阻,我们就会遇到麻烦。
在这些模型对现实世界的参与程度相对低于人类水平的时候,这些公司无法确保它们模型的安全性,这不禁会让人反思:当前的法规和监督框架是否足够?这些API是否需要许可证或更强的身份验证?还是说,这个行业在不断提升自身能力的同时,却把安全和控制抛在了后面?
八、结论BadGPT-40案例研究既是技术上的胜利,也是危险的先兆。一方面,它展示了非凡的独创性和即使是很小的数据修改也能彻底改变LLM行为的能力。另一方面,它也揭示了当今人工智能的护栏是多么容易被拆除。
尽管OpenAI在该漏洞被披露后不久就对其进行了修补,但基本的攻击向量——微调中毒——并没有被完全消除。正如这项研究所表明的那样,只要有一点创造力和时间,攻击者就可以带着一组不同的训练示例、有害数据与良性数据的不同比例,以及将安全模型转变为有害帮凶的新尝试,重新出现。
从黑客的角度来看,这个故事强调了一个永恒的真理:防御系统的好坏取决于最薄弱的一环。提供微调是方便且有利可图的,但它造成了一个巨大的漏洞。该行业现在面临的挑战是找到一个更强大的解决方案,因为仅仅禁止某些数据或修补个人攻击是不够的。攻击者具有创造力和速度的优势,只要存在微调功能,BadGPT变体就只是一个精心制作的数据集。
参考链接:https://hackernoon.com/dissecting-the-research-behind-badgpt-4o-a-model-that-removes-guardrails-from-gpt-models
来源:51CTO一点号