Coinnoti
☰
Filipino (Tagalog)tl
Bumalik sa blog

Bakit May Transfer sa Wallet Mo na Hindi Mo Ipinadala: Mga Zero-Value Transaction at Address Poisoning

Ang isang hindi kilalang outgoing transaction ay hindi awtomatikong nangangahulugang na-hack ang wallet mo. Alamin kung ano talaga ang napapatunayan ng mga zero-value record, magkakahawig na address, at aktuwal na paggalaw ng asset.

Ano ang pinatutunayan ng entry na ito tungkol sa wallet ko?

Kung biglang nakasaad sa history mo na nagpadala ka ng 0 USDT sa hindi pamilyar na address, hindi sapat ang entry na iyon para patunayang may nakakuha ng access sa private key mo. Maaaring gumawa ang ibang tao ng ilang zero-token transfer record na nakapangalan sa address mo nang walang pirma mo o pahintulot na gumastos ng halagang higit sa zero. Maaaring nasa blockchain ang record kahit hindi mo kailanman sinimulan ang transaction.

Mas tiyak ang mga kapaki-pakinabang na tanong: Anong asset ito? Gaano karami ang talagang nailipat? Sino ang nagsumite ng transaction? Ano ang nagbigay-pahintulot sa anumang totoong paggastos?

  • Ang zero-amount token event ay hindi patunay na may pinirmahan o ginastos ka. Para sa tunay na token, ang eksaktong zero na halaga ay nangangahulugang walang token na nailipat sa partikular na transfer na iyon.
  • Ang transfer na may pamilyar na pangalan ng token ay hindi sapat para matukoy ang asset. Maaaring gamitin ng ibang contract ang parehong pangalan at simbolo.
  • Ang napakaliit na papasok na bayad ay maaaring tunay ngunit naglalagay ng mapanlinlang na sender address sa history mo.
  • Ang kumpirmado at hindi maipaliwanag na paglabas ng mga tunay na asset ay kailangang imbestigahan. Huwag itong balewalain dahil lang zero ang nasa ibang field.

Saklaw ng gabay na ito ang Ethereum, BNB Smart Chain (BSC), at mga katulad na network na gumagamit ng Ethereum-style token contracts. Ang mga halimbawa ay sadyang pinasimple at gawa-gawang record, hindi mga screenshot o natuklasan tungkol sa isang partikular na wallet.

Una, tukuyin kung aling field ang nagsasabing zero

Ginagamit ang terminong zero value transaction para sa ilang magkakaibang bagay. Isa lang sa mga ipinapakitang ito ang nagsasabing zero ang dami ng token:

  • Halaga ng token: 0 USDC. Para sa tunay na USDC contract, ang eksaktong zero ay nangangahulugang walang USDC na inililipat ang partikular na transfer na iyon.
  • Halaga ng transaction: 0 ETH. Walang ETH na kasama sa pangunahing transaction. Maaari pa ring lumipat ang mga token at maisagawa ang mga aksyon ng contract.
  • Tinatayang halaga: $0.00. Ipinapakita ng interface ang halaga sa fiat currency. Hindi nito pinatutunayan ang dami ng token.

Sa BSC, karaniwang BNB sa halip na ETH ang ginagamit sa field ng native coin. Ang pakikipag-ugnayan sa contract na may zero native value ay maaari pa ring maglipat ng token, magbago ng pahintulot sa paggastos, o magpatakbo ng ibang operasyon. Hiwalay ang native value sa input data ng transaction.

Maaaring i-round off sa $0.00 ang isang maliit ngunit positibong halaga. Maaari ring hindi kapaki-pakinabang ang ipinapakitang fiat value ng asset na walang mapagkakatiwalaang presyo. Buksan ang buong precision ng halaga ng token; kahit ang ipinapakitang 0.00 token ay maaaring may nakatagong mas maliit na positibong halaga. Hindi maaasahang tala ng bilang ng mga unit na pumasok o lumabas sa account ang pagbabago ng valuation ng portfolio.

Pinapayagan ang zero bilang halaga ng token, kaya hindi sapat ang zero para patunayang may pag-atake. Mga palatandaang dapat siyasatin ang magkakahawig na address at kinopyang detalye ng pagbabayad.

Bakit maaaring magkaiba ang dalawang From field

Maaaring pagsamahin ng wallet history ang impormasyon mula sa iba't ibang layer:

  1. Ang transaction: ang pinirmahang tagubilin na isinumite sa network. Para sa karaniwang Ethereum transaction, tinutukoy ng pangunahing From field ang account na pumirma.
  2. Ang token event: isang record na inilalabas ng contract habang tumatakbo ito. May sarili itong From, To, at halaga ang Transfer event.
  3. Ang history row: ang paraan ng wallet o explorer sa pagpapakita ng impormasyong iyon. Maaari nitong markahan ang event bilang OUT dahil nakapangalan sa address mo ang sender sa event.

Hindi maaaring pagpalitin ang dalawang From field na iyon. Ang paglitaw ng address mo sa isang event ay hindi katumbas ng pirma mula sa wallet mo. Maaaring ilagay ng mapaminsalang contract ang address mo sa event data, pero hindi ibig sabihin na galing ang log nito sa tunay na token contract. Kaya mahalagang bahagi ng ebidensiya ang contract na naglabas ng event.

Gayundin, tinutukoy ng transaction hash ang isang transaction; hindi nito pinatutunayan ang pagsang-ayon mo. Ang transaction na naisama sa chain at may markang Success ay nagpapakitang hindi na-revert ang panlabas na execution nito. Hindi ito pag-endorso sa token, tatanggap, o layunin.

Limang halimbawa ng transaction history na may paliwanag

Halimbawa 1: Isang outgoing zero-token transfer na hindi mo kailanman pinirmahan

Entry sa history: OUT · 0 USDC · Mula sa address mo papunta sa isang hindi kilalang address na kahawig ng iba.

  • Transaction From: isang walang kaugnayang account ang nagsumite ng transaction.
  • Token-event From: address mo ang nakapangalan sa event.
  • Token contract na naglabas ng event: ang tunay na USDC contract sa network na ito.
  • Eksaktong halaga ng token: zero.

Ano ang pinatutunayan nito: nagtala ang tunay na token contract ng zero-token transfer na nakapangalan sa address mo. Walang USDC na nailipat sa partikular na transfer na iyon. Hindi nito pinatutunayan na pinirmahan ng wallet mo ang transaction, na may pahintulot ang tumawag sa contract na gumastos ng positibong halaga, o na ninakaw ang key mo.

Paano ito nangyayari: inaatas ng ERC-20, ang karaniwang pamantayan ng token, na maglabas ng Transfer events kahit zero ang halaga. Sa mga karaniwang implementation, sinusuri ng delegated transfer function na transferFrom kung lumalampas ang hinihinging halaga sa allowance ng tumatawag. Hindi lumalampas ang zero sa allowance na zero. Kung pinapayagan ng iba pang tuntunin ng contract, maaaring magtagumpay ang call nang walang naunang approval.

Hindi ito pangkalahatang garantiya para sa lahat ng token. Maaaring magtakda ang bawat contract ng karagdagang paghihigpit.

Ano ang susunod na susuriin: tingnan ang natitirang bahagi ng transaction. Ang zero row ay naglalarawan lang sa row na iyon; maaaring iba ang epekto ng ibang operasyon. Kung nag-iisang poisoning record lang ito at walang kahina-hinalang paggastos o pagbabago sa pahintulot, ang nararapat ay iwasan ang itinanim na address, hindi agad ipagpalagay na kailangang palitan ang wallet.

Halimbawa 2: Isang pekeng transaction na nagpapakita ng malaking halaga ng token

Entry sa history: OUT · 2,500 USDC · Mula sa address mo papunta sa hindi kilalang address.

  • Ipinapakitang simbolo ng token: USDC.
  • Contract na naglabas ng event: isang walang kaugnayang contract, hindi tunay na USDC.
  • Halagang iniulat ng event: 2,500.
  • Paggalaw ng tunay na USDC sa transaction na ito: wala.

Ano ang pinatutunayan nito: naglabas ang ibang contract ng record na ipinapakita sa ilalim ng label na USDC. Hindi nito pinatutunayang may 2,500 tunay na USDC na umalis sa account mo.

Ang pekeng transaction sa wallet ay maaaring tunay na blockchain data na may mapanlinlang na interpretasyon. Maaaring kopyahin ng mga umaatake ang pangalan at simbolo ng token at maglabas ng events na kahawig ng mga dati mong bayad, kasama ang halaga ng mga iyon. Maaari ring maglabas ang mga hindi standard na contract ng transfer records na hindi tumutugma sa pagbabago ng sarili nilang balanse.

Ano ang susunod na susuriin: tukuyin ang network at eksaktong contract na naglabas ng event. Ihambing ang address nito sa impormasyon ng contract mula sa issuer na hiwalay mong nakuha para sa network na iyon. Hindi sapat ang pamilyar na ticker, logo, o label ng source-code verification para patunayan ang pagkakakilanlan ng issuer.

Halimbawa 3: Isang napakaliit na tunay na bayad mula sa kahawig na address

Entry sa history: IN · 0.000001 USDC · Mula sa hindi kilalang address papunta sa address mo.

Ipagpalagay na kinumpirma ng tunay na token contract ang transfer at nadagdagan ng napakaliit na halagang iyon ang token balance mo. Dito, totoong token ang dumating. Hindi mo kailangang aprubahan ang nagpadala para matanggap ang mga iyon, at hindi rin nito binibigyan ang nagpadala ng pahintulot na gumastos.

Nasa address ang patibong. Tingnan ang mga gawa-gawang halimbawang ito na pinaghiwa-hiwalay ng espasyo para makita ang bawat character. Walang espasyo ang mga totoong address; magkaiba ang mga naka-bold na grupo sa gitna:

Na-verify na tatanggap: 0x7a2f 1111 2222 3333 4444 5555 6666 7777 8888 9c4d

Itinanim na address: 0x7a2f aaaa bbbb cccc dddd eeee ffff 0000 1111 9c4d

Maaaring parehong ipakita bilang 0x7a2f...9c4d ng interface na simula at dulo lang ang ipinapakita.

Ano ang pinatutunayan nito: may nagpadala sa iyo ng maliit na halaga mula sa address na iyon. Hindi nito pinatutunayang ang sender ay ang dati mong pinapadalhan o isang account na kontrolado mo. Hindi patunay ng pagmamay-ari ang pagtutugma ng nakikitang mga character.

Ano ang susunod na susuriin: kunin ang nilalayong destination mula sa contact na hiwalay mong na-verify o sa pinagkakatiwalaang account page ng tatanggap. Ihambing ang buong address. Sinusubukan ng address poisoning na gawing mapipili mong address sa susunod na bayad ang isang itinanim na history entry. Maaaring mangyari ang pagkawala ng pera sa kalaunan, kapag pinahintulutan mo ang isang ganap na valid na transfer sa maling destination.

Halimbawa 4: Zero ETH, pero 2,500 tunay na token ang lumabas

Header ng transaction: Value · 0 ETH.

  • Native value na kasama sa call: 0 ETH.
  • Transfer ng tunay na token: 2,500 USDC mula sa address mo.
  • Pagbabago sa USDC balance dahil sa transaction na ito: pagbaba ng 2,500 USDC.
  • Status ng execution: Success.

Ano ang pinatutunayan nito: tunay na USDC ang lumabas sa halimbawang ito. Ang zero ay tumutukoy sa ETH na kasama sa call. Hindi nito inilalarawan ang USDC transfer o inaalis ang posibilidad ng gas fees.

Ano ang hindi pa alam: kung bakit nangyari ang bayad at kung nilayon mo ito. Maaaring isa itong swap, deposit, nakaiskedyul na operasyon, bayad sa maling address, o hindi awtorisadong paggastos. Itugma muna ito sa ginawa mong aksyon at sa nilayon mong destination bago ito uriin.

Halimbawa 5: Lumabas ang tunay na mga token, pero ibang account ang nagsumite ng transaction

Entry sa history: OUT · 500 tunay na USDC · Hindi kilalang destination.

Ipagpalagay na nabawasan ng 500 ang tunay mong USDC balance dahil sa matagumpay na transaction, ngunit ibang tao ang nakapangalan sa pangunahing From field.

Ano ang pinatutunayan nito: nailipat ang mga token. Hindi nagiging peke ang paggalaw dahil iba ang nagpadala ng transaction.

Maaaring gamitin ng isang dati nang naaprubahang spender ang token allowance nang hindi ka pinapapirma ng bagong transaction sa bawat withdrawal. Sinusuportahan din ng ilang token ang permit signatures, na nagbibigay ng allowance sa pamamagitan ng pinirmahang mensahe na maaaring isumite ng ibang partido. Nagbibigay rin ang smart accounts at delegated wallets ng ibang paraan para makapagsumite ng awtorisadong operasyon ang ibang tao.

Ano ang susunod na susuriin: suriin ang spender, kaugnay na allowance o pinirmahang pahintulot, at operasyon ng wallet. Kung hindi pa rin maipaliwanag ang debit, ituring itong security incident. Maaaring tumukoy ang ebidensiya sa mapaminsalang approval, mapanlinlang na signature, o nakompromisong kontrol sa account; hindi ito mapag-iiba ng row lamang.

Para sa karaniwang transaction na direkta mong nilagdaan, ang address mo sa pangunahing transaction From field ay ebidensiya ng valid na signature para sa account na iyon. Hindi pa rin nito pinatutunayang naunawaan mo ang aksyon, nilayon mo ang tatanggap, o ikaw mismo ang nagsimula nito. Mas kaunti ang napapatunayan ng token-event From field.

Ano talaga ang sinukat ng 270 milyong pagtatangka ng address poisoning

Isang dalawang-taong pagsusuri sa aktibidad sa Ethereum at BSC mula July 1, 2022 hanggang June 30, 2024 ang nakatukoy ng humigit-kumulang 270 milyong poisoning transfer records na tumarget sa 17 milyong address.

Nahahati ang mga record sa tatlong kategorya:

  • 147.7 milyon na zero-value transfers.
  • 118.4 milyon na counterfeit-token transfers.
  • 4.0 milyon na napakaliit na transfers.

Mga transfer record ito sa loob ng humigit-kumulang 18.2 milyong transaction, dahil maaaring pagsama-samahin ng umaatake ang mga record. Hindi katumbas ng mga tao, nakompromisong wallet, o biktimang nawalan ng pera ang mga tinarget na address.

Natukoy sa pagsusuri ang 6,633 matagumpay na payoff transfers na may kabuuang hindi bababa sa $83.8 milyon. May ilang biktimang nagbayad nang higit sa isang beses. Nakatuon ang detection sa piling stablecoin, kaya lower bound ang pagtataya ng nawala sa loob ng saklaw na iyon, hindi kabuuan para sa bawat token o chain.

Ang praktikal na kahulugan nito ay maraming bahagi ng pag-atake ang hindi makikita kung zero amounts lang ang susuriin. Maaaring magkunwaring makabuluhang bayad ang mga pekeng entry, at ang napakaliit na papasok na transfer ay maaaring maglipat ng tunay na token habang nagpapakilala ng mapanganib na address.

Paano suriin ang partikular mong entry

  1. Buksan ang transaction sa tamang network. Gamitin ang explorer option ng wallet mo o isang kilalang explorer gaya ng Etherscan o BscScan. Tingnan ang status ng transaction. Hindi kailangang ikonekta ang wallet, mag-apruba ng token, pumirma ng mensahe, o maglagay ng recovery phrase para basahin ang pampublikong detalye ng transaction.
  2. Tukuyin ang aktuwal na asset. Ihiwalay ang native ETH o BNB sa token na gumagamit ng ganoong pangalan. Para sa mga token, ihambing ang eksaktong network at emitting contract sa pinagkakatiwalaang sanggunian mula sa issuer.
  3. Basahin ang halaga sa buong precision. Ihiwalay ang dami ng token mula sa native transaction value at fiat estimate.
  4. Ihiwalay ang transaction sender sa event sender. Para sa smart account, suriin din ang operasyon ng wallet at mga pahintulot nito. Hindi patunay na walang nailipat na asset mo ang pagbabayad ng gas ng ibang tao.
  5. Suriin ang buong transaction. Tingnan ang lahat ng galaw ng token, native-coin transfer, at kaugnay na pagbabago sa pahintulot. Kung nagpapakita ang explorer ng transaction-level balance changes, gamitin ang mga ito para pagtugmain ang resulta. Mas mahinang ebidensiya ang hindi nagbago ang balanse ngayon: maaaring itago ng mga sumunod na deposit o offsetting transfer ang mga naunang galaw.
  6. Malayang i-verify ang destination. Gamitin ang pinagkakatiwalaang payment details ng tatanggap o address-book entry na na-verify mo na. Ang isang kamakailang history row ay ebidensiyang dapat siyasatin, hindi patunay ng tamang destination.

Kung hindi malinaw ang resulta sa explorer, ibigay sa opisyal na support team ng wallet provider ang network at pampublikong transaction hash. Ilarawan ang aksyong inaasahan mo, kung mayroon. Nakakatulong ang mga detalyeng ito para makilala ang hindi pamilyar pero nilayong operasyon laban sa hindi maipaliwanag na paggastos nang hindi ibinubunyag ang mga sikretong kumokontrol sa wallet mo.

Ano ang gagawin pagkatapos magsuri

Kung isang hiwalay na poisoning record lang ang nakita mo

Itago o i-report ang spam kung sinusuportahan ito ng wallet mo, at iwasang gamitin ang mga address nito. Binabago ng pagtatago ng row ang interface; hindi nito binubura ang blockchain history o binabawi ang mga pahintulot.

Maaaring mangyari ang zero transfer kahit zero ang allowance, kaya hindi sapat ang record para bawiin ang lahat ng approval o ilipat ang lahat ng pondo mo. Maaaring wala namang kaugnay na pahintulot sa paggastos na kailangang alisin. Huwag kailanman gamitin ang website na ina-advertise ng token o recovery link mula sa estranghero para “linisin” ang wallet mo.

Kung may nakita kang kahina-hinalang pahintulot sa paggastos

Gamitin ang pinagkakatiwalaang paraan ng wallet mo sa pamamahala ng approval upang suriin at bawiin ang kaugnay na allowance. Hindi nababawi ng pag-disconnect sa website ang dati nang on-chain token approvals nito. Ang pag-revoke ay tumutugon sa pahintulot na iyon; hindi nito maaayos ang ninakaw na private key.

Kung gumalaw ang mga tunay na asset nang hindi mo nilalayon

Itabi ang transaction hash, network, apektadong asset, at kaugnay na mga address. Suriin ang kamakailang mga signature, approval, at wallet operation sa pamamagitan ng opisyal na support channels.

Kung may ebidensiyang nalantad ang recovery phrase o private key mo, gumawa ng bagong wallet na may bagong recovery phrase sa pinagkakatiwalaang device at sundin ang maingat na plano para ilipat ang natitirang assets. Hindi naaayos ang pagkakalantad sa pamamagitan ng ibang account na nagmula sa nakompromisong phrase. Kung awtomatikong nawawala ang pondo, huwag patuloy na magdagdag ng gas money: maaaring kinukuha ito ng sweeper.

Kung sinadya mong pumirma ng bayad ngunit nakopya mo ang poisoned destination, itala ang pagkakaibang iyon. Maaaring tama ang pagpirma at pag-execute ng bayad ngunit sa maling tatanggap ito napunta. Hindi sapat ang kinalabasang iyon para patunayang ninakaw ang private key mo.

Mga karaniwang tanong tungkol sa hindi kilalang mga transaction

Ako ba ang pinabayad ng attacker ng gas?

Sa karaniwang poisoning scenario, ang attacker ang nagsusumite ng transaction at nagbabayad ng network fee nito. Hindi sinisingil ang account mo dahil lamang pinangalanan ang address mo sa isang token event. Gayunman, sa sponsored transactions at smart accounts, hindi sapat ang pagkakakilanlan ng nagbayad ng fee para patunayang walang masamang epekto ang operasyon. Suriin ang aktuwal na mga epekto.

Paano kung nabigo ang transaction?

Hindi natuloy ang token transfer na na-revert, bagaman maaari pa ring maningil ng gas. Kung gumagamit ang wallet ng account delegation, suriin iyon nang hiwalay: maaaring manatili ang delegation sa Ethereum kahit nabigo ang susunod na execution. Dapat suriin ang hindi pamilyar na delegation.

Mapipigilan ba ng hardware wallet ang address poisoning?

Nagbibigay ito ng isa pang lugar para suriin ang destination bago pumirma. Hindi nito magagawang tama ang destination na kontrolado ng attacker kung aaprubahan mo ito. Ihambing ang buong address sa pinagkakatiwalaang signing display at sa hiwalay na na-verify na detalye ng tatanggap.

Maaari ko bang pigilan ang mga estrangherong magdagdag ng ganitong mga entry?

Sa pangkalahatan, hindi mo mapipigilan ang ibang tao na magpadala ng assets o bumuo ng mga naaangkop na record na may kinalaman sa pampublikong address. Maaaring bawasan ng wallet at explorer filters ang nakikita mo. I-save ang mga na-verify na tatanggap at suriin ang buong destination bago magbayad; hindi mahuhuli ng pagtatago lang ng zero-value entries ang lahat ng counterfeit o tiny-transfer variant.