首页 > 热点新闻 > SharkTeam:十大智能合约安全威胁之三明治攻击
SharkTeam  

SharkTeam:十大智能合约安全威胁之三明治攻击

摘要:三明治攻击是一种抢先交易,主要针对Defi协议和服务

问:我们常常所提到的智能合约系统漏洞可以说是实际操作中威胁较大、发生最频繁地网络安全问题吗?

答:完全不是那般。比如“外溢”、“外界启用”等常所提到的智能合约网络安全问题并不是最经常发生,威胁最大的一个。

究竟什么安全性威胁从发生次数和不良影响上可以称之为Top10的啊?SharkTeam合同安全性系列课程之【十大智能合约安全性威胁】和你一起讨论和深层次。第七课【详细说明三明治攻击】。

image.png

一、什么叫三明治攻击

三明治攻击( Sandwich Attack):一种提前交易,主要是针对Defi协议书与服务。在三明治攻击中,故意交易者在她们所选择的在网络上找寻等待处理交易,比如以太币。三明治攻击的发生要在交易前和交易后各下一个订单信息。从根本上讲,攻击者会同步进行 外置(front-run) 和内置( back-run) 交易,而原先的等待处理交易则夹在中间。

image.png

依据上如图所示,三明治攻击关键步骤如下所示:

(1) 攻击者提早洞悉了受害人的交易用意,觉得能够赚钱,提早根据运用10个TokenA换取了100个TokenB,与此同时抬高了TokenB的价钱

(2) 受害人在不经意之间,根据出现意外价钱滑点,以5个TokenA换取了40个TokenB,本来5个TokenA能够换取50个TokenB

(3) 攻击者然后将100Token B折算成12.5个TokenA,盈利2.5个TokenA

以X * Y = k理论依据的DEX绿色生态中,每一次选购Token情况下,相对应的价钱可能增涨。因而,假如我们首先选购它,随后别人选购别的Token,价钱便会增涨。假如我们接着马上售出,我们将要盈利,只要我们高抛低吸,完成了对冲套利。对冲套利在一定程度上,是能够维护保养价格行情绿色生态平衡。可是,三明治攻击会放弃正常的交易者权益为前提,攻击者最后牟取盈利。

image.png

三明治攻击很有可能根据下列两种形式:

(1)流通性获奖者攻击流通性获奖者

流通性获奖者尝试攻击在区块链上尚需处理AMM交易的流通性获奖者。见到等候核准的交易,劫掠者传出2个后面交易(前置和后置)以从交易者交易中获益。如今,通过一个流通性池和外汇货币连接着三个等待处理的交易。挖矿务必挑选哪笔交易最先得到准许。这便是劫掠者能通过具体行贿挖矿来危害这个选择的区域,即付款更高一些或较低的交易花费。

(2)流通性服务提供者攻击流通性获奖者

在这样的情况下,流通性服务提供者尝试攻击流通性获奖者。一切的开始都是一样的,攻击者在区块链上看到一个等待处理的交易,随后实行三个交易:

(a)清除流通性:提前布局(根据降低资产通胀预期来提高受害人的滑点)

(b)加上流通性:修复运作(将资金池里的流通性恢复正常攻击前水准)

(c)用B互换A:回到运作(将A的资产余额恢复正常攻击前情况)

在此次攻击中,攻击者在受害人的交易实行以前从流通性池中获取全部财产。在如此做的过程中,劫掠者选择放弃受害人交易的提成。流通性服务提供者依据她们向AMM所提供的流通性扣除提成。

可是,这种攻击都不一定合理。使得攻击合理,必须同时符合两个标准:

(1)盈利必须高过gas费(挖矿为解决每一笔交易支付的花费):由于盈利假如不大,客户必须得到非常多的Token总数才可以摆脱gas费

(2)降低滑点:滑点就是指客户在交易中能够接受理想的价钱的最大偏差。因为交易并不是立即执行的,在同一Token内操控的别的交易可能先强制执行,可能会导致价钱的转变。这就意味着想要买Token的客户没法了解他的交易实行后的准确价钱。这便增添了选购很有可能经历了大幅度价格波动的Token难题。

二、攻击剖析

观查下面的图得知,三明治攻击也是经常发生的。在经常会被运用的十大合同中,Uniswapv2 Router2、Uniswap v3 Router2占较多。截止到2022年10月28日,在近期30天中,Uniswap v3 Router2占58.0%。

image.png

在近期30天中,三明治攻击检测如图所示:

image.png

我们一起来剖析一个三明治攻击,Tx hash:0x65a6d6e7b88a3d7c6c11ef4658765bcd94e2a0f831a1e9752f711bbecc08740a。

image.png

该三明治攻击大约全过程如下所示:

(1)受害人的详细地址(0x37a…d80fa)方案售卖 1.4 WETH 获得 APE

(2)攻击者一直在扫描仪内存池(mempool),而且观察到受害人的用意

(3)攻击者详细地址(0x01b…b0159)进行售出 44.233706 WETH 换 176.994496 APE 的交易,而且减少了WETH 价钱,提升了APE价钱

(4)在 WETH 的较低价下,受害人(0x37a…d80fa)只有得到 3.919601 APE,他原本可以获得更多的

(5)攻击者(0x01b…b0159) 以 44.546633 WETH 的价钱售卖了 176.994496 APE

(6)最后,攻击者(0x01b…b0159) 得到 0.312927 WETH,扣减以太币上的一些成本费

(7)在这个过程中,攻击者(0x01b…b0159) 推送 Miner (0x829…3a830) 0.2 WETH 用于提升交易排列

三、防范措施

回顾了相关事件后,我们要采用什么适度的对策去防止三明治攻击?

(1)gas限定

三明治攻击为什么会发生,由于更高一些的gas花费交易先于别的交易。根据对该gas花费设定一定限制,危害将不会特别显著。实际上,永远不能彻底清除这种情况,由于gas花费一直有所差异的。可是,根据让这种差别缩小,攻击的发生速率就会变慢。

(2)防止低流通性池

欠缺较好的流通性对于这个问题没有好处。流通性池越低,投资人得到好价钱的机会就越低,因为这个更很容易产生滑点。滑点越大,从三明治攻击中获取的收益也就越多。

(3)小额贷款交易

三明治攻击对比较大的交易额有兴趣,交易额越多,盈利空间越多。防止三明治攻击的一种方法是把我们自己的交易分为好多个比较小的交易,所以这些小额贷款交易针对弯道超车者而言不是很具备诱惑力。

公司介绍:SharkTeam的企业愿景是全方位维护Web3全球的安全性。团队人员遍布于北京、南京市、苏州市、美国硅谷,由全球各地资深的安全性专业人员高级科学研究人员构成,熟练区块链和智能合约的最底层基础理论,提供专业的智能合约财务审计、链上剖析、应急处置等工作。已经与区块链生态体系各行各业的重要参加者,如Polkadot、Moonbeam、polygon、OKC、Huobi Global、imToken、ChainIDE等创建合作关系关联。

image.png

Twitter:https://twitter.com/sharkteamorg

Discord:https://discord.gg/bFmbFy74 

Telegram:https://t.me/sharkteamorg 

大量区块链安全咨询和分析,点击进入连接查询

D查下|链上风险性审查 https://m.chainaegis.com

转载:驼鸟区块链

Tags:
免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。