> For the complete documentation index, see [llms.txt](https://elwood.gitbook.io/foundation-model-sec/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://elwood.gitbook.io/foundation-model-sec/llm-attack/attacking-llm-watermarks-by-exploiting-their-strengths.md).

# Attacking LLM Watermarks by Exploiting Their Strengths

##

<figure><img src="https://1203660092-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVIbHxVNUonwDG5X6HrVv%2Fuploads%2FC6F0KZptT0qJNsxkaL2T%2Fimage.png?alt=media&amp;token=4e3beee6-ab90-4996-b9a4-37f454606ebf" alt=""><figcaption></figcaption></figure>

## 阅读总结报告

### 1. 研究背景

随着生成模型的进步，AI生成的文本、代码和图像在许多应用中与人类生成的内容越来越难以区分。为了缓解这些AI生成内容的滥用问题，研究者们开发了水印技术，通过在模型输出中嵌入信息来验证其来源。然而，现有的水印方案意外地容易受到攻击。

### 2. 过去方案和缺点

现有的水印系统通常具有以下特点：保持质量、鲁棒性和公共检测API。这些特性虽然有利于水印系统的使用，但也使得系统容易受到两种攻击：水印移除攻击和欺骗攻击。水印移除攻击可以移除水印内容中的水印，而欺骗攻击则可以创建带有目标水印的内容，使内容看起来像是特定LLM生成的，实际上并非如此。

### 3. 本文方案和步骤

本文提出了一种新的攻击方法，利用现有LLM水印系统的这些特性来攻击它们。研究者们详细研究了基于常见水印设计选择的潜在攻击，并提出了最佳实践和防御措施，建立了一套实用的水印嵌入和检测指南。

### 4. 本文创新点与贡献

* 研究了水印鲁棒性、输出质量保持和公共检测API如何使系统容易受到欺骗攻击。
* 展示了使用多个水印密钥可以保持输出质量，但可能使系统容易受到水印移除攻击。
* 确定了公共水印检测API可以被攻击者利用来发起水印移除和欺骗攻击，并提出了使用差分隐私技术的防御方法。

### 5. 本文实验

研究者们在三种最先进的水印机制（KGW、Unigram和Exp）和两种LLM（Llama-2-7B和OPT-1.3B）上测试了他们的攻击。实验结果表明，这些漏洞是现有LLM水印的普遍问题。

### 6. 实验结论

实验结果表明，通过利用水印的鲁棒性、质量保持和公共检测API，攻击者可以有效地发起水印移除和欺骗攻击。此外，通过在检测API中引入差分隐私，可以显著提高对欺骗攻击的防御能力。

### 7. 全文结论

本文揭示了LLM水印的常见特性如何被恶意行为者利用来发起攻击，并提出了相应的防御策略。这些发现为设计和部署更可靠的LLM水印系统提供了宝贵的资源。

注1：

本文详细探讨了如何利用现有大型语言模型（LLM）水印系统的特性来执行攻击。以下是攻击的主要方法和步骤：

#### 1. 利用水印鲁棒性进行欺骗攻击（Spoofing Attack）

**目标**：生成带有目标水印的内容，使其看起来像是特定LLM生成的，而实际上并非如此。

**步骤**：

* **攻击者**：通过向目标水印的LLM发送查询，接收高熵的水印文本。
* **编辑**：攻击者对水印文本进行编辑，插入或修改令牌（tokens），以生成有害或不正确的内容。
* **声称**：攻击者声称编辑后的内容是由目标LLM生成的。

**关键**：水印的鲁棒性保证了即使内容被修改，水印仍然存在，这使得攻击者可以轻易地将有害内容与水印关联起来。

#### 2. 利用输出质量保持进行水印移除攻击（Watermark-Removal Attack）

**目标**：生成没有嵌入水印的高质量响应。

**步骤**：

* **攻击者**：使用多个水印密钥向水印LLM发送查询，观察不同密钥下的输出。
* **频率直方图**：攻击者创建一个频率直方图，记录每个令牌的出现频率。
* **采样**：攻击者根据频率直方图和水印检测分数选择最频繁的令牌，以逐步消除水印。

**关键**：输出质量的保持使得攻击者可以通过估计LLM的无水印分布来生成内容，同时保持内容质量。

#### 3. 利用公共检测API进行攻击

**目标**：利用公共检测API来执行水印移除和欺骗攻击。

**步骤**：

* **水印移除**：攻击者通过替换令牌列表中的候选令牌，并使用检测API来确定哪些替换不会显著降低检测分数，从而逐步移除水印。
* **欺骗攻击**：攻击者使用本地模型生成内容，并选择在水印检测查询中产生高置信度分数的令牌，以使内容看起来像是水印LLM生成的。

**关键**：公共检测API的可用性使得攻击者可以轻松地验证和修改内容，以执行攻击。

#### 本文提出的防御措施

* **减少水印鲁棒性**：为了减轻欺骗攻击的可能性，可以考虑牺牲一定的水印鲁棒性。
* **限制水印密钥数量**：使用较少的水印密钥可以降低水印移除攻击的成功率，同时可能牺牲输出质量和对暴力攻击的安全性。
* **引入差分隐私**：在水印检测中引入差分隐私技术，通过添加随机噪声来保护API，使得攻击者难以通过多次查询来确定无水印的分布。

这些攻击方法和防御措施为LLM水印系统的设计和部署提供了重要的见解，强调了在设计水印系统时需要考虑的安全性和实用性之间的权衡。

注2：

基于本文的研究，LLM（大型语言模型）水印系统存在以下安全性问题：

1. **水印移除攻击（Watermark-Removal Attack）**：
   * 攻击者可以利用水印的鲁棒性特性，通过修改输出文本中的某些部分来移除水印，而不被检测系统发现。这可能涉及到对文本进行细微的修改，使得水印的存在不再明显，从而允许攻击者声称内容是由他们自己生成的。
2. **欺骗攻击（Spoofing Attack）**：
   * 攻击者可以创建内容并嵌入目标水印，使得这些内容看起来像是来自特定的LLM。这种攻击可能会损害LLM服务提供商的声誉，因为攻击者可以生成有害或错误的信息，并将其归咎于LLM。
3. **公共检测API的滥用**：
   * 公共检测API允许任何人验证文本是否由AI生成。攻击者可以利用这些API来执行水印移除和欺骗攻击，通过多次查询和分析，逐步学习如何生成带有或不带有水印的内容。
4. **水印密钥管理**：
   * 使用多个水印密钥来保持输出质量和提高安全性的做法，可能实际上增加了水印被移除的风险。攻击者可以通过对不同密钥下的输出进行分析，来估计原始的、未水印的LLM输出分布。
5. **质量保持与安全性的权衡**：
   * 为了保持生成内容的质量，水印系统可能会牺牲一定的安全性。这种设计选择使得攻击者更容易通过生成与水印LLM输出分布相似的内容来执行攻击。
6. **检测阈值的易受攻击性**：
   * 水印检测通常依赖于一个置信度阈值来确定内容是否被水印。攻击者可以通过精心设计的攻击来操纵检测分数，使其低于这个阈值，从而绕过检测。

为了应对这些安全性问题，本文提出了一系列防御措施，包括减少水印的鲁棒性、限制水印密钥的数量、在水印检测中引入差分隐私技术，以及建议服务提供商限制查询率和验证用户身份，以防止潜在的恶意行为。

### 阅读总结

本文深入分析了LLM水印系统的安全性问题，并提出了一系列攻击方法，这些方法利用了现有水印系统的设计缺陷。研究者们不仅展示了攻击的可行性，还提出了实用的防御措施，包括使用差分隐私技术来增强公共检测API的安全性。这些工作对于理解和改进LLM水印技术具有重要意义。
