Złośliwy pakiet npm „lotusbail” kradnie konta WhatsApp i przechwytuje wiadomości – bo działa jak prawdziwa biblioteka API - Security Bez Tabu

Złośliwy pakiet npm „lotusbail” kradnie konta WhatsApp i przechwytuje wiadomości – bo działa jak prawdziwa biblioteka API

Wprowadzenie do problemu / definicja luki

Incydent z pakietem „lotusbail” w rejestrze npm to klasyczny (i coraz częstszy) przykład ataku na łańcuch dostaw oprogramowania: zależność wygląda jak przydatna biblioteka, faktycznie działa zgodnie z opisem, ale „po drodze” robi coś jeszcze — wykrada dane. W tym przypadku celem nie są tokeny do chmury czy zmienne środowiskowe, tylko wyjątkowo wrażliwy zasób: sesje WhatsApp, treść rozmów i kontakty.

Najgroźniejsze w tej historii jest to, że to nie jest prosty typosquat, który się wywala. To paczka, którą da się wdrożyć do produkcji i przez długi czas nie zauważyć niczego „podejrzanego”.


W skrócie

  • Złośliwy pakiet npm „lotusbail” podszywa się pod bibliotekę do integracji z WhatsApp Web API i jest oparty o (fork) legalnego projektu @whiskeysockets/baileys.
  • Badacze opisują przechwytywanie: tokenów uwierzytelnienia i kluczy sesji, treści wiadomości (wysyłanych i odbieranych), kontaktów oraz plików multimedialnych/dokumentów.
  • Eksfiltracja jest maskowana wielowarstwowo (m.in. własna implementacja RSA + obfuskacja/kompresja/szyfrowanie).
  • Dodatkowo pakiet ma mechanizm utrzymania dostępu: potrafi dopiąć atakującego jako powiązane urządzenie WhatsApp przy użyciu zaszytego kodu parowania, co może przetrwać nawet po odinstalowaniu paczki.
  • Skala: raporty mówią o ponad 56 tys. pobrań oraz obecności w rejestrze przez około 6 miesięcy.

Kontekst / historia / powiązania

Według opisu incydentu, lotusbail był dostępny w npm co najmniej od około pół roku i zebrał >56 tys. pobrań, a jego autor w rejestrze npm był wskazywany jako użytkownik „seiren_primrose”, z pierwszym wgraniem w okolicach maja 2025.

To wpisuje się w szerszy trend: biblioteki dla integracji komunikatorów (WhatsApp, automatyzacje botów, integracje biznesowe) są atrakcyjnym wektorem, bo:

  • trafiają do środowisk serwerowych i CI/CD,
  • obsługują dane prywatne i uwierzytelnienie,
  • często są dobierane „pod presją czasu”, z naciskiem na „żeby działało”.

Co ważne, w 2025 r. pojawiały się też inne kampanie celujące w deweloperów budujących integracje WhatsApp — np. z mechanizmem „kill switch”, który usuwa pliki, jeśli numer nie jest na liście. To nie ten sam przypadek, ale podobny kierunek: atakujący polują na deweloperów i ich zależności.


Analiza techniczna / szczegóły luki

1) „Legalna” funkcjonalność jako kamuflaż

Pakiet jest opisywany jako fork legitnej biblioteki Baileys (WebSocket/TypeScript do WhatsApp Web API) i faktycznie realizuje typowe funkcje wysyłania/odbierania wiadomości. To krytyczne: jeśli testy integracyjne przechodzą, paczka zyskuje zaufanie i ląduje w produkcji.

2) Przechwytywanie danych na warstwie WebSocket

Mechanizm kradzieży opiera się na „owinięciu” klienta WebSocket. Z perspektywy aplikacji wszystko wygląda normalnie, ale:

  • podczas logowania przechwytywane są dane uwierzytelniające (tokeny/klucze sesji),
  • każda wiadomość przychodząca i wychodząca jest kopiowana,
  • wyciągane są kontakty i pliki.

3) Eksfiltracja: własna kryptografia i wielowarstwowa obfuskacja

Raporty podkreślają, że dane nie lecą „gołym tekstem”. Opisywany jest zestaw technik utrudniających wykrycie i analizę:

  • własna implementacja RSA,
  • warstwy obfuskacji (np. triki z Unicode),
  • kompresja (LZString),
  • dodatkowe kodowania/szyfrowania (w tym AES).

Efekt praktyczny: nawet jeśli SOC zobaczy „dziwne” połączenia wychodzące, payload może wyglądać jak wysokiej entropii blob trudny do rozróżnienia od legalnej telemetrii.

4) Utrzymanie dostępu: przejęcie procesu „Linked devices”

Najbardziej niepokojący element to persistencja po stronie WhatsApp, a nie tylko w systemie ofiary. Opis wskazuje na zaszyty kod parowania wykorzystywany w procesie linkowania urządzeń, co może skutkować dopięciem urządzenia atakującego do konta. Taki dostęp może trwać po odinstalowaniu zależności — dopóki użytkownik ręcznie nie usunie powiązanego urządzenia w ustawieniach WhatsApp.

5) Utrudnianie analizy: pułapki anty-debug

Koi opisuje też mechanizmy uprzykrzające analizę dynamiczną, m.in. liczne „pułapki” powodujące zawieszanie wykonania w warunkach wskazujących na debug/sandbox.


Praktyczne konsekwencje / ryzyko

Jeśli lotusbail trafił do Twojego projektu (albo do zależności transitywnych), ryzyko nie ogranicza się do „wycieku czatu bota”:

  • Przejęcie konta WhatsApp (dostęp do rozmów, kontaktów, mediów, możliwość podszywania się).
  • Długotrwała kompromitacja nawet po usunięciu paczki (powiązane urządzenie pozostaje).
  • Incydent prawny i reputacyjny: przetwarzanie danych osobowych (kontakty, treści rozmów, dokumenty).
  • Ryzyko wtórne: przejęte konto WhatsApp bywa używane do phishingu, oszustw BEC/„na znajomego” i eskalacji do innych systemów (np. przez resety haseł SMS/WhatsApp, socjotechnikę). (To wniosek operacyjny na bazie typowych nadużyć po przejęciach kont komunikatorów.)

Rekomendacje operacyjne / co zrobić teraz

Poniżej checklista „tu i teraz” dla zespołów dev/DevSecOps.

1) Szybka weryfikacja w repo i artefaktach

  • Przeszukaj lockfile i manifesty:
    • package.json, package-lock.json, pnpm-lock.yaml, yarn.lock
    • szukaj: lotusbail
  • Sprawdź drzewo zależności:
    • npm ls lotusbail
    • pnpm why lotusbail / yarn why lotusbail

2) Jeżeli pakiet był użyty do połączenia z WhatsApp

Z perspektywy ryzyka najważniejsze jest, czy biblioteka realnie została użyta do autoryzacji i ruchu (bo wtedy przechwytywanie ma sens).
W takim przypadku:

  • Usuń wszystkie powiązane urządzenia w WhatsApp (sekcja „Połączone urządzenia/Linked devices”) i przeprowadź ponowną autoryzację w zaufanym środowisku.
  • Włącz/zweryfikuj weryfikację dwuetapową (PIN) w WhatsApp i zmień powiązane ustawienia bezpieczeństwa (tam, gdzie to ma zastosowanie).
  • Załóż, że treść rozmów/załączniki/kontakty mogły zostać wyeksfiltrowane i przejdź w tryb IR (klasyfikacja danych, zawiadomienia, ocena ekspozycji).

3) Kontrola egress i telemetria

Ponieważ raport opisuje szyfrowanie/obfuskację i ukrywanie endpointu, sensowne są działania defensywne „warstwowo”:

  • zrób przegląd połączeń wychodzących z hostów, które wykonywały integrację,
  • oznacz anomalie: nowe domeny, nietypowe SNI, ruch do rzadkich ASN, długie zaszyfrowane payloady.

4) Twarde praktyki supply-chain na przyszłość

Ten incydent to dobry argument za:

  • allowlistą zależności lub prywatnym proxy/mirror dla npm,
  • pinowaniem wersji i przeglądem zmian w aktualizacjach,
  • automatycznym skanowaniem zależności (SCA) + regułami wykrywającymi „czerwone flagi” (niestandardowa kryptografia, obfuskacja, podejrzane połączenia sieciowe w bibliotece, anty-debug).
  • okresowym audytem bibliotek „od komunikatorów” (wysokie ryzyko danych).

Różnice / porównania z innymi przypadkami

Czym „lotusbail” różni się od typowych złośliwych paczek npm?

  • Nie musi liczyć na błąd literówki (typosquatting) ani na jednorazowe uruchomienie preinstall — on zarabia na tym, że jest używany „jak zwykła biblioteka”.
  • Persistencja wychodzi poza system: linkowanie urządzenia w WhatsApp powoduje, że czyszczenie serwera nie kończy incydentu.
  • To kolejny sygnał ewolucji: obok kampanii destrukcyjnych (kill switch) pojawiają się kampanie „ciche”, nastawione na dostęp i eksfiltrację.

Podsumowanie / kluczowe wnioski

  • lotusbail to złośliwa paczka npm udająca bibliotekę WhatsApp Web API, która działa poprawnie, ale przechwytuje dane i może dopiąć atakującego jako powiązane urządzenie.
  • Największe ryzyko to przejęcie konta i długotrwały dostęp utrzymujący się nawet po odinstalowaniu zależności — jeśli nie odłączysz urządzeń w samym WhatsApp.
  • Obrona wymaga połączenia: higieny zależności + monitoringu zachowań (egress, nietypowa kryptografia/obfuskacja) + szybkich procedur IR dla aplikacji integrujących komunikatory.

Źródła / bibliografia

  1. BleepingComputer – opis incydentu i podsumowanie technik kradzieży danych (22 grudnia 2025). (BleepingComputer)
  2. Koi Security (Tuval Admoni) – raport techniczny o „lotusbail” (21 grudnia 2025). (koi.ai)
  3. The Hacker News – dodatkowe szczegóły (m.in. nazwa konta publikującego, kontekst Baileys, mechanizm linkowania urządzeń) (22 grudnia 2025). (The Hacker News)
  4. The Register – streszczenie ryzyk i wielowarstwowej obfuskacji/eksfiltracji (22 grudnia 2025). (The Register)
  5. Socket – kontekst innych złośliwych paczek podszywających się pod biblioteki WhatsApp (6 sierpnia 2025). (Socket)