2016年,区块链行业爆出一桩轰动全网的安全奇案:攻击者仅花不到1美元的交易手续费,凭着一行写反顺序的代码,就从头部项目The DAO的链上合约中,卷走了价值6000万美元的数字资产。全程没有暴力破解,没有非法入侵,完全是顺着代码本身的逻辑漏洞完成的操作。


这个漏洞的原理简单到离谱:正常的提现逻辑本该先清零用户账户余额,再执行转账。但当年的合约写反了先后顺序——先打款,再清余额。攻击者就在转账触发的回调机制里,循环发起提现申请,趁着系统还没更新余额状态,一轮接一轮套取资金,递归循环直到把整个合约的储备彻底搬空。而修复方案只需要调换两行代码的位置。
The DAO绝非无名小项目,它是当时以太坊生态最受瞩目的标杆项目,众筹规模达1.5亿美元,代码经过社区多轮评审、专业安全团队核查,偏偏没人揪出这个最基础的逻辑错误。
事件最终倒逼以太坊社区启动硬分叉,强行回滚交易追回被盗资产,也直接分裂出了以太坊经典这条分支链。行业长期信奉的“代码即规则”的理念,第一次被现实狠狠打脸,关于“利用漏洞是合理操作还是盗窃”的争论,至今仍在发酵。
更讽刺的是,十几年过去,这类基础漏洞非但没有绝迹,反而换着马甲反复上演。2021年知名借贷协议CREAM Finance被同款手法卷走1.3亿美元,由于调用链路层层嵌套、隐蔽复杂,即便经过了完整的专业审计,也没能排查出风险。
除此之外,零本金的闪电贷操控攻击、函数权限写错的低级失误、甚至仅凭一封钓鱼邮件就造成6.25亿美元损失的跨链桥大案,在行业里轮番上演。不少项目为了赶上线进度、压开发成本,在安全环节一再妥协,每一处偷懒的细节,最终都酿成了难以挽回的天价损失。$ETH
{spot}(ETHUSDT)En 2016, la industria blockchain se vio sacudida por un caso de seguridad que conmocionó a toda la red: un atacante, con solo una tarifa de transacción de menos de 1 dólar, logró robar activos digitales por valor de 60 millones de dólares del contrato en cadena del proyecto líder The DAO, gracias a una línea de código escrita en orden inverso. No hubo fuerza bruta, ni intrusiones ilegales; todo se hizo aprovechando una vulnerabilidad lógica inherente al código.
El principio de esta vulnerabilidad era ridículamente simple: la lógica de retiro normal debería haber puesto a cero el saldo de la cuenta del usuario antes de ejecutar la transferencia. Pero el contrato de aquel año invirtió el orden: primero pagaba, luego ponía el saldo a cero. El atacante aprovechó el mecanismo de callback activado por la transferencia para iniciar solicitudes de retiro en bucle, aprovechando que el sistema aún no había actualizado el estado del saldo, extrayendo fondos ronda tras ronda mediante recursividad hasta vaciar por completo las reservas del contrato. La solución solo requería intercambiar el orden de dos líneas de código.
The DAO no era un proyecto menor; era el proyecto emblemático más destacado del ecosistema Ethereum en ese momento, con una recaudación de 150 millones de dólares. Su código había sido sometido a múltiples revisiones comunitarias y auditorías de equipos de seguridad profesionales, pero nadie detectó este error lógico tan básico.
El evento finalmente forzó a la comunidad Ethereum a realizar un hard fork, revirtiendo transacciones para recuperar los activos robados, y dividió directamente la cadena en Ethereum Classic. El principio que la industria había sostenido durante mucho tiempo, "el código es la ley", recibió una dura bofetada de la realidad, y el debate sobre si explotar vulnerabilidades es una operación legítima o un robo sigue vigente hasta hoy.
Lo más irónico es que, más de una década después, estas vulnerabilidades básicas no solo no han desaparecido, sino que se repiten una y otra vez bajo diferentes disfraces. En 2021, el conocido protocolo de préstamos CREAM Finance fue víctima de la misma técnica, perdiendo 130 millones de dólares. Debido a la complejidad y ocultación de las llamadas en cadena, incluso tras una auditoría profesional completa, no se logró identificar el riesgo.
Además, ataques de préstamos flash sin capital, errores de bajo nivel como permisos de funciones mal escritos, e incluso grandes casos de puentes entre cadenas que causaron pérdidas de 625 millones de dólares solo con un correo de phishing, se han sucedido en la industria. Muchos proyectos, con tal de cumplir plazos de lanzamiento y reducir costos de desarrollo, han hecho concesiones en seguridad, y cada detalle perezoso terminó provocando pérdidas astronómicas irreparables.
ETH0,85%
Ver original
post-image
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • Comentar
  • Republicar
  • Compartir
Comentar
Añadir un comentario
Añadir un comentario
Sin comentarios
  • Fijado