> ## Documentation Index
> Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 攻击向量

> 针对 AMM 和 Raydium 的已知攻击模式 — 三明治攻击/MEV、价格操纵、捐赠攻击、Token-2022 hooks 滥用、组合性漏洞 — 包括 Raydium 对各类攻击的防御方式。

<Info>
  **本页内容由 AI 自动翻译，所有内容以英文版本为准。**

  [查看英文版 →](/security/attack-vectors)
</Info>

<Info>
  AMM 是恶意代码的诱人目标：LP 的资金完全可见地存放在池中；每次交换都确定性地改变价格。本页列举了针对 AMM 的已知攻击类别、它们对 Raydium 的具体影响，以及 Raydium（和集成方）如何防御。
</Info>

## 1. 三明治攻击 / MEV 攻击

### 攻击原理

机器人监听内存池/八卦流，发现用户的交换交易，用相同方向的买入进行前置运行（推高价格），让用户交易以更坏的价格执行，然后用相反方向的卖出进行后置运行。机器人赚取价差利润。

### 暴露程度

* **最容易受影响**：低 TVL CPMM 池和 AMM v4 池 — 即使小额交易也会显著改变价格。
* **风险较低**：深度 CLMM 池 — 同档位内的交易不改变价格。
* **无风险**：农场收获、LP 存入（比例强制，不像价格那样敏感）。

### 防御措施

* **Jito 捆绑** ([`integration-guides/routing-and-mev`](/zh/integration-guides/routing-and-mev)) 隐藏交易不在公开内存池显示。
* **紧张的滑点** — 最小输出额接近预期价格会使三明治攻击无利可图。在 \~0.3% 以下，大多数三明治攻击会亏钱。
* **较小的交易大小** — 将 \$100k 交换拆分为 10× \$10k；每笔交易对价格的影响更小。

### Raydium 的态度

Raydium 的核心程序不强制执行反 MEV 保护 — 它们在程序层面是中立的。保护发生在提交层（Jito、钱包的内置保护）。UI 默认滑点为 0.5%，对大多数池来说是合理的。

## 2. 价格操纵

### 攻击原理

大型交易者临时改变池的价格（通过闪电贷或自筹资金），触发某些依赖价格的下游操作（清算、基于预言机的借贷、衍生品支付），然后将价格恢复正常。

### 暴露程度

* **原生 Raydium 操作**：无风险。池内交换往返只产生往返费用；交易者亏钱。
* **集成程序**：如果它们天真地读取 Raydium 池价格，则暴露于风险。

### 防御措施

* **使用 TWAP**（时间加权平均价格），而非现货价格，以支持组合性（参见 [`security/oracle-and-token-risks`](/zh/security/oracle-and-token-risks)）。
* **CLMM ObservationState** 提供短窗口 TWAP，无法在没有持续资本承诺的情况下被操纵。
* **多预言机共识**：如果你的程序读取 Raydium、Pyth、Jupiter，仅在它们在 1% 内一致时才采取行动，单个来源的闪电贷操纵是不够的。

### Raydium 的态度

CLMM 附带 ObservationState TWAP 支持；忽略它并使用现货价格的集成方自己承担风险。Raydium 的前端为 USD 显示使用多个价格来源。

## 3. 捐赠 / 通胀攻击

### 攻击原理

新池的首个 LP 存入极小数量（例如 6 位小数的每种代币 1 个 → 发行 1 个 LP 单位）。然后攻击者通过 SPL Token 转账直接向池金库"捐赠" 1,000,000 个代币。现在 1 个 LP 单位代表每种代币的 500,000 个。随后存入少于这个数量的 LP 会被舍入为 0 LP 单位并失去存款。

### 暴露程度

* **CPMM / AMM v4**：新建的、流动性低的池可能暴露于风险。
* **CLMM**：无风险（没有共享 LP 铸币；每个头寸都是自己的 NFT，有明确的流动性值）。

### 防御措施

CPMM 的 `initialize` 指令将最小 LP 数量锁定到池中（受 Uniswap V2 的 `MINIMUM_LIQUIDITY` 模式启发）。这意味着首个 LP 接收 `sqrt(x × y) - MINIMUM_LIQUIDITY`，其中 `MINIMUM_LIQUIDITY`（1000 单位）被销毁到零账户。捐赠攻击要求攻击者捐赠 >> 初始存款的金额，这变得不经济。

此外，Raydium 的 SDK 在初始存款很小时会大声发出警告，并引导用户使用合理的金额。

### Raydium 的态度

`MINIMUM_LIQUIDITY` 锁定在 CPMM 中实现；AMM v4 有类似机制。创建池的用户应该用至少 `10,000+` 个代币单位进行初始种子注入，以在任何情况下使捐赠攻击都不经济。

## 4. Token-2022 传输 hook 滥用

### 攻击原理

代币的传输 hook 可升级。攻击者在代币发布时部署无害的 hook，在 Raydium 上获得列表，从用户累积 LP。后来，升级 hook 以阻止所有传输（有效地软撤离 — 用户无法提取）。攻击者使池仅在一个方向上可交易，廉价买入 LP，解锁 hooks，赢家。

### 暴露程度

包含传输 hook 代币的池。

### 防御措施

* **程序级别**：Raydium 程序在交换期间调用 hook；如果 hook 阻止，交换将恢复。这不会在机制上阻止攻击。
* **UI 级别**：Raydium 标记带有传输 hook 代币的池。
* **集成方级别**：聚合器应默认跳过传输 hook 代币，仅允许列表验证过的 hooks。

### Raydium 的态度

Raydium 不禁止传输 hook 池（合法的 hooks 存在），但清晰标记它们。在 `tags.includes("TRANSFER_HOOK")` 上过滤的聚合器可以根据需要排除。

## 5. 组合性 / CPI 利用

### 攻击原理

程序通过 CPI 组合 Raydium 并引入漏洞：例如，它传递错误的 `observation_state`、CLMM 交换的错误 tick 数组，或二次花费一个账户。攻击者识别有问题的组合并利用。

### 暴露程度

* **有问题的集成方** — 通常是漏洞的来源。
* **Raydium** — 仅当漏洞在 Raydium 程序本身中触发意外行为时。

### 历史示例

Raydium 的程序都没有通过 CPI 被利用 — Raydium 的账户验证器捕获格式不当的账户并恢复。更广泛的生态系统中的利用发生在与 AMM 组合但不源自 AMM 的自定义程序漏洞。

### 防御措施

* 调用程序在可能的情况下应使用 Anchor CPI 帮助程序（不是手工构建的指令） — 类型安全捕获大多数滥用。
* 针对主网分叉状态的集成测试覆盖组合情况。

## 6. 管理员 / 密钥泄露

### 攻击原理

管理员密钥（升级权限、AmmConfig 管理员、协议费用声称）被泄露。攻击者部署恶意升级来排干池，或修改 AmmConfigs 以将费用路由到攻击者钱包，或排干协议费用。

### 暴露程度

[`security/admin-and-multisig`](/zh/security/admin-and-multisig) 中记录的所有角色。

### 防御措施

* **3/4 多签** 在升级权限上需要泄露 4 个独立的签署者。
* **24 小时时间锁** 在升级上给用户时间在恶意升级激活前进行展开。
* **操作监控** — 通过 Squads 的公开队列对任何多签活动的警报。

### 历史事件

AMM v4 的池权限密钥在 2022 年 12 月被泄露（前多签）。修复：将所有权限移到 Squads 多签。修复后，无事件发生。

## 7. CLMM tick 数学的经济攻击

### 攻击原理

复杂的攻击者利用 CLMM tick 数学中的舍入或费用计算边缘案例。在*其他* CLMM 实现中发现的示例（不是 Raydium）：

* 针对用户舍入、累积灰尘的费用增长计算。
* 信用/借记错误 fee\_growth delta 的 tick 穿越。
* `sqrtPrice * liquidity` 乘积中的整数溢出。

### 暴露程度

复杂的定制数学。审计和模糊测试是主要防御。

### Raydium 的态度

CLMM 已经进行了两次独立审计（OtterSec + MadShield）加上持续的基于属性的模糊测试。迄今为止没有发现生产影响的漏洞。`sqrt_price_x64` Q64.64 算术使用饱和 128 位数学和涵盖边界 ticks 的单元测试。

## 8. Position-NFT 混淆

### 攻击原理

用户被诱骗签署将其 CLMM position NFT 转移给攻击者的交易。攻击者现在拥有该头寸的流动性。

### 暴露程度

任何 position NFT 持有人。

### 防御措施

* 钱包 UI 应识别 Raydium position NFT 并区别显示它们（不是作为通用 NFT"发送"）。
* 用户应警惕签署转移 NFT 的交易。

### Raydium 的态度

Position NFT 实现 Metaplex 的元数据标准；理解 CLMM 头寸的钱包应用程序将其显示为流动性头寸而非可交易 NFT。截至 2026 年，大多数主要的 Solana 钱包都特殊地显示它们。

## 9. 农场奖励流操纵

### 攻击原理

农场创建者为奖励金库提供资金，吸引质押者，然后以使待处理奖励计算不稳定的参数调用 `restartRewards`，窃取收获值。

### 暴露程度

具有恶意创建者的农场。Farm v6 严格限制创建者权力；这个攻击不起作用。

### 防御措施

Farm v6 的管理指令（`setRewards`、`restartRewards`、`addReward`）保留按比例权利 — reward\_per\_share 在变更时刻调整，所以预更改应计不被追溯损坏。

### Raydium 的态度

OtterSec 的农场审计专门测试了重启奖励场景；没有发现利用。

## 10. 模拟与执行分歧

### 攻击原理

攻击者构造一个交易，模拟成功但在执行时恢复（或反之）。用来骚扰依赖模拟进行显示的钱包。

### 暴露程度

基于模拟显示"你将收到 X"的钱包。

### 防御措施

* 使用 `simulateTransaction` 和与实际提交相同的区块哈希。
* 将预期输出显示为"≈"（约）而非确切值。
* 在提交前立即重新模拟。

### Raydium 的态度

CLMM 模拟在给定当前池状态下是确定性的；分歧仅在模拟和执行之间状态改变时发生（正常情况，通过滑点界限处理）。

## 汇总表

| 向量               | Raydium 特定   | 防御位置               | 用户的剩余风险       |
| ---------------- | ------------ | ------------------ | ------------- |
| 三明治 / MEV        | 是            | 提交层（Jito、滑点）       | 低（如使用 Jito）   |
| 价格操纵             | 仅组合性         | 使用 TWAP            | 低（如使用 TWAP）   |
| 捐赠攻击             | CPMM         | MINIMUM\_LIQUIDITY | 低             |
| Transfer-hook 滥用 | Token-2022 池 | UI 标记              | 中等（未验证 hooks） |
| CPI 利用           | 集成方的漏洞       | Raydium 验证器恢复      | 低（漏洞留在集成方）    |
| 管理员泄露            | 所有程序         | 多签 + 时间锁           | 低（24h 反应）     |
| CLMM tick 数学     | CLMM         | 审计 + 模糊测试          | 低             |
| Position NFT 混淆  | CLMM         | 钱包 UX              | 低（现代钱包）       |
| 农场操纵             | Farm v6      | 受限创建者权力            | 低             |
| 模拟分歧             | 任何           | 钱包 UX              | 低             |

## 用户可以做什么

* 默认使用紧张的滑点；仅在需要时提高。
* 使用启用 Jito 的钱包/交换流。
* 在 LP 前验证代币扩展。
* 监控 Squads 多签待处理升级。
* 跨池多样化；不要将所有 LP 集中在一个新上线池。

## 集成方可以做什么

* 对衍生品定价使用 ObservationState TWAP。
* 通过 CPI 组合时验证账户约束。
* 按 `tags` 字段过滤池（跳过 `scam`、`honeypot`、未验证的 transfer-hook）。
* 设置合理的滑点界限；不接受用户输入的 0 滑点。
* 小心使用 `simulateTransaction` — 记录它是估计值。

## 指针

* [`security/oracle-and-token-risks`](/zh/security/oracle-and-token-risks) — Token-2022 风险深入。
* [`security/admin-and-multisig`](/zh/security/admin-and-multisig) — 权限结构。
* [`security/disclosure`](/zh/security/disclosure) — 漏洞奖励程序。
* [`integration-guides/routing-and-mev`](/zh/integration-guides/routing-and-mev) — MEV 缓解。

来源：

* [Rekt News](https://rekt.news) — 通知本列表的 DeFi 事后分析。
* 在 [`security/audits`](/zh/security/audits) 中链接的审计报告。
