Hakerzy wypełniają projekty na GitHub, ukrywając w nich złośliwy kod.

Hakerzy wypełniają projekty na GitHub, ukrywając w nich złośliwy kod.

11 hardware

Cyberprzestępcy maskują złośliwy kod przy pomocy „niewidocznych” znaków Unicode

Nowe badania firmy Aikido Security wykazały, że na początku marca pojawiło się 151 projektów na GitHubie zawierających ukryty kod szpiegowski. Złośliwe paczki wykorzystują znaki Unicode, które dla człowieka wyglądają jak spacje lub puste linie, ale przy zwykłym uruchomieniu JavaScript zamieniają się w wykonywalny bajt‑kod i trafiają do funkcji `eval()`.

Jak wygląda atak
1. Nazwy bibliotek

Pakiety nazywane są tak samo jak znane rozwiązania komercyjne (np. „React” lub „Node.js”). To sprawia, że programiści błędnie uważają je za bezpieczne i włączają do swoich projektów.

2. “Czytelny” kod + ukryte fragmenty

Duża część kodu wygląda jak zwykły, łatwy do przeczytania program. Wewnątrz znajdują się bloki wypełnione „niewidzialnymi” znakami. Podczas ręcznego przeglądania znikają, a podczas wykonywania – aktywują się.

3. Repozytoria testowe

Takie złośliwe paczki zostały już wykryte nie tylko na GitHubie, ale także w NPM, Open VSX i marketplace Visual Studio Code.

Dlaczego ich trudno zauważyć
- Zmiany w projektach wyglądają zwykle: aktualizacja wersji, poprawki błędów, refaktoryzacja.

- Przestępcy, według ekspertów, wykorzystują duże modele językowe AI do automatyzacji fałszowania kodu. Dzięki temu szybko przygotowano ponad 150 projektów bez ręcznej pracy.

Historia znaków
Znaki Unicode odpowiadające literom łacińskim zostały dodane do systemu dziesięciolecia wcześniej. Od 2024 roku hakerzy zaczęli ich używać do maskowania złośliwych zapytań do chatbotów i kodu w repozytoriach. Tradycyjne narzędzia analizy statycznej nie wykrywają ich; tylko przy uruchomieniu JavaScript małe dekodery ujawniają rzeczywisty bajt‑kod.

Co robić programistom
1. Sprawdzaj zależności – przed podłączeniem zewnętrznych bibliotek dokładnie przeanalizuj ich kod źródłowy i historię zmian.

2. Automatyczne kontrole – używaj linterów, skanerów pod kątem „niewidocznych” znaków oraz narzędzi analizy zachowania dynamicznego.

3. Aktualizuj – monitoruj, aby paczki nie zostały usunięte po pobraniu; może to wskazywać na ukrytą zagrożenie.

Perspektywy
Jeśli przypuszczenia o zastosowaniu AI w tej schemacie się potwierdzą, wykrywanie i eliminowanie takich ataków będzie stawało się coraz trudniejsze. Mimo to świadomy podejście do sprawdzania kodu źródłowego i zależności pozostaje najlepszą ochroną przed podobnymi zagrożeniami.

Komentarze (0)

Podziel się swoją opinią — prosimy o uprzejmość i trzymanie się tematu.

Nie ma jeszcze komentarzy. Zostaw komentarz i podziel się swoją opinią!

Aby dodać komentarz, zaloguj się.

Zaloguj się, aby komentować