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