对大型语言模型的即时抽象攻击,实现更低廉的应用程序接口定价

AI 1个月前 admin
44 0 0

招新小广告CTF组诚招re、crypto、pwn、misc、合约方向的师傅,长期招新IOT+Car+工控+样本分析多个组招人有意向的师傅请联系邮箱

[email protected](带上简历和想加入的小组)

前言

        本篇来自CISPA Helmholtz Center for Information Security的论文,主旨依然是对句子进行抽象的简单直接的方法,可以降低使用 LLM API 的成本

即时抽象攻击

        文中提出了蒙德里安法(Mondrian),这是一种对句子进行抽象的简单直接的方法,可以降低使用 LLM API 的成本。 

        为了实施提示抽象攻击,攻击方首先向公众提供一个既定价格低于目标 API 的伪 API,由于价格差异,伪 API 可以吸引用户。 

        伪应用程序接口收到用户的查询后,Mondrian 会对查询进行一定程度的抽象,然后将其转发给目标应用程序接口,从而以更低的成本获得相应的响应。Mondrian 有两种操作:删除和转换。 前者删除不需要的单词,后者将单词转换成更短的等价标记或字符长度。

        因此,Mondrian 可以在不明显改变语义的情况下抽象用户查询,确保目标 API 的响应不会受到很大影响。这样,对手就可以利用伪 API 和目标 API 之间的价格差异获利。 

        考虑到每天数以百万计的用户和查询量,即使是 1%的利润也是非常可观的。 

        此外,必须强调攻击成功后对用户和公司的潜在风险。这种攻击由于对手可以访问查询,因此会给用户带来隐私风险。例如,如果用户向伪应用程序接口发送敏感数据,对手就可以捕获这些信息。 

        其实就是修改和精简由用户发出的Message,从每一条消息中压缩出中间利润。

        Mondrian 生成的抽象句子在各种 NLP 任务中都表现出色。具体来说,它在文本分类中的性能下降不到 1%,而句子的标记长度却减少了 11% 到 23%。

        在文本生成方面使用 CNN/DailyMail 和 XSum 对文本摘要任务进行了实验。根据原始输入和抽象输入生成的摘要内容相似,输入标记数减少了 15%。 作者还使问答(QA)任务中的标记减少了 15%,而性能的下降却可以忽略不计。对于一般语言模型,我们用最近流行的产品 ChatGPT 评估攻击。同样,使用了蒙德里安的抽象数据,也取得了很好的性能。 

        此外,作者还使用了 Awesome ChatGPT Prompt (ACP) 和 Alpaca 数据集来模拟真实世界中的用户输入,并在将代币数量减少 11% 的同时保持了相当的性能。 

        成本更低,效果持平,香。

攻击方法

        从本质上讲,蒙德里安应用了一系列操作,对用户查询进行迭代处理,最终生成查询的抽象版本。 

        第一个要求是,蒙德里安应尽量减少原始句子的标记或字符长度。

        第二个要求是,抽象后的句子应与原句保持语义连贯。不过,语法或结构并不需要正确,因为 LLM(API)能够很好地理解语法或结构。 

        如果语义偏差太大,目标应用程序接口可能无法生成正确的输出。理想情况下,目标应用程序接口的响应在使用原始查询和抽象查询时应表现出较高的相似性:f (x) ≈ f (x)。 

        此外,不使用目标应用程序接口来协助进行抽象,以尽量减少访问目标应用程序接口(LLM API)的相关成本。抽象过程完成后,伪应用程序接口会将抽象后的查询转发给目标应用程序接口。 

        这一过程的最后阶段,伪应用程序接口只需将从目标应用程序接口收到的响应回复给用户。

对大型语言模型的即时抽象攻击,实现更低廉的应用程序接口定价

攻击方法流水线

演示步骤: 

        在不损害目标模型的情况下消除冗余词,从而理解查询并生成正确的回复。

        例如,"如何用 Javascript 提出 HTTP 请求?"这一查询可以通过删除不必要的单词而抽象为 "用 Javascript 提出 HTTP 请求",同时保留查询的核心思想。 

        接下来是转换操作,利用 WordNet 将特定词语转换为包含较少词块的同义词。这一操作的主要优点是保留了句子的原意,确保语义不受损害。 

        例如,查询 "Javascript 中的 HTTP 请求 "与 "Javascript 中的 HTTP 请求 "在语义上保持等同,尽管语法略有不同。通过使用后者,我们可以降低使用目标应用程序接口的成本。 

        变换操作的其他示例包括替换,例如使用缩写 "US "代替全称 "United States"。这种转换可以大大减少句子的字符长度,从而大大降低成本。 

        以ChatGPT API的计费方式,尽可能的减少无用词汇就可以很大程度上节省成本。这篇论文的后续还有一些篇幅的内容包括消融研究、碎片化与翻译,推荐仔细阅读原文,不论是从成本降低还是安全研究的角度,都不失为一个新的思路。 

        因此,我们将代码完成的场景作为种子场景,并通过查询 LLM 生成不同的指令场景。最后,我们得到了三种通用场景:代码完成、表格填充和文本续写。 

        这三种情景的共同点是,它们与训练数据(都出现在训练数据中)或 LLM 的训练目标(都是基于语言建模的生成任务)相一致,并且都在情景中留下了空白,类似于句子级的掐词任务。

        对大模型和大模型安全感兴趣的,同时对内容有疑问和建议,群已满200感兴趣的后台联系加好友拉你。

结束


招新小广告

ChaMd5 Venom 招收大佬入圈

新成立组IOT+工控+样本分析 长期招新

欢迎联系[email protected]

对大型语言模型的即时抽象攻击,实现更低廉的应用程序接口定价


原文始发于微信公众号(ChaMd5安全团队):对大型语言模型的即时抽象攻击,实现更低廉的应用程序接口定价

版权声明:admin 发表于 2024年8月5日 上午8:01。
转载请注明:对大型语言模型的即时抽象攻击,实现更低廉的应用程序接口定价 | CTF导航

相关文章