链资讯 链资讯
Ctrl+D收藏链资讯

APP:AirSwap智能合约漏洞详解:用户资产可被攻击者恶意吃单?_PolkaBridge

作者:

时间:

2019年09月13日AirSwap团队公布了一个AirSwap智能合约中存在致命的漏洞,这一漏洞可以使得用户的资产在某些情况下被对手恶意吃单『偷盗』,PeckShield安全人员独立分析了该漏洞,并与AirSwap团队沟通了细节和修复方案。

漏洞影响概述

PeckShield安全人员深入分析AirSwap智能合约后发现,这一漏洞只对最近上线的Wrapper有影响,AirSwap团队在发现该问题后第一时间下线当前合约,并将AirSwap?网站回退到之前使用的合约,从合约上线到问题修复整个过程仅持续了24小时,可见AirSwap团队对于合约安全的重视程度之高。

PeckShield安全人员独立分析了漏洞细节,并与AirSwap团队沟通细节和修复的方案,同时将该漏洞命名为“?ItchySwap”。

PeckShield在此提醒,由于这一漏洞可使用户的资产被攻击者恶意偷盗,受此次影响的账号一共有18个,其中有部分账号有数万至数十万美元的资产,这些账号需要尽快完成升级,或与AirSwap团队联系。

Dylan Leclair:比特币在未来一到两个季度将会受到冲击:8月29日消息,21stParadigm联创、比特币分析师Dylan Leclair表示,比特币将在未来一到两个季度的去杠杆事件中受到冲击。如果这种情况发生,可能会有大量空头进入低位,其中大部分是美元保证金。他同时表示将在未来12个月内进行个人有史以来最大的一次收购。[2022/8/29 12:56:02]

ItchySwap?漏洞详解

一、AirSwap合约

在分析之前,为方便起见,我们先定义几个概念:

1.maker:出售资产的一方;

2.taker:购买资产的一方;

3.order:maker与taker之间发生资产交割的订单;

4.Indexer:AirSwap中的订单簿,汇聚了当前正在出售及需要购买的资产信息。

下图说明了maker、taker和Indexer之间的交互流程:

Immutable X发布与其兼容的Cairo智能合约以帮助在StarkNet上的项目开发:金色财经消息,NFT二层扩展解决方案Immutable X宣布将发布一组Cairo智能合约,以帮助在StarkNet上进行NFT相关项目的开发。目前发布的合约包括ERC-20、ERC-721、版税,其中ERC-721合约在Open Zeppelin推出的合约基础上进行了扩展;版税则选择了EIP2981标准。Immutable X表示,未来将构建更多的StarkNet合约并添加至该集合中,包括即将推出的Layer1与Layer2之间的ERC-721代币跨链桥。[2022/5/26 3:42:35]

AirSwap是一个基于Ethereum的点对点去中心化交易所,它集成了SwapProtocol,在其中作为一个自动托管服务,允许交易的双方在以太坊上安全地交易任何资产。与许多去中心化交易所不同,AirSwap虽然没有对资金进行托管控制,但仍然有一个用于匹配目的的集中式订单簿,它实现了一个用于交易和订单匹配的完全对等模型。

特别值得一提的是,有一个名为Indexer的链下服务,可以聚合来自maker和taker的交易意图,然后为他们提供匹配的服务。特别是,一旦taker找到了合适的maker,他们就会开始进行场外价格的谈判。一旦达成协议,订单将由Taker通过SwapProtocol在链上进行填充和资产交割。

区块链互联网公司3air因开发问题放弃Cardano,转而使用SKALE网络:2月9日消息,专注于非洲的区块链互联网公司3air已经正式放弃了Cardano区块链,转而使用由以太坊驱动的SKALE网络。3air首席执行官Sandi Bitenc表示,作为Cardano的主要编程语言,Haskell的技能组合似乎很短缺。在花了几个月的时间积极招募高级Haskell编码员来构建Cardano后,3air只能获得两个入门级的兼职开发人员。尽管该公司联系了Cardano推荐的开发机构,但3air仍然无法找到它所需要的人才。Bitenc说,通过迁移到SKALE,3air的开发人员可以立即开始工作,实现他们的开发目标。

据悉,SKALE在过去两年获得了2675万美元的资金后,于2020年6月推出了其主网的第一阶段。(Cointelegraph )[2022/2/9 9:40:07]

在AirSwap智能合约中,taker将订单上链及资产交割的过程在AirSwapswap(Types.Ordercalldata_order)函数之中,这一函数实现如下所示:

以太坊2.0测试网Pyrmont将于8月19日进行Altair硬分叉:8月10日消息,以太坊2.0测试网Pyrmont将于8月19日进行以太坊信标链首个硬分叉升级Altair。7月中旬,以太坊信标链首个升级Altair已从Alpha版本转变为Beta版本,除非发现关键的安全问题,否则将不再对Altair做出重大更改。[2021/8/10 1:46:41]

1)验证订单有效性

订单order参数有效性检查,这些信息均由taker上链的时候指定的,也意味着这些信息都可以由taker篡改,具体包含:

1.订单还在有效期内;

2.订单还没有被其它的taker吃单;

3.订单还没有被取消;

4.订单的nonce大于最小值;

5.设置订单状态为TAKEN状态。

2)验证taker信息

Blockchair首席开发者质疑闪电网络能够扩展比特币:可锁定大部分闪电网络的流动性来破坏闪电网络:Blockchair首席开发者Nikita Zhavoronkov发布论文《支付通道网络中的堵塞攻击》。论文研究表示,可以通过锁定大部分闪电网络的流动性来破坏闪电网络,而花费仅不到0.5个BTC。攻击者可以用少于0.25 BTC的费用使闪电网络中的830 BTC流动性瘫痪3天。Zhavoronkov质疑是否相信闪电网络能够扩展比特币。[2021/2/19 17:29:40]

确立有效的taker,根据order中指定或者等同于合约的调用方msg.sender。

3)验证maker信息

验证maker的有效性,这里的验证分为两种情况考虑:

1.没有maker签名的订单:需要保证msg.sender有权限操作这个maker地址即可,即这笔order发起者有权限操作maker的资产;

2.order中指定了maker的签名信息:验证签名的有效性。

4)?资产交割

如果上述的验证流程没有问题,那么直接执行maker和taker的资产交割。

二、Wrapper合约

在上述的AirSwap合约中,用户通过swap()函数执行资产互换,这一流程非常清晰,没有问题。但是这一合约存在一点不完美的地方,用户只能通过Token进行资产互换,无法直接用ETH平台币参与其中。用户可以先把ETH转换成WETH,再用WETH参与互换,但无论如何,用户使用体验上多了一步。

为了降低用户使用体验上的摩擦,AirSwap团队与2019年09月12日?推出了?Wrapper合约,其使用是自动将用户转入的ETH转换成WETH之后再参与资产互换的过程,其关键流程如下:

1.验证swap()发起方与taker是相同的;

2.如果用户发起swap()有携带了ETH资产,并且需要转换的token为WETH,那么就自动将ETH转换成WETH;

3.直接调用AirSwap合约的swap()操作。

考虑到一种特殊的场景,Alice希望通过Wrapper合约执行AirSwap资产互换,这一过程需要先由Alice自行在AirSwap合约中授权Wrapper合约,以允许Wrapper合约可以执行各自的资产交割流程。

由于区块链的透明性,Eve看到了Alice的授权操作,那么他就可以向Wrapper合约发起一笔恶意的订单,其包含的内容如下:

1.?order中的有效时间、nonce为一个非常大的数值;

2.order中的maker对应的账号为Alice的账号;

3.order中的taker为空;

4.order的signature为空。

将上述构造好的order代入AirSwap的swap()?函数,其中1,2两步的验证由于是taker控制的,不会有问题,我们重点看下第三步验证maker信息:

由于此时AirSwap合约是由Wrapper合约调用的,那么msg.sender即Wrapper合约的地址,前文讲到,Wrapper合约是经过Alice授权可直接控制Alice的资产,此时虽然Eve没有权限操作Alice的资产,但此时可以通过Wrapper控制,也就间接地控制了Alice的资产。

安全规避

PeckShield安全人员分析发现,截止至2019年09月28日为止,共有6个账号执行了revoke()操作,以解除对Wrapper合约的授权,还有12个账号存在安全风险,这剩下的所有账号应当立即执行revoke()操作,或者将账号中的资产转移至未对Wrapper授权过的安全账号。

任何的代码在上线生产环境之前都应当得到充分的测试和验证,特别是承载着用户价值的DEX平台。在产品增加新特性之时,一定要考虑到旧特性的兼容性与安全,新特性的引入不应该触发旧产品中设计不完备的地方。

附录

备注:

AirSwap官方漏洞细节链接:https://medium.com/fluidity/critical-vulnerability-in-a-new-airswap-smart-contract-c1204e04d7d3??

标签:APPORDCDSABR抹茶交易所官网app下载ordi币赋能scds币合法吗PolkaBridge

币安app官方下载最新版热门资讯
加密货币:比特币真的能拯救世界,接受加密货币捐赠的组织实现100%增长_SON

NonprofitTechforGood的一份新报告显示,加密货币作为一种捐赠资金的方式正在迅速普及.

CDS:有了隐私计算,相亲角会消失?“上海区块链周”隐私计算发展研讨会精彩看点_区块链

9月17日,2019上海区块链周“全数字世界必由之路隐私计算发展研讨会”在上海举行,该研讨会由PlatON与Oasis联合举办。关于数据和隐私计算相关话题,与会专家进行了深入讨论.

SLASH:一文读懂DeFi领域合成资产:基本概念、现有用例和未来机遇_LIC

机构和散户参与者都将需要更复杂的金融工具,尤其是合成资产。撰文:DmitriyBerenzon,区块链投资机构ZenithVentures研究合伙人? 编译:詹涓 虽然加密资产的主要应用场景一直.

CAR:前美联储官员:用数字货币终结美元霸权根本行不通_polkadotted中文

前美国联邦储备委员会官员SimonPotter日前表示,寄希望于让数字货币代替美元来结束美元霸权是毫无意义的.

区块链:Libra将成为“联合国币”?Libra协会:我们能够帮助联合国实现很多可持续发展目标_LIBRA

天秤座协会的负责人认为,Facebook主导的加密货币可能会给联合国带来好处,据路透社报道。 图片来源:Pixabay在联合国日内瓦总部举行的区块链活动上,天秤座协会常务董事贝特朗·佩雷斯说,他.

比特币:观点 | 比特币是一种宏观对冲工具吗?_BTC

前言:黄金是价值存储的资产类别,也是一种宏观对冲工具。那么,从比特币迄今为止的表现来看,它算是宏观对冲工具吗?本文试图解答这一问题.