Bezpieczeństwo portfela – prosto wyjaśnione

Address poisoning: jak fałszywy adres portfela trafia do historii transakcji

Oszust nie potrzebuje Twojego seed ani klucza prywatnego. Wystarczy, że w historii pojawi się podobny adres i skopiujesz go bez weryfikacji.

Szybka odpowiedź

Czym jest address poisoning?

Address poisoning to oszustwo polegające na umieszczeniu w historii portfela fałszywego adresu łudząco podobnego do prawdziwego. Sam wpis nie daje dostępu do portfela – ryzyko pojawia się dopiero, gdy skopiujesz ten adres i zatwierdzisz przelew.

Nieznany przelew o zerowej wartości lub dust nie oznacza, że portfel został przejęty. Nie wchodź w interakcję i nie używaj tego adresu jako odbiorcy.

3 maja 2024 · Ethereum

$68 milionów trafiło na zły adres — a potem wróciło

Chainalysis podaje, że pierwszy niewielki przelew na właściwy adres był prawdopodobnie testem. Kilka minut później portfel wysłał około 1 155 WBTC na inny adres, który po skróceniu wyglądał niemal identycznie. Ten drugi adres należał do oszusta.

Ofiara podpisała przelew na zły adres. Ethereum poprawnie zrealizowało instrukcję. Oszust zwrócił pierwotne 68 mln USD 9 maja po publicznych wiadomościach on-chain, ale taki zwrot nie oznacza, że transakcje są odwracalne lub bezpieczne.

Zwrot nastąpił w ETH, a nie w oryginalnych WBTC. Chainalysis szacuje, że oszust i tak zatrzymał około 3 milionów dolarów dzięki wzrostowi wartości aktywa.

PrzesłanoOkoło 68 mln USD
AktywoOkoło 1 155 WBTC
PrzyczynaPodobny odbiorca
Późniejszy efektOkoło 68 milionów dolarów wróciło w ETH
Wniosek nie jest taki, że przelewy testowe są nieskuteczne.

Testowy przelew pomaga tylko wtedy, gdy ponownie używasz potwierdzonego odbiorcy z zaufanego źródła. Skopiowanie nowego, podobnego adresu z historii nadal grozi utratą środków.

Przebieg ataku

Jak działa address poisoning – krok po kroku

Atak wykorzystuje moment wyboru odbiorcy. Nie wymaga łamania kryptografii portfela.

  1. 01

    Prawdziwa transakcja staje się publiczna

    Ofiara wysyła krypto do prawidłowego odbiorcy. Blockchain zapisuje oba adresy publicznie.

  2. 02

    Schemat odbiorcy jest obserwowany

    Oszust obserwuje publiczne transakcje i wybiera adres, który ofiara może ponownie wykorzystać.

  3. 03

    Tworzenie podobnego adresu

    Fałszywy adres ma te same widoczne znaki co prawdziwy odbiorca, ale należy do oszusta.

  4. 04

    Fałszywy wpis trafia do historii

    Przelew o zerowej wartości, tzw. dust lub token sprawia, że podobny adres pojawia się w historii portfela.

  5. 05

    Skopiowano zły adres

    Później ofiara wybiera znajomo wyglądający wpis zamiast wrócić do zaufanego źródła.

  6. 06

    Prawidłowa transakcja trafia do oszusta

    Ofiara podpisuje przelew. Blockchain wysyła środki dokładnie na zatwierdzony adres.

Prawdziwy odbiorca Transakcja publiczna Podobny adres w historii Skopiowano zły adres

Pułapka wizualna

Początek i koniec mogą się zgadzać, a adres być inny

Portfele często skracają długie adresy, by zaoszczędzić miejsce – ale to może ukryć fragment zmieniony przez oszusta.

Zweryfikowany odbiorca 0x91A4b7C2e6F1930DABCD8a45B6cE19fA003172F8
Adres poisoning 0x91A4f3D8c4E7192BCAFE6a90C1dE48B700A972F8

Co może pokazać skrócona historia

0x91A4…72F8 0x91A4…72F8

Dlaczego pojawia się w portfelu

Historia publiczna przyjmuje wpisy, o które nie prosiłeś

W publicznym blockchainie każdy może sprawdzić adresy i wysłać dozwolone transakcje lub tokeny. Portfel może pokazać taką aktywność, nawet jeśli jej nie zatwierdzałeś.

Zerowa wartość

Przelew o zerowej wartości

Zdarzenie tokena bez wartości może pojawić się w historii portfela lub eksploratora.

Drobna kwota

Przelew dust

Wysyłana jest drobna kwota, by podobny adres pojawił się w historii transakcji.

Historia tokenów

Fałszywa aktywność tokena

Bezwartościowy lub mylący token może naśladować nazwę lub kwotę wcześniejszego przelewu, przez co wpis wydaje się znajomy.

Powtarzający się schemat

Skopiowane dane transakcji

Fałszywy wpis może powtarzać wcześniejszą kwotę lub czas, by wyglądał znajomo.

Czy można usunąć zatrutą transakcję?

Nie da się usunąć zatwierdzonego wpisu z publicznego blockchaina. Niektóre portfele mogą ukryć lub zamazać podejrzane wpisy, ale sam wpis nie pozwala wydać Twoich środków.

Czy powinienem odesłać środki?

Nie. Nie odpisuj, nie odsyłaj dustu, nie klikaj w linki tokenów ani nie kopiuj adresu nadawcy. Zignoruj wpis i samodzielnie weryfikuj przyszłych odbiorców.

Sprawdź, co zostało zaatakowane

Address poisoning to nie atak na blockchain ani klucz prywatny

Transakcja jest ważna, bo właściciel ją zatwierdza. Oszustwo następuje przed podpisaniem, gdy fałszywy odbiorca zostaje pomylony z prawdziwym.

Atak Co jest celem ataku Klucz prywatny zagrożony?
Address Poisoning Wybór odbiorcy a podobieństwo wizualne Nie
Złośliwe oprogramowanie w schowku Schowek lub zainfekowane urządzenie Niekoniecznie
Phishing Zaufanie fałszywej stronie, wiadomości lub aplikacji Niekoniecznie; często taki jest cel
Kradzież seed lub klucza prywatnego Sekret podpisu portfela Tak
Poprawny podpis Docelowy odbiorca

Pomiar na dużą skalę

Setki milionów prób – to nie przypadek

Badanie USENIX Security 2025 analizowało address poisoning na Ethereum i BNB Smart Chain od lipca 2022 do czerwca 2024. Wykryto następującą aktywność:

270 milionów wykryte próby poisoning
17 milionów adresy będące celem
6 633 udane przelewy ofiar
Co najmniej 83,8 mln USD oszacowane straty

To szacunki na podstawie metody wykrywania i definicji badania, a nie liczba wszystkich prób poisoning na każdym blockchainie.

Zabezpieczenia według priorytetu

Jak nie stracić środków przez address poisoning

Zawsze zaczynaj od źródła odbiorcy. Dodatkowe kontrole pomagają, ale nie naprawią adresu skopiowanego z niepewnej historii.

  1. 01

    Nie kopiuj odbiorców z historii transakcji

    Wróć do zweryfikowanego źródła odbiorcy. Historia pokazuje tylko, co się wydarzyło na blockchainie – nie potwierdza właściciela adresu.

  2. 02

    Korzystaj ze zweryfikowanej książki adresowej lub listy zaufanych

    Zapisuj częstych odbiorców dopiero po weryfikacji innym zaufanym kanałem. Etykiety pomagają łatwiej rozpoznać właściwy wybór.

  3. 03

    Sprawdź cały adres

    Korzystaj z potwierdzonej książki adresowej, kodu QR lub sprawdzonego źródła, jeśli to możliwe. Przy ręcznym sprawdzaniu nie ograniczaj się do początku i końca — zweryfikuj cały adres.

  4. 04

    Sprawdź adres na ekranie sprzętowego portfela

    Porównaj adres wyświetlany na portfelu sprzętowym z adresem odbiorcy z niezależnego, zaufanego źródła. Urządzenie pokazuje, co podpisuje, ale nie wie, kto powinien otrzymać środki.

  5. 05

    Potwierdź mały przelew testowy

    Przy dużych kwotach najpierw wyślij niewielką sumę i poproś odbiorcę o potwierdzenie. Dopiero potem użyj tego samego, zweryfikowanego adresu.

  6. 06

    Nowy odbiorca to osobna decyzja

    Zatrzymaj się, gdy portfel ostrzega przed nowym lub podobnym adresem. Zweryfikuj go innym kanałem zamiast ignorować ostrzeżenie.

Portfel sprzętowy nie chroni automatycznie przed address poisoning.

Portfel sprzętowy zawsze pokazuje adres, który zamierza podpisać, ale nie wie, kto jest odbiorcą. Przed zatwierdzeniem porównaj wyświetlany adres z niezależnym, zaufanym źródłem.

Przed podpisaniem

  • Odbiorca pochodził z zaufanego źródła, nie z historii
  • Sieć i aktywo zgodne z oczekiwaniami odbiorcy
  • Pełny adres zgadza się na zaufanym ekranie
  • Testowy przelew potwierdzony przez prawdziwego odbiorcę

Co może zrobić oprogramowanie portfela

Dobre ostrzeżenia zmniejszają ryzyko, ale żaden filtr nie sprawdzi Twoich intencji

Portfele mogą wykrywać podejrzane schematy i spowalniać użytkownika w kluczowym momencie. Nowe adresy atakujących i legalne podobieństwa sprawiają jednak, że stuprocentowa wykrywalność jest niemożliwa.

Aktualny przykład

MetaMask

MetaMask porównuje adres docelowy z wcześniejszymi odbiorcami i ostrzega, gdy początek i koniec są znajome, ale środek się różni. Informuje też o zupełnie nowym odbiorcy.

Aktualny przykład

Trezor Suite

Trezor informuje, że Suite sprawdza podejrzane transfery tokenów, rozmazuje potencjalne wpisy address poisoning i oznacza je jako niezweryfikowane. Portfel sprzętowy pokazuje adres do podpisu, ale należy go porównać z adresem odbiorcy z niezależnego, zweryfikowanego źródła.

Przydatne wzorce projektowe

Wyeksponuj zaufanego odbiorcę ponad historię

  • Ukrywaj lub filtruj wpisy o zerowej wartości i podejrzany dust
  • Ostrzegaj, gdy nowy adres przypomina znany kontakt
  • Oznaczaj wyraźnie zweryfikowane kontakty i listy zaufanych
  • Pokazuj cały adres przy kopiowaniu i podpisywaniu

Propozycja zmiany wyświetlania

ERC-8117 ułatwia rozpoznawanie nietypowych wzorców adresów

ERC-8117 to projekt nowego formatu wyświetlania adresów EVM z długimi ciągami zer na początku. Ma ułatwić zauważenie liczby zer i utrudnić tworzenie podobnych adresów.

To nie zastępuje weryfikacji odbiorcy i nie jest oficjalnym standardem Ethereum. Potrzebne byłoby wsparcie portfeli i eksploratorów.

Status sprawdzony Projekt propozycji ERC-8117

Najczęstsze pytania

Czy pojawienie się address poisoning oznacza, że mój portfel został zhakowany?

Nie. W publicznym blockchainie każdy może wysłać Ci wpis o zerowej wartości, dust lub token bez Twojej zgody. To nie ujawnia seed ani klucza prywatnego. Ryzyko pojawia się, gdy skopiujesz taki adres do kolejnego przelewu.

Czy mogę usunąć fałszywą transakcję z historii portfela?

Zatwierdzonego wpisu w publicznym blockchainie nie da się usunąć. Portfel może ukryć lub zamazać podejrzane wpisy, ale najważniejsze to je zignorować i każdorazowo sprawdzać odbiorcę z zaufanego źródła.

Czy wystarczy sprawdzić pierwsze i ostatnie cztery znaki adresu?

Nie. Podobne adresy są tworzone tak, by pasowały do skróconego widoku portfela. Inny środek oznacza innego odbiorcę – sprawdzaj cały adres lub korzystaj z wcześniej zweryfikowanych kontaktów.

Co zrobić, jeśli wysłałem krypto na adres poisoning?

Zatrzymaj kolejne przelewy, zachowaj szczegóły transakcji, skontaktuj się z portfelem lub giełdą i zgłoś adres odpowiednim podmiotom lub organom ścigania. Przelewy on-chain są zwykle nieodwracalne, więc nikt nie może zagwarantować odzyskania środków.

Czy przelew testowy chroni przed address poisoning?

Test działa tylko, gdy odbiorca potwierdzi i ponownie używasz tego samego, zweryfikowanego adresu. Skopiowanie nowego adresu z historii po teście nie chroni przed utratą środków.

Czy address poisoning to to samo co dusting?

Te pojęcia mogą się pokrywać, ale nie są tożsame. Address poisoning polega na wprowadzeniu w błąd przez wpis w historii, by wpłynąć na wybór odbiorcy. Dust może być wysyłany także do śledzenia, spamu lub innych celów bez podobnego adresu.

Dowiedz się więcej

Poznaj inne możliwe błędy portfela

Address poisoning dotyczy wyboru odbiorcy. W centrum bezpieczeństwa portfela znajdziesz też opisy innych zagrożeń: kradzieży seed, kluczy prywatnych, kopii zapasowych, losowości i podpisów.