Хакерите попълват GitHub проекти, които съдържат скрит злонамерен код.
Киберпрестъпниците маскират зловреден код с помощта на „невидими“ Unicode‑символи
Нови изследвания от компания Aikido Security показаха, че в началото на март се появиха 151 проекта в GitHub, съдържащи скрит шпионски код. Зловредните пакети използват символи Unicode, които за човека изглеждат като интервали или празни редове, но при обикновен изпълнителен JavaScript се превръщат в изпълним байткод и попадат във функцията `eval()`.
Как изглежда атаката
1. Имена на библиотеки
Пакетите се наричат същото като известни комерсиални решения (например „React“ или „Node.js“). Това кара разработчиците да ги считат за безопасни и да ги включват в своите проекти.
2. „Читим код“ + скрити фрагменти
Голямата част от кода изглежда обикновена, лесна за четене програма. Вътре се намират блокове, запълнени с „невидими“ символи. При ръчен преглед те изчезват, а при изпълнение – се активират.
3. Тестови репозитории
Такъв зловреден пакет вече е открит не само в GitHub, но и в NPM, Open VSX и маркетплейса Visual Studio Code.
Защо им е трудно да се забележат
- Промените в проектите изглеждат обикновени: актуализация на версията, поправки на грешки, рефакторинг.
- Злоумишленците, според експерти, използват големи езикови модели ИИ за автоматизиране на подмяната на кода. Това позволява бързо подготовка на повече от 150 проекта без ръчна работа.
Историята на символите
Unicode‑символите, отговарящи на латински букви, са добавени в системата пред десетилетия. От 2024 г. те се използват от хакери за маскиране на зловредни заявки към чат‑ботове и код в репозитории. Традиционните инструменти за статичен анализ не ги откриват; само при изпълнение на JavaScript малките декодери разкриват истинския байткод.
Какво да правят разработчиците
1. Проверете зависимостите – преди включване на външни библиотеки внимателно разгледайте техния изходен код и историята на промените.
2. Автоматични проверки – използвайте линтери, скенери за „невидими“ символи и инструменти за динамично поведение.
3. Актуализирайте – следете дали пакетите не са били премахнати след изтегляне; това може да сигнализира за скрита заплаха.
Перспективи
Ако предположенията за използване на ИИ в тази схема се потвърдят, откриването и отстраняването на такива атаки ще става все по-трудно. Въпреки това, осъзнатият подход към проверка на изходния код и зависимости остава най-добрата защита срещу подобни заплахи.
Коментари (0)
Споделете мнението си — моля, бъдете учтиви и по темата.
Влезте, за да коментирате