Akademia NIS2/KSC2 od sekuraka. 19 października start drugiej edycji!
Konferencja Mega Sekurak Hacking Party w Krakowie – 26-27 października!
Akademia NIS2/KSC2 od sekuraka. 19 października start drugiej edycji!
Konferencja Mega Sekurak Hacking Party w Krakowie – 26-27 października!
Badacze bezpieczeństwa z OX Research zidentyfikowali 101 złośliwych paczek npm będących częścią tej samej kampanii. Jej celem było… zwiększanie liczby subskrybentów kanałów na WhatsApp. Złośliwe pakiety wykorzystują otwartoźródłową bibliotekę Baileys (służącą do interakcji z API WhatsApp), aby dodawać obserwacje z kont ofiar bez ich zgody.
Baileys to projekt open source implementujący API WhatsApp. Jest wykorzystywany przez programistów do automatyzowania działań na ich kontach WhatsApp – np. chatboty do obsługi klienta, zarządzanie czatami czy scraping danych.
Badacze podzielili złośliwe paczki na trzy grupy, zależnie od sposobu pozyskiwania listy kanałów WhatsApp:
Pierwsza kategoria dotyczyła 19 pakietów. Atakujący przechowywali listę kanałów WhatsApp na GitHubie, dzięki czemu można było je dynamicznie zmieniać bez konieczności publikowania za każdym razem nowej wersji paczki.


Druga kategoria to paczki, w których ID kanałów zapisano na stałe w postaci jawnego tekstu. Badacze zidentyfikowali 60 takich pakietów.
Oto kod jednej z paczek:

Inna paczka – @kanaraa/baileys – od razu wycisza kanał, by użytkownik nie otrzymywał powiadomień, prawdopodobnie zmniejszając szanse na zauważenie złośliwej aktywności.

Ostatnią kategorią są paczki, w których kanały zapisano na stałe w postaci zaciemnionej. Badacze zidentyfikowali 14 takich pakietów. W tym wariancie większość identyfikatorów kanałów jest zakodowana w base64.
Jednym z przykładów jest paczka spencer-baileys – w pliku lib/Socket/newsletter.js przechowuje listę kodów zaproszeń w formacie JSON zakodowanym w base64, przekształca każdy z nich do formatu JID (Jabber ID) kanału, a następnie zaczyna obserwować go po 90 sekundach.
Inny pakiet – neuralwhatsapp – zamiast przechowywać bezpośrednio ID kanału, ma zapisany na stałe kod zaproszenia WhatsApp. Zaproszenie to prowadzi do kanału “Neural” z 798 obserwującymi.

Badacze sprawdzili treści na zidentyfikowanych kanałach. Ustalili, że większość z nich zajmuje się głównie sprzedażą kont do gier i aplikacji. Liczba obserwujących służy im jako dowód społeczny, aby zwiększyć wiarygodność w oczach klienta.
Przykładowo, na jednym z kanałów próbowano sprzedać konto na TikToku z 7 tys. obserwujących:

Badacze znaleźli te same ID kanałów, te same zdalnie pobierane listy i te same konta GitHub w różnych pakietach od różnych twórców. Ktokolwiek jest właścicielem kanału, zbiera obserwujących z każdego pakietu, który jest na niego ukierunkowany, niezależnie od tego, kto opublikował pakiet.
Po pełną listę kanałów WhatsApp i paczek npm odsyłamy do wpisu badaczy. Jeśli zainstalowaliście któreś z nich, oczywiście polecamy je usunąć, a także wyczyścić cache menadżera pakietów. Jeśli korzystacie z Baileys w swoim projekcie, warto sprawdzić czy na Waszym koncie nie pojawiły się nowe kanały i opuścić te, których nie rozpoznajecie. Jeśli doszło do infekcji, najlepiej usunąć wszystkie uwierzytelnione urządzenia w WhatsApp i dodać je na nowo, po usunięciu złośliwych paczek.
Źródło: ox.security