白帽研究员回收1,003.62 以太坊 从失败的2016年开始 以太坊 ICO 将一个旧的智能合约缺陷变成了一个提醒:以太坊最早的技术决策可以持续近十年。
该研究人员被称为 0x弗洛伦特,表示在资金被困九年后,他从 HongCoin 合约中解锁了 ETH。使用 6 月 1 日 以太坊 价格约为 1,983 美元,追回金额约为 199 万美元。
恢复依赖于原来的 HongCoin 多重签名。这 HongCoin合约 仍需要从该管理路径对相关管理调用采取操作。
这使得这一事件更接近合同考古学,而不是传统的利用:保留退款失败的相同不可变代码也保留了一条被遗忘的路线。
HongCoin的对比非常鲜明。以太坊的基础层保持静止。仍然有效的许可路径和原始多重签名的协调签署使 48 名原始投资者有资格通过多年来被打破的退款机制索取资金。
退款路径是如何中断的
HongCoin 是一个 2016 年的以太坊项目,其公共存储库将其描述为 去中心化风险基金。代币销售未能达到其融资目标,贡献者应该能够通过合约的退款功能收回他们的 ETH。
问题出在合同的会计方面。在 洪币源代码, 这 refundMyIcoInvestment() 函数检查调用者的代币余额是否大于 tokensCreated。如果该条件为真,则退款调用失败。
如果通过,该函数会将调用者的代币余额清零,清除相关会计,减少 tokensCreated 通过该代币余额,然后发送退款。
随着时间的推移,提前退款减少了全球 tokensCreated 柜台。这使得较大的持有者处于一个奇怪的境地:他们仍然有与其原始索赔挂钩的余额,但这些余额对于合同的剩余柜台来说可能太大了。
退款功能随后将其视为无效,从而阻止了本应退款的用户。
逃生路径是另一段旧代码。多重签名限制 mgmtIssueBountyToken() 管理功能可以将提供的金额添加到收件人的余额中并 bountyTokensCreated。
该路径属于合约的管理方,这就是原始多重签名必须参与的原因。现代的 坚固性算术 溢出时默认恢复。
在 Solidity 0.8.0 之前,除非开发人员添加自己的检查,否则算术会在溢出时包装。较老的行为塑造了逃生路线。
0xFlorent 确定了一种使用管理函数的算术行为将持有人的余额重置到足够低的水平以便退款检查通过的方法。结果是矛盾的:一个过时的错误帮助消除了另一个过时的错误造成的实际损害。
| 阶段 | 关键细节 |
|---|---|
| 2016 年代币销售 | HongCoin为一个风险基金式的以太坊项目收集了ETH,但后来未能实现其目标。 |
| 退款失败 | 一旦全球代币计数器低于其余额,退款功能就会拒绝较大的持有者。 |
| 旧的管理路径 | 多重签名限制函数仍然存在,可以使用 0.8 之前的 Solidity 算术行为来更改余额。 |
| 白帽复苏 | 0xFlorent 与原始 HongCoin 多重签名协调,使被阻止的持有者有资格领取资金。 |
| 链上证明 | 5月29日的交易显示成功 refundMyIcoInvestment() 调用产生内部 96 ETH 转账。 |
多重签名使其成为协调恢复
多重签名要求为 HongCoin 的恢复设定了界限。该敏感路径需要HongCoin原来的管理地址来执行相关调用,因此实际恢复需要研究人员与旧控制路径的配合。
协调与代码一样重要。此次恢复涉及 41 笔被冻结持有者签署的交易,而另外 7 个较小的持有者可以直接退款,无需解决方法。
ICO于2016年8月29日开始,于2016年10月28日结束,未能达到融资目标。
链上记录已经显示退款活动。 5月29日 链上交易 被称为 refundMyIcoInvestment() 并从 HongCoin 合约向投资者地址进行了 96 ETH 的内部转账。
顶层交易价值为 0 ETH,因为实际变动发生在合约调用内部。
任何追随这笔钱的人都应该将资格与已完成的分配分开。合约状态和多重签名执行重新开辟了多年来无法获得的资金索赔途径。
可见的链上示例显示了退款活动,而不是对每个合格投资者的索赔的完整核算。
在任何人将 HongCoin 的案例推广到其他旧的陷入困境的基金之前,应该仔细阅读它。这些成分异常具体:可识别的合约逻辑、原始控制路径仍可使用的管理功能、愿意协调的白帽,以及足够的剩余链上价值,使努力值得。
实际细节是所有权和许可。旧函数可以更改余额,但只有管理路径可以调用它。
这赋予了复苏其道德和操作边界:外部研究找到了路径,原始签名者执行了它,并为投资者重新开放了索赔路径。
同样的事实也使得案件难以一概而论。许多休眠合约缺乏主动控制密钥、干净的索赔人集或使负责任的恢复变得合理的公共踪迹。
该边界还减少了将这一事件视为广泛的漏洞利用模板的诱惑。技术机制解释了为什么退款门重新打开,但故事的后果来自于旧代码、居住许可和公共结算的结合。
当合同缺乏其中一个要素时,类似的考古学就会变得更加危险,因为发现可能会在创建可用的恢复路线之前暴露弱点。
以太坊保留错误和补救措施
更广泛的以太坊历史使得 HongCoin 的复苏不仅仅是一种好奇。 2025年 引用 Coinbase 的 Conor Grogan 的分析 根据对用户和合约相关错误的保守估计,永久损失的 ETH 超过 913,111。
该类别包括发送到销毁地址的资金、合约错误和重大历史事件。
以太坊早期最重要的一些时刻也是关于复苏的争论。 2016 年, DAO 硬分叉 在网络出现重大治理危机后,将大约 1200 万 ETH 从 DAO 相关合约转移到恢复合约中。
2017年,Parity Technologies多重签名库自毁事件 冻结 513,774.16 ETH 跨 587 个钱包。
这些事件比 HongCoin 规模更大,政治色彩也更重。它们仍然有助于解释为什么这种较小的复苏会引起共鸣。
以太坊对代码和状态持续存在的承诺是一种安全属性和一个内存系统。它保留了错误、被遗忘的假设、旧的权限以及偶尔的补救措施,这些补救措施在部署时与未来的相关性是不可见的。
如今,这种长久的记忆与日趋成熟的安全文化并存。一月份,以太坊退伍军人 公布的计划 将剩余的 TheDAO 恢复资金中的大约 75,000 ETH 转换为以太坊安全的质押捐赠。
HongCoin 案例的规模要小得多,但指出了早期以太坊决策的相同来世。
下一个测试是可恢复性:其他旧合约是否包含可以负责任地使用的路径。白帽恢复需要的不仅仅是一个错误。它需要正确的控制路径、公开的链上证据、谨慎的披露,以及避免将合约考古学变成机会主义攻击的剧本的方法。
HongCoin表明,一些被困资金可能会在旧逻辑中保持暂停状态,等待有人了解该缺陷及其周围的许可结构。对于现在有资格申请的 48 名投资者来说,这是一个充满希望的结果。
这也是对生态系统其他部分的警告:以太坊会记住错误的代码,有时它也会记住逃生舱口。







