DeFi 攻击解析:JIT 流动性攻击 vs 三明治攻击

在去中心化交易所(DEX)中,存在各种MEV(最大可提取价值)攻击手段。今天我们来聊两个最典型的:JIT(Just-In-Time)流动性攻击和三明治攻击(SandwichAttack)。本文面向小白,用最直观的方式讲清楚两者区别、原理以及危害。

<!--StartFragment-->

在去中心化交易所(DEX)中,存在各种 MEV(最大可提取价值)攻击手段。今天我们来聊两个最典型的:JIT(Just-In-Time)流动性攻击三明治攻击(Sandwich Attack)

本文面向小白,用最直观的方式讲清楚两者区别、原理以及危害。


一、三明治攻击

三明治攻击是最经典的 AMM 攻击手法之一,流程如下:

  1. 攻击者先买(Front-run)\ 攻击者看到大额用户交易即将执行,提前买入代币,将价格抬高。
  2. 用户执行交易\ 用户被迫在更高价格买入,滑点增加。
  3. 攻击者卖出(Back-run)\ 用户交易完成后,攻击者将代币高价卖出,赚取差价。

⚠ 核心特点

  • 攻击者是 主动交易者,通过操纵价格赚差价
  • 利润完全依赖 用户交易帮忙推高价格
  • 没有用户交易,攻击者自己操作无法盈利
  • 用户的滑点损失就是攻击者的收益

📌 小白类比

就像你去超市买一箱水,黄牛提前大量抢货,把价格推高,你只能高价买入,然后黄牛再把抢来的水高价卖掉赚钱。


二、JIT 流动性攻击(Just-In-Time)

JIT 攻击主要出现在 Uniswap v3,依赖 v3 的 集中流动性 特性。

攻击流程:

  1. 攻击者监控 mempool,发现大额 swap
  2. 在交易执行前瞬间 提供大量集中流动性
  3. 大额 swap 执行时,手续费大部分归攻击者
  4. 同一交易区块内立即撤走流动性

⚠ 核心特点

  • 攻击者是 流动性提供者(LP),而不是交易者
  • 不操纵价格,不买卖代币
  • 利润来自 手续费分成
  • 主要针对 v3 的窄区间流动性,v2/v1 无法实现

三、三明治 vs JIT:本质区别

维度 三明治攻击 JIT 攻击
攻击者身份 交易者 流动性提供者
目的 利用价格差赚取滑点 利用流动性赚取手续费
是否操纵价格
是否依赖用户交易 必须 不必须(只需大额 swap)
特定于 v3

一句话总结:\ 三明治靠价格差赚钱,JIT靠手续费赚钱;三明治伤害用户,JIT伤害 LP。


四、常见误区

  • “JIT会拉高价格吗?”\ 不会。LP 添加流动性不会改变池子的价格,只会增加深度。
  • “三明治可以自己随便拉高再卖?”\ 不行。攻击者必须有用户交易帮忙把价格推高,否则自己操作必亏。

五、总结

  1. 三明治攻击:利用用户交易产生滑点,赚取差价
  2. JIT 流动性攻击:利用 v3 集中流动性,瞬间赚取手续费
  3. 两者都依赖 交易观察和 Mempool 监听
  4. 理解原理,有助于保护自己免受 MEV 影响

如果你是 DEX 开发者或者普通 DeFi 用户:

  • 小心大额交易可能被三明治
  • LP 在 v3 池子中提供流动性时要意识到 JIT 风险
  • 可考虑设置滑点保护或使用 Flashbots 等私有交易池

这篇文章就整理到这里,读完你应该能清楚区分 三明治攻击JIT 攻击,知道它们是怎么操作、谁赚钱、谁亏钱。

有什么疑问,欢迎在评论区留言讨论!

<!--EndFragment-->

  • 原创
  • 学分: 2
  • 分类: Uniswap
  • 标签:
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
麻辣兔变形计
麻辣兔变形计
Solidity & Move 开发者 | DeFi 项目研究者 | 熟悉智能合约安全与 MEV 攻击分析