Määritelmä
Approval exploit -hyökkäys on tietoturvariski, jossa hyökkääjä käyttää hyväkseen tokenien approval‑ tai allowance‑mekanismeja siirtääkseen uhrin varoja ilman erillistä lisäsuostumusta. Se syntyy tyypillisesti, kun smart contract (älysopimus) tai käyttöliittymä saa käyttäjän myöntämään liian laajoja tai turvattomia allowance‑oikeuksia, joita hyökkääjä sitten käyttää pahantahtoisten tai vaarantuneiden sopimusten kautta. Hyökkäys ei yleensä riko taustalla olevaa token‑standardia, vaan väärinkäyttää tokenin approval‑logiikkaan koodattua, sinänsä oikeaa valtuutusmallia. Tämän seurauksena varojen siirto on teknisesti pätevä on-chain, vaikka se rikkoo käyttäjän turvallisuusodotuksia ja käsitystä valtuutuksen laajuudesta.
Tämä riski liittyy tiiviisti siihen, miten tokenien allowance‑tilat tallennetaan ja miten smart contractit (älysopimukset) viittaavat niihin. Kun hyökkääjä saa käyttöönsä suuren tai rajattoman allowance‑oikeuden, hän voi toistuvasti kutsua siirtotoimintoja käyttäjän osoitteen puolesta, kunnes hyväksytty saldo on tyhjennetty. Approval exploit -hyökkäykset nojaavat usein harhaanjohtaviin transaktiokehoteisiin, hämääviin sopimusnimiin tai aiemmin myönnettyjen oikeuksien uudelleenkäyttöön odottamattomilla tavoilla. Ydintuntomerkki on ristiriita sen välillä, mitä käyttäjä uskoo valtuuttaneensa ja mitä allowance tosiasiassa sallii käytännössä.
Konteksti ja käyttö
Tietoturvakeskusteluissa approval exploit -hyökkäystä pidetään käyttöoikeuksien väärinkäyttöön liittyvänä riskinä, ei suorana protokollan pettämisenä. Se yhdistetään usein ERC‑20‑tyylisiin token‑ratkaisuihin, joissa erillinen approval‑vaihe asettaa allowance‑rajan, jota muut sopimukset voivat käyttää. Kun näitä allowance‑oikeuksia määritetään väärin, ei koskaan peruta tai myönnetään epäluotettaville sopimuksille, ne muodostavat pysyvän hyökkäyspinnan, jonka vastustajat voivat aktivoida myöhemmin. Hyökkäys sijoittuu siten smart contract -suunnittelun, wallet‑käyttökokemuksen ja käyttäjän ymmärryksen on-chain‑valtuutuksista risteyskohtaan.
Termiä käytetään usein yhdessä allowance‑käsitteen kanssa kuvaamaan, kuinka tarkkarajaisia tai helposti peruttavia token‑käyttöoikeuksien tulisi olla. Tietoturva‑auditoijat ja protokollasuunnittelijat pitävät approval exploit -hyökkäyksiä omana uhkakategorianaan, joka on otettava huomioon sopimusrajapintoja ja käyttöoikeusvirtoja suunniteltaessa. Tapausraporteissa hyökkäyksen luokittelu approval exploit -hyökkäykseksi korostaa, että hyökkääjä toimi muodollisesti myönnettyjen oikeuksien puitteissa, vaikka nämä oikeudet oli hankittu tai rakennettu harhaanjohtavalla tai turvattomalla tavalla. Tämä luokittelu auttaa erottamaan sen virheistä, jotka johtuvat esimerkiksi aritmeettisista laskentavirheistä, reentrancy‑ongelmista tai muista matalan tason sopimusvioista.