Miksi lompakkosi näyttää siirron, jota et koskaan lähettänyt: nollasummasiirrot ja osoitemyrkytys
Tuntematon lähtevä tapahtuma ei automaattisesti tarkoita, että lompakkosi olisi murrettu. Opi, mitä nollasummamerkinnät, samannäköiset osoitteet ja todelliset varojen siirrot todella osoittavat.
Mitä tämä merkintä todistaa lompakostani?
Jos tapahtumahistoriassasi lukee yhtäkkiä, että lähetit 0 USDT:tä tuntemattomaan osoitteeseen, se ei yksin osoita, että kukaan olisi saanut yksityisen avaimesi haltuunsa. Kolmas osapuoli voi luoda tietynlaisia nollan tokenin siirtomerkintöjä, joissa osoitteesi mainitaan, ilman allekirjoitustasi tai lupaa käyttää nollaa suurempaa määrää. Merkintä voi olla lohkoketjussa, vaikka et koskaan aloittanut tapahtumaa.
Hyödyllisempiä kysymyksiä ovat: Mikä varallisuuserä on kyseessä? Kuinka paljon todella siirtyi? Kuka lähetti tapahtuman? Mikä valtuutti mahdollisen todellisen varojen käytön?
- Nollamääräinen token-tapahtuma ei osoita, että olisit allekirjoittanut tai käyttänyt mitään. Aidon tokenin täsmälleen nollan suuruinen määrä tarkoittaa, ettei kyseinen siirto liikuttanut tokeneita.
- Tutulla tokenin nimellä näkyvä siirto ei yksilöi varallisuuserää. Asiaan liittymätön älysopimus voi käyttää samaa nimeä ja tunnusta.
- Pieni saapuva maksu voi olla aito mutta samalla istuttaa historiaasi harhaanjohtavan lähettäjäosoitteen.
- Vahvistettu, selittämätön aitojen varojen lähtösiirto vaatii selvittämistä. Älä sivuuta sitä vain siksi, että toisessa kentässä lukee nolla.
Tässä oppaassa käsitellään Ethereumia, BNB Smart Chainia (BSC) ja vastaavia verkkoja, jotka käyttävät Ethereum-tyylisiä token-sopimuksia. Esimerkit ovat tarkoituksella yksinkertaistettuja, keksittyjä merkintöjä, eivät kuvakaappauksia tai havaintoja mistään tietystä lompakosta.
Selvitä ensin, missä kentässä lukee nolla
Ilmausta nollasummainen tapahtuma käytetään monesta eri asiasta. Vain yksi seuraavista näytöistä kertoo tokenien määrän olevan nolla:
- Tokenien määrä: 0 USDC. Aidossa USDC-sopimuksessa täsmälleen nolla tarkoittaa, ettei kyseisessä siirrossa liiku USDC:tä.
- Tapahtuman arvo: 0 ETH. Päätapahtumaan ei liitetty ETH:ta. Tokeneita voi silti siirtyä, ja sopimustoimintoja voidaan silti suorittaa.
- Arvioitu arvo: $0.00. Käyttöliittymä näyttää arvion fiat-valuutassa. Se ei osoita tokenien määrää.
BSC:ssä alkuperäisen kolikon kenttä käyttää yleensä BNB:tä ETH:n sijasta. Sopimuskutsu, jonka natiiviarvo on nolla, voi siirtää tokeneita, muuttaa käyttöoikeuksia tai käynnistää muita toimintoja. Natiiviarvo on erillinen tapahtuman syötetiedoista.
Pieni positiivinen summa voidaan pyöristää arvoon $0.00. Jos varallisuuserälle ei ole luotettavaa hintaa, fiat-arvo voi myös olla epäinformatiivinen. Avaa tokenien määrä täydellä tarkkuudella: jopa näytetty token-määrä 0.00 voi peittää pienemmän positiivisen määrän. Salkun arvon muuttuminen ei ole luotettava kirjanpito tilille saapuneista tai sieltä lähteneistä yksiköistä.
Nolla on sallittu token-määrä, joten nolla yksin ei osoita hyökkäystä. Samannäköiset osoitteet ja kopioidut maksutiedot ovat vihjeitä, jotka kannattaa tutkia.
Miksi kaksi Lähettäjä-kenttää voivat olla eri mieltä
Lompakon tapahtumahistoria voi yhdistää tietoa eri tasoilta:
- Tapahtuma: verkkoon lähetetty allekirjoitettu ohje. Tavallisessa Ethereum-tapahtumassa pääasiallinen From-kenttä yksilöi allekirjoittaneen tilin.
- Token-tapahtumaloki: sopimuksen suorituksen aikana tuottama merkintä. Transfer-tapahtumalla on omat From-, To- ja määrä-kenttänsä.
- Historiarivi: lompakon tai lohkoketjuselaimen esitystapa tiedoista. Se voi merkitä tapahtuman OUT-merkinnällä, koska tapahtumalokissa osoitteesi mainitaan lähettäjänä.
Nämä kaksi From-kenttää eivät tarkoita samaa. Osoitteesi esiintyminen tapahtumalokissa ei ole lompakkosi allekirjoitus. Haitallinen sopimus voi sijoittaa osoitteesi lokitietoihin, mutta se ei tarkoita, että loki olisi peräisin aidosta token-sopimuksesta. Lokin tuottanut sopimus on siksi olennainen osa todistusaineistoa.
Samoin tapahtumatiiviste yksilöi tapahtuman mutta ei todista suostumustasi. Lohkoon sisällytetty Success-tilainen tapahtuma kertoo, ettei sen ulompi suoritus peruuntunut. Se ei ole hyväksyntä tokenille, vastaanottajalle tai tarkoitukselle.
Viisi selitettyä esimerkkiä tapahtumahistoriasta
Esimerkki 1: Lähtevä nollan tokenin siirto, jota et allekirjoittanut
Historiavienti: OUT · 0 USDC · Osoitteestasi tuntemattomaan samannäköiseen osoitteeseen.
- Tapahtuman From: asiaan liittymätön tili lähetti tapahtuman.
- Token-lokin From: tapahtuma nimeää osoitteesi.
- Lokin tuottanut token-sopimus: tämän verkon aito USDC-sopimus.
- Tokenien tarkka määrä: nolla.
Mitä tämä osoittaa: aito token-sopimus kirjasi nollan tokenin siirron, jossa osoitteesi mainitaan. Kyseinen siirto ei liikuttanut USDC:tä. Se ei osoita, että lompakkosi olisi allekirjoittanut tapahtuman, että kutsujalla olisi lupa käyttää positiivista määrää tai että avaimesi olisi varastettu.
Miten tämä tapahtuu: yleinen token-standardi ERC-20 vaatii, että nollasummasiirroista syntyy Transfer-tapahtuma. Tavallisissa toteutuksissa valtuutettu siirtofunktio transferFrom tarkistaa, ylittääkö pyydetty määrä kutsujan käyttöoikeusrajan. Nolla ei ylitä nollan suuruista rajaa. Sopimuksen muista säännöistä riippuen kutsu voi onnistua ilman aikaisempaa hyväksyntää.
Tämä ei ole yleispätevä lupaus jokaisesta tokenista. Yksittäiset sopimukset voivat asettaa lisärajoituksia.
Mitä tarkistaa seuraavaksi: tutki tapahtuman muut osat. Nollarivi kuvaa vain kyseistä riviä; toisella toiminnolla voi olla eri vaikutus. Jos kyseessä on yksittäinen osoitemyrkytysmerkintä eikä epäilyttäviä varojen käyttöjä tai oikeusmuutoksia näy, oikea reaktio on välttää istutettua osoitetta eikä olettaa, että lompakko pitää vaihtaa.
Esimerkki 2: Väärennetty tapahtuma, jossa näkyy suuri token-määrä
Historiavienti: OUT · 2,500 USDC · Osoitteestasi tuntemattomaan osoitteeseen.
- Näytetty token-tunnus: USDC.
- Lokin tuottanut sopimus: asiaan liittymätön sopimus, ei aito USDC.
- Lokin ilmoittama määrä: 2,500.
- Aitoa USDC:tä siirtyi tapahtumassa: ei lainkaan.
Mitä tämä osoittaa: toinen sopimus tuotti merkinnän, joka näytetään USDC-tunnuksella. Se ei todista, että tililtäsi olisi lähtenyt 2,500 aitoa USDC:tä.
Lompakon väärennetty tapahtuma voi olla aitoa lohkoketjudataa, jonka tulkinta johtaa harhaan. Hyökkääjät voivat kopioida tokenin nimen ja tunnuksen ja tuottaa aiempia maksujasi muistuttavia tapahtumia, myös samoilla summilla. Epästandardit sopimukset voivat lisäksi tuottaa siirtomerkintöjä, jotka eivät vastaa edes niiden omia saldomuutoksia.
Mitä tarkistaa seuraavaksi: selvitä verkko ja tapahtumalokin tuottaneen sopimuksen tarkka osoite. Vertaa sitä liikkeeseenlaskijan kyseiselle verkolle itsenäisesti hankittuihin sopimustietoihin. Tuttu tunnus, logo tai lähdekoodin vahvistusmerkintä ei riitä todistamaan liikkeeseenlaskijan identiteettiä.
Esimerkki 3: Pieni oikea maksu samannäköisestä osoitteesta
Historiavienti: IN · 0.000001 USDC · Tuntemattomasta osoitteesta osoitteeseesi.
Oletetaan, että aito token-sopimus vahvistaa siirron ja token-saldosi kasvaa kyseisellä pienellä määrällä. Tässä oikeita tokeneita saapui. Vastaanottaminen ei vaatinut lähettäjän hyväksymistä eikä anna lähettäjälle oikeutta käyttää varojasi.
Ansa on osoitteessa. Tarkastele näitä keksittyjä esimerkkejä, joissa merkit on ryhmitelty välilyönnein niiden näkyvyyden varmistamiseksi. Oikeissa osoitteissa ei ole välilyöntejä; lihavoidut keskiosat eroavat:
Vahvistettu vastaanottaja: 0x7a2f 1111 2222 3333 4444 5555 6666 7777 8888 9c4d
Istutettu osoite: 0x7a2f aaaa bbbb cccc dddd eeee ffff 0000 1111 9c4d
Käyttöliittymä, joka näyttää vain alun ja lopun, voisi esittää molemmat muodossa 0x7a2f...9c4d.
Mitä tämä osoittaa: joku lähetti sinulle pienen määrän tästä osoitteesta. Se ei todista, että lähettäjä olisi tavallinen maksunsaajasi tai hallitsemasi tili. Samat näkyvät merkit eivät osoita omistajuutta.
Mitä tarkistaa seuraavaksi: hae tarkoitettu kohde erikseen vahvistetulta yhteyshenkilöltä tai vastaanottajan luotetulta tilisivulta. Vertaa koko osoitetta. Osoitemyrkytys pyrkii muuttamaan istutetun historiarivin osoitteeksi, jonka valitset myöhempään maksuun. Menetys voi tapahtua myöhemmin, kun valtuutat täysin kelvollisen siirron väärään kohteeseen.
Esimerkki 4: Nolla ETH:ta, mutta 2,500 aitoa tokenia lähtee
Tapahtuman otsake: Value · 0 ETH.
- Kutsuun liitetty natiiviarvo: 0 ETH.
- Aitojen tokenien siirto: 2,500 USDC osoitteestasi.
- Tämän tapahtuman aiheuttama USDC-saldon muutos: vähennys 2,500 USDC.
- Suorituksen tila: Success.
Mitä tämä osoittaa: esimerkissä aitoa USDC:tä lähti. Nolla kuvaa kutsuun liitettyä ETH:ta. Se ei kuvaa USDC-siirtoa eikä sulje pois kaasukuluja.
Mikä jää epäselväksi: miksi maksu tapahtui ja tarkoititko sitä. Kyse voi olla vaihdosta, talletuksesta, ajastetusta toiminnosta, väärään osoitteeseen tehdystä maksusta tai luvattomasta varojen käytöstä. Vertaa sitä tekemääsi toimeen ja aiottuun kohteeseen ennen luokittelua.
Esimerkki 5: Aitoja tokeneita lähtee, mutta toinen tili lähetti tapahtuman
Historiavienti: OUT · 500 aitoa USDC:tä · Tuntematon kohde.
Oletetaan, että onnistunut tapahtuma pienensi aitoa USDC-saldoasi 500:lla, vaikka sen pääasiallisessa From-kentässä lukee joku muu.
Mitä tämä osoittaa: tokenit siirtyivät. Eri tapahtumalähettäjä ei tee siirrosta väärennettyä.
Aiemmin hyväksytty varojen käyttäjä voi hyödyntää token-käyttöoikeutta ilman, että allekirjoitat jokaisen noston erikseen. Jotkin tokenit tukevat myös permit-allekirjoituksia, jotka valtuuttavat käyttöoikeuden allekirjoitetulla viestillä, jonka toinen osapuoli voi lähettää. Älytilit ja delegoidut lompakot tarjoavat lisää tapoja, joilla joku muu voi lähettää valtuutetun toiminnon.
Mitä tarkistaa seuraavaksi: tutki varojen käyttäjä, asiaan liittyvä käyttöoikeus tai allekirjoitettu lupa sekä lompakon toiminto. Jos vähennys jää selittämättömäksi, käsittele sitä tietoturvapoikkeamana. Todisteet voivat viitata haitalliseen hyväksyntään, harhaanjohtavaan allekirjoitukseen tai tilin hallinnan vaarantumiseen; rivi yksin ei erota niitä.
Tavallisessa suoraan allekirjoitetussa tapahtumassa osoitteesi pääasiallisessa From-kentässä on näyttö voimassa olevasta tilin allekirjoituksesta. Se ei silti todista, että ymmärsit toiminnon, tarkoitit kyseistä vastaanottajaa tai aloitit tapahtuman henkilökohtaisesti. Token-lokin From-kenttä antaa huomattavasti vähemmän näyttöä.
Mitä 270 miljoonan osoitemyrkytysyrityksen tutkimuksessa todella mitattiin
Ethereum- ja BSC-verkon toimintaa kahden vuoden ajalta, 1. heinäkuuta 2022 – 30. kesäkuuta 2024, tarkastellut analyysi tunnisti noin 270 miljoonaa myrkytyssiirtomerkintää, jotka kohdistuivat 17 miljoonaan osoitteeseen.
Merkinnät jakautuivat kolmeen luokkaan:
- 147.7 miljoonaa nollasummasiirtoa.
- 118.4 miljoonaa väärennetyn tokenin siirtoa.
- 4.0 miljoonaa pientä siirtoa.
Nämä siirtomerkinnät sisältyivät noin 18.2 miljoonaan tapahtumaan, sillä hyökkääjät voivat niputtaa merkintöjä yhteen. Kohdeosoitteet eivät ole sama asia kuin henkilöt, murretut lompakot tai rahaa menettäneet uhrit.
Analyysi tunnisti 6,633 onnistunutta huijausmaksua, joiden yhteisarvo oli vähintään $83.8 miljoonaa. Osa uhreista maksoi useammin kuin kerran. Havaitseminen keskittyi valittuihin vakaavaluuttoihin, joten arvio tappioista on tämän rajauksen alaraja, ei kaikkien tokenien ja ketjujen kokonaissumma.
Käytännössä vain nollasummien tarkistaminen jättää merkittävän osan hyökkäyksestä huomaamatta. Väärennetyt merkinnät voivat jäljitellä merkittävää maksua, ja pieni saapuva siirto voi liikuttaa oikeita tokeneita samalla kun se tuo historiaan vaarallisen osoitteen.
Näin tutkit juuri oman merkintäsi
- Avaa tapahtuma oikeassa verkossa. Käytä lompakkosi lohkoketjuselainvalintaa tai tunnettua selainta, kuten Etherscan tai BscScan. Tarkista tapahtuman tila. Julkisten tapahtumatietojen lukeminen ei vaadi lompakon yhdistämistä, tokenien hyväksymistä, viestin allekirjoittamista tai palautuslausekkeen syöttämistä.
- Tunnista oikea varallisuuserä. Erota natiivi ETH tai BNB samannimistä tokeneista. Tarkista tokeneille tarkka verkko ja lokin tuottanut sopimus luotettavaa liikkeeseenlaskijan lähdettä vasten.
- Lue määrä täydellä tarkkuudella. Erota tokenien lukumäärä tapahtuman natiiviarvosta ja fiat-arviosta.
- Erota tapahtuman lähettäjä tapahtumalokin lähettäjästä. Älytilin tapauksessa tutki myös lompakon toiminto ja sen oikeudet. Se, että joku muu maksaa kaasun, ei todista etteivät varasi olisi voineet siirtyä.
- Tarkasta koko tapahtuma. Käy läpi kaikki token-liikkeet, natiivikolikon siirrot ja olennaiset oikeusmuutokset. Jos lohkoketjuselain näyttää tapahtumakohtaiset saldomuutokset, käytä niitä tuloksen täsmäyttämiseen. Tämän päivän muuttumaton saldo on heikompi todiste: myöhemmät talletukset tai vastakkaissuuntaiset siirrot voivat peittää aiemman liikkeen.
- Vahvista kohde riippumattomasti. Käytä vastaanottajan luotettuja maksutietoja tai aiemmin vahvistamaasi osoitekirjamerkintää. Tuore historiarivi on tutkittava vihje, ei todiste oikeasta kohteesta.
Jos lohkoketjuselain ei selvennä tulosta, anna lompakkopalvelun viralliselle tuelle verkko ja julkinen tapahtumatiiviste. Kuvaile odottamasi toiminto, jos sellainen oli. Nämä tiedot auttavat erottamaan vieraalta näyttävän mutta tarkoitetun toiminnon selittämättömästä varojen käytöstä paljastamatta lompakkosi hallintaan tarvittavia salaisuuksia.
Mitä tehdä tarkistuksen jälkeen
Jos löysit vain yksittäisen osoitemyrkytysmerkinnän
Piilota roskaposti tai ilmoita siitä, jos lompakkosi tukee sitä, äläkä käytä sen osoitteita. Rivin piilottaminen muuttaa käyttöliittymää; se ei poista lohkoketjuhistoriaa eikä peruuta oikeuksia.
Nollasiirto voi tapahtua nollan suuruisella käyttöoikeudella, joten merkintä yksin ei ole syy peruuttaa kaikkia hyväksyntöjä tai siirtää kaikkia varoja. Merkintään ei välttämättä liity mitään poistettavaa käyttöoikeutta. Älä koskaan käytä tokenin mainostamaa sivustoa tai vieraan palautuslinkkiä lompakkosi ”puhdistamiseen”.
Jos löysit epäilyttävän varojen käyttöoikeuden
Tarkista ja peruuta kyseinen käyttöoikeus lompakkosi luotettua hyväksyntöjen hallintareittiä pitkin. Verkkosivuston yhteyden katkaiseminen lompakosta ei peruuta sen olemassa olevia lohkoketjuun kirjattuja token-hyväksyntöjä. Peruuttaminen vaikuttaa kyseiseen oikeuteen; se ei korjaa varastettua yksityistä avainta.
Jos aitoja varoja siirtyi ilman tahtoasi
Säilytä tapahtumatiiviste, verkon nimi, kyseinen varallisuuserä ja asiaankuuluvat osoitteet. Tarkista viimeaikaiset allekirjoitukset, hyväksynnät ja lompakkotoiminnot virallisten tukikanavien kautta.
Jos on näyttöä palautuslausekkeen tai yksityisen avaimesi paljastumisesta, luo luotetulla laitteella uusi lompakko uudella palautuslausekkeella ja siirrä jäljellä olevat varat huolellisen suunnitelman mukaan. Toinen vaarantuneesta lausekkeesta johdettu tili ei poista altistumista. Jos varat katoavat automaattisesti, älä lisää jatkuvasti kaasurahaa: automaattinen tyhjentäjä saattaa viedä sen.
Jos allekirjoitit maksun tietoisesti mutta kopioit myrkytetyn kohdeosoitteen, kirjaa tämä ero. Maksu saatettiin allekirjoittaa ja suorittaa oikein, vaikka se meni väärälle vastaanottajalle. Se ei yksin osoita, että yksityinen avaimesi olisi varastettu.
Yleisiä kysymyksiä tuntemattomista tapahtumista
Pakottiko hyökkääjä minut maksamaan kaasumaksun?
Tavallisessa osoitemyrkytyksessä hyökkääjä lähettää tapahtuman ja maksaa sen verkkomaksun. Pelkkä osoitteesi mainitseminen token-tapahtumassa ei veloita tiliäsi. Sponsoroidut tapahtumat ja älytilit kuitenkin tarkoittavat, ettei maksun maksaja yksin osoita toiminnon olleen harmiton. Tarkista todelliset vaikutukset.
Entä jos tapahtuma epäonnistui?
Peruuntunut token-siirto ei toteuttanut siirtoa, vaikka kaasua voidaan silti veloittaa. Jos lompakko käyttää tilin delegointia, tarkista se erikseen: Ethereum voi säilyttää delegoinnin, vaikka myöhempi suoritus epäonnistuu. Tuntematon delegointi ansaitsee tarkastelun.
Estäisikö laitteistolompakko osoitemyrkytyksen?
Se tarjoaa toisen paikan tarkistaa kohde ennen allekirjoittamista. Se ei muuta hyökkääjän hallitsemaa kohdetta oikeaksi, jos hyväksyt sen. Vertaa luotetulla allekirjoitusnäytöllä näkyvää kokonaista osoitetta itsenäisesti vahvistettuihin vastaanottajatietoihin.
Voinko estää vieraita lisäämästä näitä merkintöjä?
Et yleensä voi estää kolmansia osapuolia lähettämästä varoja tai luomasta julkiseen osoitteeseen liittyviä soveltuvia merkintöjä. Lompakon ja lohkoketjuselaimen suodattimet voivat vähentää näkemääsi. Tallenna vahvistetut vastaanottajat ja tarkista koko kohdeosoite ennen maksamista; pelkkä nollasummamerkintöjen piilottaminen ei tunnista jokaista väärennettyä tai pienen siirron muunnelmaa.
