Miljoona yhdessä transaktiossa: Ethereumin päivityksestä tuli huijareiden ase

Miljoona yhdessä transaktiossa: Ethereumin päivityksestä tuli huijareiden ase
Kun lompakko muuttuu älykkääksi sopimukseksi: Ethereumin lohkoketjun uusi riskien aikakausi

Elokuun 22. päivänä kirjattiin lähes miljoonan dollarin arvosetelivarkaus. Käyttäjä allekirjoitti Uniswapissa transaktion, joka näytti tavalliselta swapilta. Mitään ilmeisiä merkkejä vaarasta ei ollut: käyttöliittymä näytti tavallista, odotettua operaatiota. Vaihdon sijaan tapahtui kuitenkin piilotettu toiminta. Lompakko sai EIP-7702-standardin mukaiset väliaikaiset "päivitysoikeudet", ja se riitti siihen, että kaikki varat siirrettiin yhdellä siirrolla huijareiden tileille.

Tämä artikkeli on käännetty alkuperäisestä tekstistä. Lue kirjeenvaihtajamme alkuperäinen versio täältä.

Tästä tapauksesta tuli ensimmäinen äänekäs signaali siitä, että uudet Ethereum-standardit, jotka on kehitetty mukavuuden ja tehokkuuden vuoksi, voidaan muuttaa huijauksen välineiksi.

Mikä on EIP-7702

EIP-7702 on Ethereumin parannusehdotus, joka muutti koko verkon kanssa tapahtuvan vuorovaikutuksen luonnetta. Perinteisesti Ethereumissa oli kahdenlaisia tilejä. Ensimmäinen oli ulkoisesti omistettu tili (External Owned Account, EOA), tavallinen lompakko, joka yksinkertaisesti allekirjoittaa transaktiot yksityisellä avaimella. Toinen oli sopimustili, joka sisältää koodia ja jolla voi toteuttaa monimutkaisia skenaarioita.

EIP-7702:n käyttöönotto mahdollisti näiden kahden mallin yhdistymisen. Tavallinen lompakko sai kyvyn käyttäytyä väliaikaisesti älykkään sopimuksen tavoin, mikä tarkoittaa, että se voi yhden transaktion sisällä suorittaa useita toimintoja kerralla. Käyttäjän kannalta tämä näyttää yksinkertaistetulta versiolta niin sanotusta tilin abstraktiosta: ei tarvitse allekirjoittaa jokaista toimintoa erikseen ja maksaa kymmenistä transaktioista. Yksi ainoa vahvistus voi suorittaa koko skenaarion.

Näin se toimii teknisesti

Klassisessa EOA-mallissa toimet rajoittuivat yksinkertaisiin siirtoihin tai älykkään sopimuksen toimintojen kutsumiseen. EIP-7702:n tapauksessa lompakko lataa väliaikaista koodia, joka toimii vain yhden transaktion ajan. Tämä koodi voi sisältää sarjan erilaisia ohjeita: esimerkiksi suorittaa ensin swap-toiminto hajautetussa pörssissä, lähettää sitten osan rahakkeista toiseen osoitteeseen ja olla samanaikaisesti vuorovaikutuksessa likviditeettiprotokollan kanssa.

Kun transaktio on suoritettu, väliaikainen koodi katoaa ja tili palaa normaalitilaansa. Tämä lähestymistapa ratkaisee aidosti monia ongelmia, mikä tekee DeFi-operaatioista helpompia ja halvempia. Mutta juuri tästä joustavuudesta on tullut uusien hyökkäysten perusta.

Miksi lompakot eivät varoita vaarasta

Tärkein syy on se, että EIP-7702:n mukaiset transaktiot näyttävät teknisesti tavalliselta koodipäivitykseltä. Lompakon käyttöliittymä saa vain yleistä tietoa: käyttäjä allekirjoittaa transaktion, joka sisältää initCoden, ja tämä koodi suoritetaan lohkon sisällä. Yksinään nämä tiedot eivät sisällä ilmeistä vaarasignaalia. Lompakko ei voi tunnistaa, että koodiin kätkeytyy käsky "siirtää kaikki tokenit".

Toinen komplikaatio on se, että standardi on vielä uusi, eivätkä useimmat asiakkaat ja lompakot vielä ymmärrä EIP-7702:n logiikkaa. Klassisten transaktioiden tapauksessa lompakko voi selvästi näyttää "lähetät 2 ETH osoitteeseen X". Kun kyseessä on 7702, se näkee kuitenkin vain yleisen joukon ohjeita, jotka suoritetaan reaaliajassa virtuaalikoneessa. Tämän selittäminen käyttäjälle edellyttäisi monimutkaista integrointia ja käytännössä sisäänrakennettua koodianalysaattoria - jotain sellaista, mitä ei vielä ole valtavirran lompakoissa.

Tämän seurauksena käyttäjä näkee vain "tavallisen vaihdon" tai "hyväksynnän", kun taas transaktion todellinen logiikka jää piiloon. Tämä kuilu teknisen monimutkaisuuden ja visuaalisen esityksen välillä luo ihanteellisen kentän väärinkäytölle.

EIP-7702:n tie

EIP-7702 ei ilmestynyt tyhjästä. Ethereum on jo pitkään ollut siirtymässä kohti tilin abstraktiota, jossa lompakon ja älysopimuksen välinen raja katoaa. Aikaisemmissa vaiheissa, erityisesti EIP-4337:ssä, transaktioiden käsittely siirrettiin erityisiin "niputtajiin".

Uudesta ehdotuksesta tuli yksinkertaisempi mutta radikaalimpi vaihtoehto, jossa logiikka suoritetaan suoraan käyttäjän tilillä ilman lisäkerroksia. Tämä tehosti transaktioita, mutta avasi myös uusia hyökkäysmahdollisuuksia.

Innovaation ja riskin tasapainottaminen

Miljoonan dollarin varkaus kuvaa Ethereumin kehityksen paradoksia. Jokainen uusi parannus avaa oven mukavuuteen ja joustavuuteen, mutta luo samalla uuden vaaratason. Kehittäjät visioivat monitoimitransaktioita ja halvempia DeFi-skenaarioita, mutta käytännössä ensimmäinen laajalle levinnyt käyttötapaus osoittautui hienostuneeksi phishingiksi.

EIP-7702 on avannut Ethereumille uuden aikakauden, jossa tavallisesta lompakosta voi tulla muutamaksi sekunniksi älykäs sopimus. Se on askel kohti universaalia tilimallia, mutta myös muistutus siitä, että innovaatioihin liittyy aina riski. Siinä missä kehittäjät näkevät tehokkuutta, huijarit näkevät keinon tyhjentää miljoonia yhdellä allekirjoituksella.

Tämä materiaali saattaa sisältää kolmansien osapuolten mielipiteitä, eikä mikään tällä verkkosivulla oleva tieto tai data muodosta sijoitusneuvontaa Vastuuvapauslausekkeemme mukaisesti. Vaikka noudatamme tiukkaa Toimituksellista Integriteettiä, tämä julkaisu saattaa sisältää viittauksia kumppaneidemme tuotteisiin.