Jemand hat gerade $142K von
$SUI 's Scallop gestohlen, ohne irgendwelche Hacking-Skills.
Kein Flash Loan-Genie.
Keine Oracle-Manipulation.
Kein Code-Exploit.
Nur... ein alter Vertrag, den niemand beobachtet hat. 👀
So ist es passiert 👇
#scallop läuft auf
#sui 💧
Es hat einen Belohnungspool für sSUI-Staker.
Sie haben ihre Verträge vor langer Zeit aktualisiert.
Aber das alte V2?
Liegt immer noch on-chain.
Ist immer noch aufrufbar.
Vergessen – aber nicht tot.
Auf
#SUI🔥 sind die deployten Verträge unveränderlich.
Du kannst sie nicht löschen.
Du kannst sie nicht ausschalten.
Sie existieren einfach... für immer.
Der Angreifer fand das V2 von November 2023 – 17 Monate alt – und rief es direkt auf.
Kein Frontend. Kein SDK. Direkter Vertragsaufruf.
Der Fehler war peinlich einfach:
Jedes neue Staking-Konto sollte einen last_index aufzeichnen – den Zeitstempel, wann jemand angefangen hat.
Im alten V2 war dies nie initialisiert.
Also ging der Vertrag davon aus, dass jemand seit
#staking Tag eins dabei war.
Der Spool-Index lief seit 20 Monaten.
Er erreichte 1,19 Milliarden.
Angreifer hat 136K sSUI gestaked.
Der Vertrag berechnete 162 Billionen Belohnungspunkte.
Der Pool hatte 150.000 SUI zu einem 1:1-Kurs.
Eine Transaktion. Alles weg.
Scallop hat den Vertrag eingefroren.
Hat 100% der Verluste gedeckt.
Hat in weniger als 2 Stunden wieder aufgenommen.
Aber das verfolgt mich:
Der Angreifer hat sich dann gemeldet und angeboten, 80% für eine Belohnung zurückzugeben.
Was bedeutet, dass sie nicht einmal versucht haben, sich zu verstecken.
Sie sind durch die Vordertür eines leeren Hauses gegangen, an das sich niemand erinnerte, dass es ihnen gehörte.
Das ist kein "
$SUI -Problem."
Das ist ein
#defi -Architekturproblem.
Wie viele alte Verträge liegen gerade auf deinem Lieblingsprotokoll?🫵
Einmal auditiert.
Aktualisiert.
Vergessen.
Immer noch lebendig on-chain.
Die gruseligsten Hacks sind nicht komplex.
Sie sind geduldig.