Alguien acaba de robar $142K del Scallop de
$SUI sin ninguna habilidad de hacking.
No hay genio de flash loan.
No hay manipulación de oráculos.
No hay explotación de código.
Solo... un contrato antiguo que nadie estaba vigilando. 👀
Aquí está cómo ocurrió 👇
#scallop corre en
#sui 💧
Tiene un pool de recompensas para los stakers de sSUI.
Actualizó sus contratos hace mucho tiempo.
Pero el viejo V2?
Todavía está en la cadena.
Todavía es llamable.
Olvidado — pero no muerto.
En
#SUI🔥 , los contratos desplegados son inmutables.
No puedes eliminarlos.
No puedes apagarlos.
Simplemente... existen para siempre.
El atacante encontró el V2 de noviembre de 2023 — 17 meses de antigüedad — y lo llamó directamente.
Sin front end. Sin SDK. Llamada directa al contrato.
El bug era vergonzosamente simple:
Cada nueva cuenta de staking se suponía que debía registrar un last_index — el timestamp de cuándo alguien comenzó.
En el viejo V2, esto nunca fue inicializado.
Así que el contrato asumió que alguien había estado
#staking desde el primer día.
El índice de spool había estado corriendo durante 20 meses.
Alcanzó 1.19 mil millones.
El atacante stakó 136K sSUI.
El contrato calculó 162 billones de puntos de recompensa.
El pool tenía 150,000 SUI a una tasa de 1:1.
Una transacción. Todo desaparecido.
Scallop congeló el contrato.
Cubrió el 100% de las pérdidas.
Reanudó en menos de 2 horas.
Pero aquí está lo que me atormenta:
El atacante luego se contactó y ofreció devolver el 80% por una recompensa.
Lo que significa que ni siquiera estaban tratando de esconderse.
Entraron por la puerta principal de una casa vacía que nadie recordaba que poseían.
Esto no es un problema de "
$SUI ."
Este es un problema de arquitectura
#defi .
¿Cuántos contratos antiguos están sentados en tu protocolo favorito ahora mismo?🫵
Auditados una vez.
Actualizados.
Olvidados.
Todavía vivos en la cadena.
Los hacks más aterradores no son sofisticados.
Son pacientes.