Hakkeri varasti rahat, joten Sui pystyi ryöstämään ne?
EsipuheTämä
tapahtuma on voitto pääomalle, ei käyttäjille, ja se on taantuma alan kehitykselle.
Bitcoin vasemmalle, Sui oikealle, ja jokainen hajauttamista ravisteleva toimialaliike tuo vahvemman uskon Bitcoiniin.
Maailma ei tarvitse vain parempaa globaalia rahoitusinfrastruktuuria, vaan ihmisryhmän, joka tarvitsee aina vapautta.
Olipa aikoinaan allianssiketju vauraampi kuin julkinen ketju, koska se täytti tuon aikakauden sääntelytarpeet, ja nyt allianssin rappeutuminen tarkoittaa itse asiassa sitä, että se yksinkertaisesti vastaa tähän kysyntään, ei todellisten käyttäjien tarpeisiin.
1. Tapahtuman tausta
Hakkerit hyökkäsivät 22. toukokuuta 2025 Cetus, Suin julkisen ketjuekosysteemin suurin hajautettu pörssi (DEX), mikä aiheutti likviditeetin jyrkän laskun ja useiden kauppaparien romahtamisen yli 220 miljoonan dollarin tappiolla.
Lehdistöhetkellä aikajana on seuraava:
-
Toukokuun 22. päivän aamuna hakkerit hyökkäsivät Cetuksen kimppuun nostaakseen 230 miljoonaa dollaria, Cetus keskeytti sopimuksen kiireellisesti ja antoi ilmoituksen
-
Iltapäivällä 22. toukokuuta hakkerit siirsivät noin 60 miljoonaa dollaria ketjujen välillä, ja loput 162 miljoonaa dollaria oli edelleen Suin ketjun osoitteessa, Suin validoijat ryhtyivät nopeasti toimiin lisätäkseen hakkeriosoitteen " Deny List", varojen jäädyttäminen
-
Toukokuun 22. päivän iltana Sui CPO @emanabio twiittasi vahvistaakseen: varat on jäädytetty ja paluu alkaa pian
-
23. toukokuuta Cetus alkoi korjata haavoittuvuuksia ja päivittää sopimuksia
-
Toukokuun 24. päivänä Sui avasi PR:n ja selitti, että varat peritään takaisin aliaksen ja valkoisen listan avulla
-
Sui käynnisti 26. toukokuuta ketjun sisäisen hallintoäänestyksen, jossa ehdotettiin, toteutetaanko protokollapäivitys ja siirretäänkö hakkerin varat escrow-osoitteeseen
-
29. toukokuuta julkistettiin äänestystulokset, ja paino tuki yli 2/3 validointisolmuista; Protokollapäivitys on valmis suoritettavaksi
-
Toukokuun 30. päivästä kesäkuun alkuun protokollapäivitys tulee voimaan, määritetty tapahtuman hajautusarvo suoritetaan ja hakkerivarat "siirretään laillisesti"
2
Hyökkääjä käytti ensin pikalainaa lainatakseen noin 10 024 321,28 haSUI:ta, mikä laski kaupankäyntipoolin hintaa välittömästi
99,90 %. Tämä valtava myyntitoimeksianto laski poolin tavoitehinnan noin 1,8956 × 10^19:stä 1,8425:een × 10^19:ään, melkein pohjalle.
Tämänjälkeen hyökkääjä luo likviditeettiposition Cetukseen erittäin kapealla alueella (tickin alaraja 300000, yläraja 300200 ja intervallin leveys vain 1,00496621 %). Tällainen kapea väli vahvistaa myöhempien laskentavirheiden vaikutusta tarvittavien tokenien määrään.
Hyökkäyksen ydinperiaate
on, että get_delta_a-funktiossa, jota Cetus käyttää tarvittavan määrän tokenien laskemiseen, on kokonaislukujen ylivuotohaavoittuvuus. Hyökkääjä ilmoitti tarkoituksella haluavansa lisätä valtavan määrän likviditeettiä (noin 10^37 yksikköä), mutta itse asiassa laittoi sopimukseen vain 1 tokenin.
checked_shlw:n väärän ylivuodon havaitsemisehdon vuoksi sopimus katkaistiin korkealle tasolle vasemmanvaihdon laskennassa, mikä sai järjestelmän aliarvioimaan vakavasti tarvittavan haSUI:n määrän ja siten vaihtamaan valtavan määrän likviditeettiä hyvin pienillä kustannuksilla.
Teknisesti edellä mainittu haavoittuvuus johtuu siitä, että Cetus käyttää virheellisiä naamioita ja arviointiehtoja Move-älysopimuksessa, mikä johtaa siihen, että mikä tahansa arvo, joka on alle 0xffffffffffffffff << 192, pystyy ohittamaan havaitsemisen; Kun 64 bittiä on siirretty vasemmalle, korkean tason tiedot katkaistaan, ja järjestelmä veloittaa vain hyvin pienen määrän tokeneita katsoakseen, että se on saanut paljon likviditeettiä.
Tapahtuman jälkeen johdettiin 2 virallista operaatiota: "jäädyttäminen" vs "palautus", joka on kaksi vaihetta:
-
jäädytysvaihe suoritetaan Deny List + solmun konsensuksella;
-
Takaisinperintävaiheessa tarvitaan ketjun sisäinen protokollapäivitys + yhteisön äänestys + nimetty transaktion suoritus mustan listan ohittamiseksi.
3. Suin jäädytysmekanismSui-ketjussa
on erityinen Deny List (denylist) -mekanismi, joka toteuttaa hakkerivarojen jäädyttämisen. Sen lisäksi Suin token-standardissa on myös "säännelty token" -malli, jossa on sisäänrakennettu jäädytystoiminto.
Tämä hätäjäädytys hyödyntää tätä ominaisuutta: validointisolmut lisäävät nopeasti varastettuihin varoihin liittyviä osoitteita paikallisiin määritystiedostoihinsa. Teoriassa jokainen solmuoperaattori voi muokata TransactionDenyConfigia päivittääkseen mustan listan itse, mutta verkon johdonmukaisuuden varmistamiseksi Sui Foundationilla on keskitetty koordinointi alkuperäisenä konfiguraation julkaisijana.
Säätiö julkaisi ensin virallisesti kokoonpanopäivityksen hakkerin osoitteella, ja validaattori astui voimaan oletuskokoonpanon mukaisesti, joten hakkerin varat "sinetöitiin" väliaikaisesti ketjuun, jolla on itse asiassa korkea keskitys sen takana
, ettäpelastaakseen uhrit jäädytetyistä varoista Sui-tiimi käynnisti välittömästi valkoisen listan Mekanismin paikat.
Tämä koskee myöhempiä varojen siirtoja. Lailliset tapahtumat voidaan rakentaa etukäteen ja rekisteröidä sallittujen listalle, vaikka rahaston osoite olisi edelleen mustalla listalla, se voidaan panna täytäntöön.
Tämä uusi ominaisuus mahdollistaa transaction_allow_list_skip_all_checks tiettyjen tapahtumien esilisäämisen "sensuuriin", jotta ne voivat ohittaa kaikki turvatarkastukset, mukaan lukien allekirjoitukset, käyttöoikeudet, mustat listat ja paljon muuta.
On tärkeää huomata, että sallittujen luettelon korjaustiedostot eivät suoraan varasta hakkereiden omaisuutta; Se antaa vain tietyille tapahtumille mahdollisuuden ohittaa jäädyttäminen, ja reaaliomaisuuden siirto on silti tehtävä laillisella allekirjoituksella tai ylimääräisellä järjestelmän käyttöoikeusmoduulilla.
Itse asiassa alan valtavirran jäädytysjärjestelmä tapahtuu usein token-sopimustasolla, ja liikkeeseenlaskija hallitsee sitä usean allekirjoituksen osalta.
Esimerkkinä Tetherin liikkeeseen laskema USDT sen sopimuksessa on sisäänrakennettu musta lista -toiminto, ja liikkeeseenlaskija voi jäädyttää loukkaavan osoitteen niin, että se ei voi siirtää USDT:tä. Tämä järjestelmä edellyttää, että multisig käynnistää jäädytyspyynnön ketjussa, ja multisigistä sovitaan ennen sen varsinaista suorittamista, joten suoritus viivästyy.
Vaikka Tether-jäädytysmekanismi on tehokas, tilastot osoittavat, että multisig-prosessissa on usein "ikkuna-aika", joka jättää mahdollisuuksia rikollisille.
Sitä vastoin Suin jäätyminen tapahtuu taustalla olevalla protokollatasolla, sitä ohjaavat kollektiivisesti validointisolmut ja se suoritetaan paljon nopeammin kuin tavalliset sopimuskutsut.
Tässä mallissa se tarkoittaa, että näiden validointisolmujen hallinta itsessään on erittäin yhtenäistä.
4. Suin "siirtokierrätyksen" toteutusperiaate
on vieläkin hämmästyttävämpi, koska Sui ei vain jäädyttänyt hakkerin varoja, vaan myös suunnitteli "siirtävänsä ja palauttavansa" varastetut varat ketjun sisäisten päivitysten avulla.
Toukokuun 27. päivänä Cetus ehdotti yhteisön äänestystä protokollan päivittämisestä jäädytettyjen varojen lähettämiseksi multisig-säilytyslompakkoon. Sui-säätiö aloitti sitten ketjun hallintoäänestyksen.
Äänestyksen tulokset julkistettiin 29. toukokuuta, ja noin 90,9 % validoijista kannatti järjestelmää. Sui ilmoitti virallisesti, että kun ehdotus on hyväksytty, "kaikki kahdelle hakkeritilille jäädytetyt varat palautetaan multisig-lompakkoon ilman hakkerin allekirjoitusta".
Hakkerin ei tarvitse allekirjoittaa, mikä on niin suuri ero, että lohkoketjuteollisuudessa ei ole koskaan ollut tällaista korjausta.
Kuten Suin virallisesta GitHub PR:stä voidaan nähdä, protokolla esittelee osoitteen aliasmekanismin. Päivitys sisältää aliassääntöjen ennalta määrittämisen ProtocolConfigissa, jotta tiettyjä sallittuja tapahtumia voidaan käsitellä ikään kuin laillinen allekirjoitus olisi lähetetty hakkeroidulta tililtä.
Tarkemmin sanottuna suoritettavien pelastustapahtumien hash-luettelo on sidottu kohdeosoitteeseen (eli hakkeriosoitteeseen), ja jokaisen toimeenpanijan, joka allekirjoittaa ja julkaisee yhteenvedon näistä kiinteistä tapahtumista, katsotaan aloittaneen tapahtuman kelvollisena hakkeriosoitteen omistajana. Näissä tapahtumissa validointisolmujärjestelmä ohittaa Estä luettelo -tarkistuksen.
Kooditasolla Sui lisää seuraavan arvion tapahtuman validointilogiikkaan: kun tapahtuma on estetty mustalla listalla, järjestelmä iteroi allekirjoittajansa läpi tarkistaakseen, onko protocol_config.is_tx_allowed_via_aliasing(lähettäjä, allekirjoittaja, tx_digest) totta.
Niin kauan kuin allekirjoittaja täyttää aliassäännön, eli tapahtuman sallitaan kulkea, edellinen sieppausvirhe ohitetaan ja normaali paketin suoritus jatkuu.
5.
160 miljoonaa katselukertaa, mikä repii alan syvimmän taustalla olevan uskomuksen
Cetus-tapaus, kirjoittajan henkilökohtaisesta näkökulmasta tämä voi olla myrsky, joka menee pian ohi, mutta tätä mallia ei unohdeta, koska hän horjutti alan perustaa ja rikkoi myös perinteisen konsensuksen siitä, että lohkoketjua ei voi peukaloida saman pääkirjan alla.
Lohkoketjusuunnittelussa sopimus on laki ja koodi on erotuomari.
Mutta tässä tapauksessa koodi epäonnistui, hallinto puuttui asiaan, ja valta ohitti kaavan muodostaen äänestyskäyttäytymisen kaavan, joka hallitsi koodin tuloksia".
Tämä johtuu siitä, että Suin transaktioiden suora haltuunotto eroaa suuresti hakkereiden käsittelystä valtavirran lohkoketjuissa.
Tämä ei ole ensimmäinen kerta, kun konsensusta on peukaloitu, mutta se on historian hiljaisin
:
-
Ethereumin vuoden 2016 DAO-tapaus käytti kovaa haarukkaa siirron peruuttamiseen tappioiden korvaamiseksi, mutta tämä päätös johti kahden ketjun, Ethereumin ja Ethereum Classicin, jakautumiseen, prosessi oli kiistanalainen, mutta lopulta eri ryhmät muodostivat erilaisia konsensusususkomuksia.
-
Bitcoin-yhteisö on kokenut samanlaisia teknisiä haasteita: kehittäjät korjasivat kiireellisesti arvon leviämishaavoittuvuuden vuonna 2010 ja konsensussääntöjä päivitettiin, mikä poisti kokonaan noin 18,4 miljardia laittomasti tuotettua bitcoinia.
Se on sama hard fork -malli, joka palauttaa kirjanpidon kohtaan, jossa se oli ennen ongelmaa, ja sitten käyttäjä voi silti päättää, minkä kirjanpitojärjestelmän käyttöä jatkaa ongelman aikana.
DAO:n hard forkiin verrattuna Sui ei päättänyt jakaa ketjua, vaan kohdisti tämän tapahtuman tarkasti päivittämällä protokollaa ja määrittämällä aliaksia. Näin tehdessään Sui pitää ketjun jatkuvuuden ja suurimman osan konsensussäännöistä ennallaan, mutta osoittaa myös, että taustalla olevaa protokollaa voidaan käyttää kohdennettujen "pelastusoperaatioiden" toteuttamiseen.
Ongelmana on, että historiallisesti "haarautunut palautus" on käyttäjän uskomusten valinta; Suin "protokollakorjaus" on, että ketju tekee päätöksen puolestasi.
Ei avaimesi, ei kolikkosi? Pelkäänpä, etten enää
Pitkällä aikavälillä tämä tarkoittaa sitä, että ajatus "Ei avaimiasi, ei kolikoitasi" puretaan Sui-ketjussa: vaikka käyttäjän yksityinen avain olisi ehjä, verkko voi silti estää omaisuuden kulun ja ohjata omaisuutta uudelleen työehtosopimusmuutoksilla.
Jos tästä tulee ennakkotapaus lohkoketjulle reagoida laajamittaisiin tietoturvaloukkauksiin tulevaisuudessa, sitä pidetään jopa käytäntönä, jota voidaan noudattaa uudelleen.
"Kun ketju voi rikkoa sääntöjä oikeuden vuoksi, sillä on ennakkotapaus minkä tahansa säännön rikkomisesta."
Kun "julkisen hyvinvoinnin rahanryöstö" on onnistunut, seuraavalla kerralla se voi olla operaatio "moraalisen epäselvyyden vyöhykkeellä".
Mitäsitten tapahtuu?
Hakkeri varasti käyttäjän rahat, joten voiko yleisöäänestys ryöstää häneltä rahat?
Äänestää sen perusteella, kenen rahaa on enemmän (pos) vai enemmän ihmisiä? Jos se, jolla on enemmän rahaa, voittaa, niin Liu Cixinin lopullinen tuottaja tulee pian, ja jos se, jolla on enemmän ihmisiä, voittaa, myös ryhmäväkijoukko on äänekäs.
Perinteisessä järjestelmässä on hyvin normaalia, että laittomat voitot ovat suojaamattomia, ja jäädyttäminen ja siirtäminen ovat perinteisten pankkien rutiinitoimia.
Mutta se, että tätä ei voida tehdä teknisesti, ei ole lohkoketjuteollisuuden kehityksen syy.
Nyt alan vaatimustenmukaisuuden tikku jatkaa käymistä, tänään voit jäädyttää hakkereille ja muokata tilin saldoa, sitten huomenna voit tehdä mielivaltaisia muutoksia maantieteellisille tekijöille ja ristiriitaisille tekijöille. Jos ketjusta tulee osa alueellista työkalua.
Tuon alan arvo on vähentynyt huomattavasti, ja parhaimmillaankin se on vaikeampi rahoitusjärjestelmä.
Tämä on myös syy siihen, miksi kirjoittaja on tiukasti alalla: "Lohkoketju ei ole arvokas siksi, että sitä ei voi jäädyttää, vaan siksi, että vaikka vihaisit sitä, se ei muutu sinulle." "
Voiko ketju säilyttää sielunsa sääntelyn yleisen trendin myötä?
Olipa aikoinaan allianssiketju vauraampi kuin julkinen ketju, koska se täytti tuon aikakauden sääntelytarpeet, ja nyt allianssin rappeutuminen tarkoittaa itse asiassa sitä, että se yksinkertaisesti vastaa tähän kysyntään, ei todellisten käyttäjien tarpeisiin.
Toimialan kehityksen
, tehokkaan keskittämisen näkökulmasta, onko se välttämätön vaihe lohkoketjun kehitykselle? Jos hajauttamisen perimmäisenä tavoitteena on suojella käyttäjien etuja, voimmeko sietää keskittämistä siirtymäkeinona?
Sana "demokratia" on ketjun sisäisen hallinnon yhteydessä itse asiassa token-painotettu. Joten jos hakkerilla on hallussaan suuri määrä SUI:ta (tai jonain päivänä DAO hakkeroidaan ja hakkeri hallitsee ääniä), voiko hän myös "laillisesti äänestää valkopestä itsensä"?
Loppujen lopuksi lohkoketjun arvo ei ole se, voidaanko se jäädyttää, vaan se, päättääkö ryhmä olla tekemättä niin, vaikka sillä olisi kyky jäätyä.
Ketjun tulevaisuutta ei määritä tekninen arkkitehtuuri, vaan joukko uskomuksia, joita se päättää suojella.