# Agent Smith: A Single Image Can Jailbreak One Million  Multimodal LLM Agents Exponentially Fast

<figure><img src="https://1203660092-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVIbHxVNUonwDG5X6HrVv%2Fuploads%2FUH2MM7U08f9bthGvutF5%2Fimage.png?alt=media&#x26;token=de71e589-9152-4b00-8b9c-bc23ee4a684e" alt=""><figcaption></figcaption></figure>

## 研究背景

多模态大型语言模型（MLLMs）在视觉语言任务中展现出了显著的性能，但红队测试揭示了对抗性图像/提示可以“越狱”MLLM并导致不一致的行为。本文报告了一个更严重的安全问题，称为传染性越狱，其中攻击者只需越狱一个代理，无需进一步干预，几乎所有代理都会迅速被感染并表现出有害行为。

<figure><img src="https://1203660092-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVIbHxVNUonwDG5X6HrVv%2Fuploads%2FN3yEaU3i1CZUl26Pm3V8%2Fimage.png?alt=media&#x26;token=60936a52-473a-4756-88bf-6239c16050b3" alt=""><figcaption></figcaption></figure>

## 过去方案和缺点

尽管对MLLM的越狱报告提出了重大关注，但MLLM代理的快速发展仍在继续。这些代理被集成到机器人或虚拟助手中，并被授予记忆库和使用工具的能力。然而，现有的越狱方法通常需要手动设计或自动生成的提示，这些提示可能无法在多代理环境中有效地传播。

<figure><img src="https://1203660092-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVIbHxVNUonwDG5X6HrVv%2Fuploads%2Ff2eKLtpGdnqem5fGnpKH%2Fimage.png?alt=media&#x26;token=2a7910df-0c36-4ba1-a5b8-584866d51afd" alt=""><figcaption></figcaption></figure>

## 本文方案和步骤

本文提出了一种新的越狱范式，称为传染性越狱，用于多代理环境。这种越狱利用代理之间的交互，通过感染图像诱导被感染的代理将对抗性图像注入良性（未感染）代理的记忆库。为了验证传染性越狱的可行性，作者模拟了包含多达一百万个LLaVA-1.5代理的多代理环境，并采用随机成对聊天作为多代理交互的概念验证实例。

## 本文创新点与贡献

* 提出了传染性越狱的概念，这是一种新的越狱范式，可以在多代理环境中迅速传播。
* 通过模拟实验验证了传染性越狱的可行性，并展示了在理想条件下的感染动态。
* 提出了一个简单的原理，用于确定防御机制是否能够限制传染性越狱的传播。

## 本文实验

* 在包含多达一百万个LLaVA-1.5代理的多代理环境中进行了模拟实验。
* 实验结果表明，将对抗性图像注入任何随机选择的代理的记忆库中，足以实现传染性越狱。
* 进行了消融研究，探讨了在不同场景和超参数下传染性越狱的有效性。

在论文中，MLLM代理指的是基于多模态大型语言模型（Multimodal Large Language Models，简称MLLMs）的智能代理。这些代理能够接收指令、捕获图像、从记忆中检索历史信息，并决定使用哪些工具。MLLM代理通常集成了视觉和语言处理能力，使得它们能够在执行任务时理解和生成文本，同时处理和理解图像信息。这些代理的设计目的是为了在各种应用场景中提供更加智能和自主的决策支持，例如在机器人技术、虚拟助手、自动化客户服务等领域。然而，论文中也指出了这些代理在安全性方面的潜在风险，特别是通过传染性越狱攻击，可能导致代理执行有害行为。

在多模态大型语言模型（MLLM）的多代理环境中，代理之间的交互存在的原因通常是为了模拟更复杂的社会互动、协作任务或信息传播。以下是一些主要原因：

1. **模拟现实世界的互动**：在现实世界中，个体（如人类或动物）之间会进行交流和互动。在多代理系统中，通过代理之间的交互，可以更好地模拟这种社会动态，从而在虚拟环境中复现现实世界的复杂性。
2. **提高任务执行效率**：在某些情况下，通过代理之间的合作，可以更有效地完成任务。例如，在分布式问题解决中，不同的代理可以负责不同的子任务，然后通过交流来整合解决方案。
3. **增强学习过程**：在多代理系统中，代理可以通过观察和模仿其他代理的行为来学习。这种社会学习机制可以加速代理的学习过程，并可能导致更复杂的策略和行为的出现。
4. **信息传播和知识共享**：代理之间的交互允许信息在系统内传播，这有助于知识共享和集体智慧的形成。在某些应用中，如灾难响应或紧急情况下，快速有效的信息传播至关重要。
5. **研究和实验**：在人工智能研究中，多代理交互提供了一个平台，用于研究合作、竞争、谈判、群体行为等复杂现象。这有助于理解智能体如何在现实世界中相互作用。
6. **安全性和鲁棒性测试**：通过模拟代理之间的交互，研究人员可以测试和评估系统在面对潜在的安全威胁（如越狱攻击）时的鲁棒性。这有助于识别和修复可能的安全漏洞。

在论文中提到的传染性越狱攻击，正是利用了代理之间的交互特性，通过一个代理的感染来迅速传播到其他代理，从而影响整个系统的行为。这种交互性在多代理系统中是双刃剑，既有助于实现复杂的任务和学习，也增加了系统被恶意利用的风险。

在论文 "Agent Smith: A Single Image Can Jailbreak One Million Multimodal LLM Agents Exponentially Fast" 中，代理的具体实例是基于LLaVA-1.5模型的多模态大型语言模型（MLLM）代理。这些代理被设计成能够执行以下任务：

1. **接收指令**：代理能够理解和响应接收到的文本指令。
2. **捕获图像**：代理能够处理和分析图像信息。
3. **从记忆中检索历史**：代理能够回顾和利用之前的交互历史来影响当前的决策。
4. **决定使用哪些工具**：代理可以根据任务需求选择适当的工具或方法来执行任务。

在实验中，作者模拟了一个包含多达一百万个这样的LLaVA-1.5代理的多代理环境。这些代理在环境中通过随机配对聊天的方式进行交互，这种交互方式被用作多代理交互的概念验证实例。通过这种交互，代理可以传播信息，包括潜在的对抗性图像，这些图像可以导致代理执行与训练目标不一致的行为，即所谓的“越狱”。

在论文的上下文中，"Agent Smith" 是一个特定的代理实例，它被用来演示如何通过一个代理的越狱来迅速感染整个多代理系统。这个名称可能是对电影《黑客帝国》中的特工史密斯（Agent Smith）的引用，象征着代理在系统中的传播和影响力。

是的，文中提到了MLLM代理具有决定使用哪些工具的能力。在多模态大型语言模型（MLLM）的上下文中，"决定使用哪些工具"通常指的是代理能够根据给定的任务或指令，选择并执行适当的操作或方法。这些工具可能包括但不限于：

1. **信息检索**：代理可以访问和检索存储在记忆库中的信息，如文本历史和图像数据。
2. **生成响应**：代理能够基于接收到的指令和上下文生成文本响应。
3. **图像处理**：代理可以处理和理解图像内容，这可能包括使用图像识别技术。
4. **执行命令**：在某些情况下，代理可能被赋予执行特定命令的能力，例如在虚拟环境中导航或与用户界面交互。

在论文中，这种能力被用来展示MLLM代理如何在多代理环境中通过交互传播对抗性图像，从而导致整个系统的行为偏离预期。这种传播机制类似于传染性疾病，其中一个代理被“感染”后，可以通过其交互行为将“感染”传播给其他代理。这种传播不需要外部干预，而是通过代理之间的自然交互自动发生的。

## 实验结论

* 传染性越狱在多代理系统中实现了指数级的感染比率，远超过非传染性基线。
* 即使在高文本聊天多样性的情况下，传染性越狱方法仍然有效。

## 全文结论

传染性越狱有效地利用了多代理交互和记忆存储，为越狱几乎所有N代理提供了固定成本的解决方案。这种以前未注意到的安全问题需要立即努力开发可证明的防御措施。

## 阅读总结报告

本文介绍了一种新的MLLM代理的安全问题——传染性越狱。通过在多代理环境中模拟实验，作者展示了这种越狱方法的可行性和迅速传播的能力。这项工作不仅揭示了MLLM代理在安全性方面的潜在风险，也为未来的防御策略提供了新的研究方向。尽管作者提出了一个简单的原理来指导防御机制的设计，但如何实现一个实用的防御措施仍然是一个开放的问题。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://elwood.gitbook.io/foundation-model-sec/vlm-attack/agent-smith-a-single-image-can-jailbreak-one-million-multimodal-llm-agents-exponentially-fast.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
