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

EGL:天价手续费分析:我不是真土豪_TPS

作者:

时间:

9月27日,Bitfinex的一个主要钱包以7676

将int转成Hexhttps://github

判断是否可以被2整除,如果不行需要在字符开头添加一个0,这里主要是为了能够成功的将数据2个1组写入到buffer。https://github

if(a

returna;}

以出错的示例数据:33974229950.550003进行分析,经过intToBuffer函数中的intToHex和padToEven处理后得到7e9059bbe.8ccd,这部分浏览器js和nodejs的结果都是一致的。

不一致的地方是在newBuffer的操作:

newBuffer(padToEven(hex.slice(2)),'hex');

FIL跌破5美元:金色财经报道,行情显示,FIL跌破5美元,现报4.99美元,日内跌幅达到7.42%,行情波动较大,请做好风险控制。[2023/3/11 12:57:06]

处理方式分析:浏览器js

通过webpack打包好js文件并对文件进行引用,然后在浏览器上进行调试分析。

首先输入的示例字符33974229950.550003会进入到intToBuffer的函数中进行处理。同步分析intToBuffer的处理过程,这部分和」关键代码分析「部分的代码逻辑是一样的,处理转换部分得到的结果是7e9059bbe.8ccd。接下来分析如何将转换后的字符填充进入的buffer中,通过这步可以得到buffer的内容是126,144,89,187,14,140,205对应的是7e,90,59,bb,e,8c,cd。

MiCA已经阻碍了稳定币在欧盟的应用:金色财经报道,在密码资产市场(MiCA)监管框架通过之前,欧盟的数字资产前景正在发生变化,该框架旨在为加密资产灌输监管透明度。虽然出于好意,但MiCA的当前结构可能会阻碍创新。但如果这项政策的修订版获得通过,欧盟可能会成为数字支付领域的领导者之一。(Cointelegraph)[2022/9/26 7:20:45]

>0x7e->126>0x90->144>0x59->89>0xbb->187>0xe->14>0x8c->140>0xcd->205

这里发现e.这部分的小数点消失了,于是开始解小数点消失之迷,追踪到hexWrite这个函数,这个函数会将得到的数据2个一组进行切分。然后用了parseInt对切分后的数据进行解析。

韩国关键存储芯片出口大减 显示全球需求降温:9月16日消息,韩国最赚钱存储芯片的出口创下2019年以来最大降幅,表明需求下滑加剧。韩国通商部周五发布的数据显示,8月份动态随机存取存储器(DRAM)出货同比下降24.7%,前一个月为下降7%。DRAM占到韩国存储芯片出口的近一半。(财联社)[2022/9/16 7:00:55]

然而parseInt('e.',16)->14===parseInt('e',16)->14消失的小数点被parseInt吃掉了,导致最终写入到buffer中的数据发生了错误,写入buffer的值是7e9059bbe8ccd。

处理方式分析:nodejs

由于浏览器上出问题的是7_**__**_e9059bbe.8ccd在写入buffer的时候小数点被parseInt吃掉了导致数据出错,但是经过分析,node的数据也是错误的,且产生错误的原因是和浏览器的不一样。

anetaBTC宣布上线测试网:4月22日消息,Ergo与Cardano上封装比特币anetaBTC发推称,anetaBTC测试网已上线,与测试网交互的完整说明将在Telegram与Discord发布。

此前消息,anetaBTC表示已经成功地在Cardano网络上铸造了cBTC(一种封装比特币)。在铸造cBTC时,用户将自己的ADA地址添加到BTC交易元数据中,存入BTC,然后由anetaBTC进行处理和确认。cBTC被铸造,然后发送到用户的Cardano钱包。[2023/4/22 14:20:16]

首先我们先看下如下的示例:

node三组不同的数据填充到buffer得到的结果居然是一样的,经过分析node的buffer有个小特性,就是2个一组切分后的数据,如果没法正常通过hex解析的,就会把那一组数据以及之后的数据都不处理了,直接返回前面可以被正常处理的那部分数据。可以理解为被截断了。这部分可以参考node底层的buffer中node_buffer.cc中的代码逻辑。

美国参议院通过规模为4300亿美元通胀削减法案:8月8日消息,美国参议院通过规模为4300亿美元通胀削减法案,美国总统拜登对此表示,众议院应该尽快该法案,期待着将其签署成为法律。

美国参议院通过民主党的通胀削减法案,美国参议院通过了一项具有里程碑意义的税收、气候和医疗保健法案(通胀削减法案)。该法案的投票结果是51名民主党人赞成50名共和党人反对,美国副总统哈里斯做出了打破僵局的投票。目前,该法案已提交众议院,预计将于周五通过。民主党称该法案是美国应对气候变化的最大投资,还旨在防止大公司利用税收漏洞,并将首次允许联邦医疗保险(Medicare)就药品价格进行谈判。预计法案还将在未来10年进行大幅度的预算赤字削减。共和党人一致反对,认为法案无法削减处于历史高位的通胀水平,而且征税可能会使美国经济陷入衰退。该法案的规模从最初的6万亿美元削减至约4370亿美元。(金十)[2022/8/8 12:08:27]

>newBuffer('7e9059bbe','hex')>newBuffer('7e9059bbe.8ccd','hex')>newBuffer('7e9059bb','hex')

执行结果的比较

node由于会将原始数据7e9059bbe.8ccd中的e.及之后的数据进行截断,所以最终错误的值是7e9059bb,相比正确的值07e9059bbe小。

node的执行结果:浏览器由于会将原始数据7e9059bbe.8ccd中的.吃掉,所以最终错误的值是7e9059bbe8ccd,相比正确的值07e9059bbe大很多。

浏览器的执行结果:

问题的原因

ethjs-util的intToBuffer函数不支持浮点型的数据,且在这个函数中没有判断传入的变量类型,来确保变量类型是预期内的。由于ethereumjs的toBuffer引用了ethjs-util的intToBuffer进行处理,也没有对数据进行检查。导致了这次事件的发生,所幸最终善良的矿工归还了「天价手续费7626ETH」。

吸取的教训

从第三方的库的角度来看,在编码过程中应该要遵循可靠的安全的编码规范,在函数的开头要对传入的数据进行合法性的检查,确保数据和代码逻辑是按照预期内执行。

从库的使用者的角度来看,使用者应该要自行阅读第三方库的开发文档和对接文档,并且也要对代码中接入第三方库的逻辑进行测试,通过构造大量的数据进行测试,确保业务上能够正常按照期望执行,保证高标准的测试用例的覆盖率。

参考资料:

https://github.com/ethereumjs/ethereumjs-monorepo/issues/1497

https://blog.deversifi.com/23-7-million-dollar-ethereum-transaction-fee-post-mortem/

https://www.chainnews.com/news/611706276133.htm

来源链接:mp.weixin.qq.com

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

慢雾

慢雾

慢雾科技是一家专注区块链生态安全的国家高新技术企业,通过「威胁发现到威胁防御一体化因地制宜的安全解决方案」服务了全球许多头部或知名的项目。慢雾科技的安全解决方案包括:安全审计、威胁情报、漏洞赏金、防御部署、安全顾问等服务并配套有加密货币反、假充值漏洞扫描、漏洞监测、被黑档案库、智能合约防火墙、SafeStaking等SAAS型安全产品,已有商业客户上千家。慢雾慢雾科技慢雾AML慢雾安全Slowmist查看更多以太坊

标签:EGLGLDEGLDTPSegld币最新价格egld币创始人WEGLD币tps币圈

pepe最新价格热门资讯
AVA:欧易OKEx赚币关于第十一期加息项目申购即将开启的公告_Altava

尊敬的欧易OKEx用户:欧易OKEx赚币将于2021年9月29日11:00(HKT)正式开启第十一期加息项目申购通道。欧易OKEx赚币将不定期上线各类资产的加息活动,敬请期待.

AVA:BENQI 近期计划:Liquid Staking、贷款及借款协议和未来的 DeFi 协议_ENQ

DeFi与传统金融之间的差距。实现这一点的重要因素是优先考虑安全性、可用性和降低每个人进入DeFi的障碍.

EGL:參與EGLD 交易,贏100,000美元大獎_tps币圈

活動時間:2021年09月29日上午8:00至2021年10月06日上午7:59點擊按鈕,立刻參與活動活動一:新用戶專屬福利:交易5EGLD,瓜分5,000美元大獎活動期間註冊的新用戶.

COIN:加密货币财资管理平台 Coinshift 完成 250 万美元种子轮股权融资_coinsciousnetwork

链闻消息,据TheBlock报道,加密货币财资管理平台MultiSafe改名为Coinshift,同时宣布完成250万美元种子轮股权融资.

Gate.io:Gate.io借贷挖矿7天年化收益率达148.65%_gate.io安卓下载app

自Gate.io在2021年8月1日上线新版流动性池以来,用户反响热烈;为进一步满足广大用户投资需求,Gate.io现已上线借贷挖矿功能,用户存入代币提供流动性即可赚取收益.

BIB:【下架公告】关于下架APN/USDT、ECELL/USDT、CC/USDT、MAQ/USDT、LCS/USDT、BSS/USDT、XBT/USDT、FORT/USDT、TWT/USDT、MDL/USD_BullDog Coin

亲爱的币牛BiBull用户:由于市场行情变化,经过评估,平台决定下架APN/USDT、ECELL/USDT、CC/USDT、MAQ/USDT、LCS/USDT、BSS/USDT、XBT/USDT.