TronBank “假币攻击”手法技术分析

据慢雾安全团队消息,TRC10 是 TRON 区块链本身支持的技术代币标准,没有 TRON 虚拟机(TVM)。TRC10 & TRC20 详细比较:https://developers.tron.network/docs/trc10-token#section-trc10-...

据慢雾安全团队消息,TRC10 是 TRON 区块链本身支持的技术代币标准,没有 TRON 虚拟机(TVM)。TRC10 & TRC20 详细比较:https://developers.tron.network/docs/trc10-token#section-trc10-trc20-comparisonTRC10 提供了 2 个新参数:tokenValue、tokenId,msg.tokenvalue 表示当前 msg 调用中的标记值,默认值为 0。 msg.tokenid 表示当前 msg 调用中的标记 id,默认值为 0。tokenId 也是 Odyssey_v3.2 中的新功能。它可以在帐户中名为 assetV2 的新地图字段中找到。 使用 GetAccount(Account)获取 tokenId 及其值。 TokenId 由系统从数字 1_000_001 开始设置。 创建新的 TRC10 代币时,数字加 1 并设置此代币的 ID。官方文档:https://developers.tron.network/docs/trc10-transfer-in-smart-contractsTronBank 合约在 invest 函数内没有判断 msg.tokenid 导致任意的代币(假币)转入,合约都以为是真币 BTT。然后攻击者再调用 withdraw 从合约中提取真币 BTT。

生成图片
3

发表评论

TronBank “假币攻击”手法技术分析

星期四 2019-04-11 13:28:09

据慢雾安全团队消息,TRC10 是 TRON 区块链本身支持的技术代币标准,没有 TRON 虚拟机(TVM)。TRC10 & TRC20 详细比较:https://developers.tron.network/docs/trc10-token#section-trc10-trc20-comparisonTRC10 提供了 2 个新参数:tokenValue、tokenId,msg.tokenvalue 表示当前 msg 调用中的标记值,默认值为 0。 msg.tokenid 表示当前 msg 调用中的标记 id,默认值为 0。tokenId 也是 Odyssey_v3.2 中的新功能。它可以在帐户中名为 assetV2 的新地图字段中找到。 使用 GetAccount(Account)获取 tokenId 及其值。 TokenId 由系统从数字 1_000_001 开始设置。 创建新的 TRC10 代币时,数字加 1 并设置此代币的 ID。官方文档:https://developers.tron.network/docs/trc10-transfer-in-smart-contractsTronBank 合约在 invest 函数内没有判断 msg.tokenid 导致任意的代币(假币)转入,合约都以为是真币 BTT。然后攻击者再调用 withdraw 从合约中提取真币 BTT。