Giełda kryptowalut Bitget potwierdziła, że pod koniec września 2026 r. złodzieje wyprowadzili z jej gorących i ciepłych portfeli 387,5 mln USD w kryptowalutach z 11 blockchainów. Wejściem była luka zero-day w dwóch zewnętrznych produktach bezpieczeństwa, a pierwsze ślady włamania pochodzą z 31 sierpnia - prawie cztery tygodnie przed kradzieżą. Śledztwo prowadzą SlowMist i Mandiant, a atak przypisywany jest grupom z Korei Północnej. Skala jest giełdowa, ale schemat ataku powtarza się w małych firmach: dziura w dodatku od zewnętrznego dostawcy, hasła w pliku konfiguracyjnym i tygodnie, w których nikt nie zagląda do logów.
Jak przebiegał atak
Z dotychczasowych ustaleń opisanych przez The Hacker News i firmy prowadzące śledztwo:
- Wejście przez produkt bezpieczeństwa. Napastnicy wykorzystali nieznaną wcześniej lukę (zero-day) w produkcie oznaczonym w raporcie jako „Produkt A” i uruchamiali ukryte skrypty pod przejętymi procesami usług.
- Hasła ze zmiennych środowiskowych. Z serwerów produktu A wyciągnęli dane dostępowe do bazy danych zapisane w zmiennych środowiskowych.
- Przejęte konto pracownika. Do panelu zarządzania drugiego produktu („Produkt B”) weszli na skradzionych danych logowania pracownika.
- Utrwalenie. Zainstalowali web shelle i połączenia z serwerami dowodzenia (C2), czyli tylne furtki do powrotu.
- Kradzież. Uzyskali wysokie uprawnienia wewnętrzne i wysłali do systemu portfeli sfałszowane polecenia wypłat, które ominęły istniejące kontrole ryzyka.
Udało się zamrozić tylko około 1,1 mln USD - zrobiły to Circle, Tether i NEAR Intents. Bitget powiadomił dostawcę i wyłączył podatne funkcje do czasu poprawki. Co ważne, firmy prowadzące śledztwo podkreślają, że zawiodła nie logika blockchaina giełdy, tylko zewnętrzne narzędzia wokół niej.
Lekcja 1: każdy dodatek to drzwi
Ironia tego włamania polega na tym, że furtką były produkty, które miały chronić. Na stronie internetowej odpowiednikiem są wtyczki: bezpieczeństwa, cache, formularzy, płatności. Każda z nich ma dostęp do plików i bazy, więc luka w jednej wtyczce jest luką w całej stronie.
- Instaluj tylko to, czego naprawdę używasz - każda nieaktywna wtyczka i tak leży na serwerze.
- Włącz automatyczne aktualizacje wtyczek albo sprawdzaj je co tydzień.
- Śledź komunikaty o podatnościach - pomaga w tym baza wiedzy CERT Polska.
Lekcja 2: hasła w konfiguracji to łup numer jeden
W Bitget napastnicy wyjęli hasła do bazy ze zmiennych środowiskowych. W WordPressie ich odpowiednik to plik wp-config.php, w innych aplikacjach - plik .env. Po przejęciu choćby jednego skryptu na serwerze to pierwsze miejsce, które czyta atakujący.
- Upewnij się, że
.envi kopie typuwp-config.php.baknie są dostępne z przeglądarki - reguły blokujące dostęp opisaliśmy w tekście co to jest .htaccess. - Użytkownik bazy danych strony powinien mieć dostęp tylko do jej bazy, nie do wszystkich.
- Po każdym incydencie zmieniaj hasła do bazy, FTP/SFTP i panelu - nie tylko do WordPressa.
Lekcja 3: cztery tygodnie ciszy
Najbardziej niepokojące jest to, że pierwsze ślady włamania pochodzą z 31 sierpnia, a pieniądze zniknęły pod koniec września. W małych firmach takie „ciche” okresy trwają często miesiącami: przejęta strona rozsyła spam albo podmienia linki, a właściciel dowiaduje się o tym od Google lub od klientów.
- Włącz powiadomienia o logowaniu do panelu administracyjnego i dwuskładnikowe uwierzytelnianie.
- Raz w tygodniu przejrzyj listę administratorów WordPressa i ostatnio zmienione pliki.
- Miej kopie zapasowe z kilku tygodni wstecz, a nie tylko z wczoraj - jeśli włamanie trwa miesiąc, wczorajsza kopia jest już zainfekowana. Więcej: kopie zapasowe na hostingu.
Dobry hosting robi część tej pracy za Ciebie: skanuje pliki pod kątem złośliwego kodu, blokuje ataki na hasła i trzyma kopie przez dłuższy czas. Tak działa m.in. hosting dla firm w McProdukt - z kopiami zapasowymi i skanerem złośliwego kodu na serwerze. Jeśli strona już pokazuje ostrzeżenia, zacznij od poradnika strona nie jest bezpieczna - jak naprawić.
Źródło: The Hacker News - Bitget Confirms Third-Party Zero-Day Behind $387.5 Million Cryptocurrency Theft, The Crypto Times, Forkast.