| · | 07.08 | TONTOU - атака на CPU Intel и AMD, позволяющая обойти защиту от уязвимостей Spectre v2 (54 +15) |
|
Исследователи из массачусетского технологического института выявили технику атаки TONTOU (Time-of-Neutralization to Time-of-Use), предлагающую новый способ эксплуатации микроархитектурных уязвимостей класса Spectre v2. Уязвимость даёт возможность определить содержимое памяти ядра при выполнении эксплоита в пространстве пользователя. Код для блокирования эксплуатации уязвимости принят в состав ядра Linux 5 августа и включён в состав выпусков 7.1.7, 6.18.43, 6.12.102, 6.6.149, 6.1.181, 5.15.214 и 5.10.263.
Исследователями продемонстрирована возможность совершения атаки локальным непривилегированным пользователем для определения хэша пароля пользователя root, хранимого в файле /etc/shadow и загруженного в память при выполнении аутентификации в системе. Исследователям удалось добиться утечки данных из памяти ядра с производительностью 5.47 байт в секунду и точностью 91.97%. Из 10 тестовых запусков эксплоита, в среднем продолжавшихся 18 минут, в половине случаев удалось успешно определить наличие в памяти файла /etc/shadow и извлечь его содержимое. Эксплоит продемонстрирован на системах с процессорами AMD и может применяться с CPU AMD семейств Zen 1-4. На системах Intel атака также осуществима, но эксплуатация более сложна. Для защиты от переполнения стека адресов возврата и блокирования уязвимости SRSO (Speculative Return Stack Overflow) в процессорах AMD применяется механизм защиты Safe-RET, который очищает буфер предсказания переходов после каждого использования и сужает окно проведения атаки до 2 инструкций, выполняемых несколько десятков наносекунд. Для обхода данной защиты и расширения окна совершения атаки реализована техника замедления CPU, позволившая успеть выполнить подстановку прерывания в нужный момент для перенаправления потока выполнения в ядре и использования обработчика прерывания для искажения записи в буфере предсказания переходов. Для эксплуатации уязвимости SRSO атакующий может создать условия, когда блок предсказания переходов спекулятивно выполнит большое число некорректно предсказанных вызовов CALL, достаточное для того чтобы переполнить стек адресов возврата и перезаписать корректно предсказанные точки возврата, размещённые в начале стека. В итоге, начальные элементы стека могут быть перезаписаны на выбранные атакующим значения, что в дальнейшем приведёт к использованию этих заменённых значений при спекулятивном выполнении инструкции RET в контексте другого процесса. Процессор определит, что предсказание ветвления не оправдалось и откатит операцию в исходное состояние, но обработанные в процессе спекулятивного выполнения данные осядут в кэше и микроархитектурных буферах. Если ошибочно выполненный блок осуществляет обращение к памяти, то его спекулятивное выполнение приведёт к оседанию в общем кэше и данных, прочитанных из памяти. Для извлечения информации из кэша может применяться один из способов определения содержимого кэша на основе анализа изменения времени доступа к прокэшированным и не прокэшированным данным.
| ||
|
Обсуждение (54 +15) |
Тип: Проблемы безопасности |
| ||
| · | 07.08 | Zapscape - уязвимость в гипервизоре KVM, позволяющая получить root-доступ к хост-системе (11 +13) |
|
Раскрыта информация об уязвимости (CVE-2026-64561) в гипервизоре KVM, позволяющей получить доступ с правами root к хост-окружению при наличии доступа с правами root в гостевой системе. Проблема также может применяться для локального повышения своих привилегий при наличии доступа к устройству /dev/kvm (например, в RHEL подобный доступ предоставляется всем пользователям). Для загрузки доступен прототип экспоита. Проблеме присвоено кодовое имя Zapscape.
Уязвимость вызвана обращением к памяти после её освобождения (use-after-free) в компонентах гипервизора KVM, выполняемых на стороне виртуальной машины для эмуляции блока управления памятью (MMU) и трансляции адресов между хостом и гостевой системой. Уязвимость проявляется на системах с процессорами Intel и AMD в процессе рекурсивного удаления shadow-страниц памяти, которое происходит при освобождении памяти MMU (KVM рекурсивно удаляет корневую shadow-страницу, которая продолжает использоваться во время очистки MMU). Проблема вызвана ошибкой, допущенной 6 лет назад, и устранённой несколько дней назад в обновлениях ядра 7.1.6, 6.18.42 и 6.6.148. Статус устранения уязвимостей в дистрибутивах можно оценить на данных страницах: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora.
| ||
|
Обсуждение (11 +13) |
Тип: Проблемы безопасности |
| ||
| · | 07.08 | Запрет на приём AI-патчей в раздел drivers/staging ядра Linux (52 +23) |
|
Грег Кроа-Хартман (Greg Kroah-Hartman), отвечающий за поддержку стабильной и "staging" веток ядра Linux, объявил о прекращении приёма в раздел drivers/staging патчей, подготовленных с использованием AI-инструментов. Отмечается, что подобные автоматически генерируемые патчи противоречат основной идее использования подсистемы drivers/staging как учебной площадки для новых разработчиков ядра. Код в drivers/staging изначально позиционируется как проблемный (TAINT_CRAP) и сопровождающие намеренно не проводят автоматизированную чистку, чтобы дать начинающим разработчикам развивать навык самостоятельного решения мелких проблем в ядре.
Исключение сделано только для созданных при помощи AI патчей, устраняющих реальные проблемы с безопасностью. При этом подобные исправления в драйверах должны быть протестированы на реальном оборудовании и снабжены отчётом о проведении тестирования. Автор, отправивший патч, должен быть способен доказать, что исправление корректно. Ручная проверка необходима, так как по оценке Грега около трети исправлений потенциальных проблем с безопасностью, созданных при помощи AI-моделей, даже самых современных, являются некорректными или приводят к проблемам.
| ||
|
Обсуждение (52 +23) |
Тип: К сведению |
| ||
| · | 07.08 | Опубликован дисплейный менеджер LightDM 1.33.0 (30 +11) |
|
Разработчики Ubuntu опубликовали выпуск дисплейного менеджера LightDM 1.33.0, который применяется в Linux Mint, Lubuntu, Xubuntu и Ubuntu MATE. LightDM предоставляет фоновый процесс для запуска дисплейных серверов и модулей с графическим интерфейсом для входа в систему, а также организации аутентификации пользователей через PAM и удалённого подключения к рабочему столу. Проект не привязан к конкретным средам рабочего стола и протоколам (X11, Wayland) и примечателен низким потреблением памяти. Код написан на языке Си и распространяется под лицензией GPL.
В новой версии в библиотеку liblightdm-qt, предназначенную для разработки графических экранов входа в систему, добавлена поддержка Qt6. Возможность использования Qt5 сохранена в форме опции. Включены исправления ошибок, накопившиеся за 4 года с прошлого обновления. Добавлены оптимизации производительности.
| ||
|
Обсуждение (30 +11) |
Тип: Программы |
| ||
| · | 06.08 | Опубликован mount-tui, интерфейс для монтирования дисков и SMB-ресурсов в Linux (44 –6) |
|
Опубликован проект mount-tui, развивающий интерактивный текстовый интерфейс для просмотра и монтирования локальных блочных устройств, а также подключения сетевых ресурсов по протоколу SMB/CIFS. Программа написана на языке Rust с использованием библиотек Ratatui и Crossterm, и распространяется под лицензией Apache 2.0.
mount-tui выводит список дисков и разделов с указанием файловой системы, размера, точки монтирования и дополнительных сведений об устройстве. Поддерживаются фильтрация списка, просмотр псевдофайловых систем, монтирование и размонтирование разделов, изменение точки монтирования и параметров монтирования. Для файловых систем NTFS предусмотрен выбор между пользовательским драйвером ntfs-3g и входящим в состав ядра Linux драйвером ntfs3. По умолчанию применяется ntfs-3g как более совместимый вариант. Если попытка монтирования в режиме чтения и записи завершилась ошибкой, программа предлагает повторить операцию в режиме "только для чтения". При подключении ресурсов SMB/CIFS учётные данные вводятся непосредственно в интерфейсе программы. Пароль не передаётся в аргументах командной строки, а помещается во временный файл с правами доступа 0600. Допускаются гостевые подключения и повторное подключение ранее смонтированных ресурсов с изменёнными параметрами. По умолчанию локальные файловые системы монтируются в каталоги вида "/media/{пользователь>/<метка-или-устройство>". Программа умеет проверять доступ текущего пользователя к точке монтирования и при необходимости назначать подходящие UID/GID либо изменять владельца корневого каталога смонтированной Unix-совместимой файловой системы. Владение вложенными файлами при этом не затрагивается. Утилиту mount-tui можно запустить от обычного пользователя. При попытке выполнить привилегированную операцию программа предлагает перезапустить себя через sudo. Для работы с SMB требуется пакет cifs-utils, а для использования драйвера ntfs-3g - одноимённый пакет. Также подготовлены команды для установки исполняемого файла в "/usr/local/bin" и сборки пакетов в форматах DEB и RPM. ![]()
| ||
| · | 06.08 | Выпуск Gotcha 0.4.10, платформы мониторинга ошибок и производительности (12 –1) |
|
Опубликован выпуск платформы мониторинга Gotcha 0.4.10, объединяющей средства отслеживания ошибок, распределённые трейсы, метрики, профили производительности и мониторинг доступности с публичными статус-страницами. Проект написан на Go и распространяется под лицензией Apache-2.0.
Приложение поставляется одним бинарным файлом (или docker-compose-стеком) и использует PostgreSQL для оперативных данных и ClickHouse для телеметрии. Заявленные минимальные требования - 2 vCPU и 2 ГБ ОЗУ. Приём данных совместим с проводным протоколом Sentry SDK (миграция сводится к замене DSN) и OTLP. Интерфейс двуязычный - русский и английский. Выпуски в серии 0.4.x были сосредоточены на стабилизации: ограничение потребления памяти контейнерами (потолок кучи выводится из cgroup-лимита), разделение liveness/readiness-проб (/healthz и /readyz), восстановление после оборванных миграций, откат релиза без восстановления из бэкапа за счёт признака совместимости схемы, единый язык уведомлений, доступность интерфейса (клавиатурная навигация, скринридеры, контраст). Внесены изменения, связанные с безопасностью, такие как отзыв доступа к проектам команд при исключении из организации, регистрация по приглашению только по токену из ссылки, защита от переполнения стека при разборе глубоко вложенных OTLP/JSON-запросов. Из последних патчей: перенаправление доставки Telegram-уведомлений на собственный сервер Bot API (GOTCHA_TELEGRAM_API_BASE) и настройка MTU контейнерной сети для работы через туннели (GOTCHA_NET_MTU). ![]()
| ||
| · | 06.08 | Представлен Denial, композитный сервер со встроенным движком Flutter (26 –8) |
|
Проект Denial развивает открытый композитный сервер на базе протокола Wayland, примечательный встраиванием движка построения пользовательского интерфейса на базе фреймворка Flutter. В отличие от традиционных решений, в которых Flutter-приложения запускаются поверх оконного менеджера, встраивание Flutter в композитный сервер позволило напрямую задействовать его для отрисовки всех элементов пользовательского окружения, создания анимации и компоновки окон. Проект находится на стадии публичного альфа-тестирования. Код написан на языках Dart и Rust, и распространяется под лицензией GPLv3+. При разработке задействован AI-ассистент OpenAI Codex.
Низкоуровневая часть композитного сервера написана на языке Rust с использованием библиотеки Smithay, и отвечает за обработку протоколов Wayland, управление состояниями клиентских окон, взаимодействие с устройствами ввода через libinput, управление устройствами вывода (DRM/KMS), переключение фокуса и управления ресурсами. Пользовательская оболочка написана на языке Dart и использует Flutter для управления раскладкой окон, формирования панелей, управления жестами, навигации и визуальных эффектов. Кадровые буферы Wayland-приложений импортируются как внешние GPU-текстуры через расширение "EGL_EXT_image_dma_buf_import", что исключает копирование данных между CPU и GPU. Сцена, включающая элементы оболочки на базе Flutter и текстуры запущенных программ, отрисовываются напрямую в GBM-буферы (Generic Buffer Management) и выводятся на экран через DRM/KMS без промежуточной отрисовки. Поддерживается запуск Wayland-приложений, а также X11-приложений с помощью прослойки Xwayland (подтверждена корректная работа игр под Steam и Proton). Реализованы такие возможности, как вывод на несколько мониторов, встроенная система уведомлений, независимая регулировка громкости для каждого окна, блокировка экрана и поддержка desktop-порталов XDG для организации записи и трансляции экрана. При разработке пользовательской оболочки поддерживается горячая перезагрузка (Hot Reload), применение утилит Flutter Inspector, а также использование для отладки встроенных в браузеры инструментов для web-разработчиков. ![]()
| ||
| · | 06.08 | Открыт код Cloudflare OS, платформы для приложений, создаваемых через AI (36 –17) |
|
Компания Cloudflare открыла код платформы Cloudflare OS, предназначенной для создания персональных приложений с использованием вайб-кодинга, а также для безопасной работы с этими приложениями и AI-агентами. Код написан на языке TypeScript и распространяется под лицензией Apache 2.0.
Cloudflare OS преподносится как подобие операционной системы для приложений, создаваемых через AI, роль ядра в которой занимает пакет workshop-backend, предоставляющий пользователям доступ к программам и устройствам (Gadget и Gatekeeper), реализует их изоляцию и обеспечивает управление доступом. Роль драйверов выполняют gatekeeper-ы, связывающие пользователей и AI-агентов с внешними сервисами, процессов - gadget-ы, а исполняемых файлов - blueprint-ы (эталонные шаблоны). В качестве пользовательской оболочки задействован workshop-frontend. Cloudflare OS предоставляет альтернативу модели SaaS, в которой вместо использования общих централизованных сервисов пользователю предлагается запускать собственные изолированные копии приложений. Например, вместо использования сервисов для создания презентации или генерации отчёта, пользователю предоставляются свои экземпляры приложений, которые при помощи AI можно изменить, расширить или адаптировать для конкретных потребностей. Каждое приложение и AI-агент выполняются в изолированном окружении без прямого доступа к интернету и по умолчанию не могут обращаться к сервисам и внешним данным, доступ к которым предоставляется точечно при помощи gatekeeper-ов после явного разрешения пользователем. Cloudflare OS сочетает в себе:
| ||
|
Обсуждение (36 –17) |
Тип: К сведению |
| ||
| · | 06.08 | Выпуск uutils 0.10, варианта GNU Coreutils на языке Rust (100 –15) |
|
Опубликован выпуск проекта uutils coreutils 0.10.0 (Rust Coreutils), развивающего аналог пакета GNU Coreutils, написанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, среди прочего способной работать на платформах Windows, Redox и Fuchsia.
Rust Coreutils задействован по умолчанию в выпуске Ubuntu 25.10 и частично в Ubuntu 26.04. Rust Coreutils также применяется в дистрибутивах AerynOS (Serpent OS) и Apertis (развивается компанией Collabora). В отличие от GNU Coreutils реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPL. Дополнительно той же командой разработчиков развиваются написанные на Rust аналоги наборов утилит util-linux, diffutils, findutils, procps и acl, а также программ sed и login. В новой версии Rust Coreutils:
| ||
|
Обсуждение (100 –15) |
Тип: Программы |
| ||
| · | 06.08 | Проект Rust утвердил правила в отношении использования AI-инструментов (135 +14) |
|
Разработчики языка программирования Rust утвердили правила применения AI-ассистентов в проекте. За отдельными исключениями, правила запрещают передачу кода, сгенерированного через AI, но разрешают использование AI для анализа, изучения, рецензирования и проверки кода. Правила распространяются только на основной репозиторий rust-lang/rust, и отдельно утверждаются командами разработчиков субмодулей, подветок и зависимостей из каталога crates.io.
Применение AI допускается в случаях, когда полученная через AI информация в частном порядке используется только одним разработчиком и не распространяется публично. Например, когда разработчик задаёт AI вопросы по коду, формирует для себя сводку по комментариям к PR или issue, привлекает AI для рецензирования изменений, создаёт через AI инструменты для личного использования, консультируется через AI о возможных вариантах выбора решения. Также допускается создание через AI экспериментальных изменений, не подлежащих рецензированию другими участниками. Запрещено применение AI для формирования комментариев, отчётов о проблемах и описаний изменений, публикуемых от имени участника. При этом разрешено цитирование выдачи от AI с явной пометкой, что контент сформирован через AI (например, прикрепление результатов диагностики через AI). Запрещено создание документации через AI. При рецензировании запрещено рассмотрение выводов AI как достаточных для приёма или отклонения изменений - результаты проверки через AI могут носить только рекомендательный характер. С оговорками и явным упоминанием, что результат получен через AI, разрешено применение AI для машинного перевода на другие языки, поиска и верификации ошибок, а также внесения незначительных изменений в код и тексты (например, правка опечаток и подбор синонимов). В рамках эксперимента допускается передача заранее согласованных, некритичных, досконально проверенных и хорошо протестированных изменений, изначально сгенерированных через AI. Перед отправкой pull-запроса c подобным изменением, разработчик должен заранее договориться с рецензирующими. Предлагаемые изменения должны помечаться меткой "ai-assisted" и могут затрагивать вторичные инструменты, такие как tidy и linkchecker, но не должны касаться ключевых возможностей и элементов языка. Для отслеживания результатов эксперимента изменения предписано отправлять в отдельный приватный Zulip-канал, доступ к которому предоставлен только участникам проекта.
| ||
|
Обсуждение (135 +14) |
Тип: К сведению |
| ||
| · | 06.08 | Выпуск дистрибутива Tribblix 41, построенного на технологиях OpenSolaris и Illumos (23 +8) |
|
Опубликован выпуск дистрибутива Tribblix 41, основанного на наработках проекта Illumos, продолжающего развитие ядра, сетевого стека, файловых систем, драйверов, библиотек и базового набора системных утилит OpenSolaris. Проект пытается сохранить классический ретро-стиль Solaris при использовании современных версий программ. Из Illumos заимствуются ядро и инструментарий командной строки, а всё остальное пересобирается с использованием собственной сборочной системы. Для распространения программ используются пакеты SVR4. В качестве графических окружений предлагаются Xfce, MATE и Enlightenment. Готовые сборки формируются для систем x86_64.
В новой версии отмечен перенос исправлений уязвимостей из проекта Illumos и обновление версий программ, например, обновлены OpenSSH 10.4p1, JDK 26.0.2, nginx 1.30.4, go 1.26.5, git 2.55.0, Pale Moon 34.3.2, Python 3.13.14, llvm 22.1.7. Добавлен новый пакет pctgemini.
| ||
|
Обсуждение (23 +8) |
Тип: Программы |
| ||
| · | 06.08 | В дистрибутиве Proxmox Virtual Environment реализована поддержка архитектуры ARM64 (9 +7) |
|
Разработчики дистрибутива Proxmox Virtual Environment, предназначенного для развертывания и обслуживания виртуальных серверов с использованием LXC и KVM, объявили о начале публикации официальных сборок для архитектуры ARM64 (aarch64). До этого дистрибутив выпускался только для систем x86_64. В arm64-сборках заявлена первичная поддержка платформ NVIDIA Grace Hopper и NVIDIA Vera, а также обеспечена работа на серверных платах с процессорами ARMv9-A и ARMv8-A, на которых используется UEFI (устройства с конфигурацией на базе Device Tree, такие как Raspberry Pi, не поддерживаются).
Сборки для ARM64 основаны на пакетной базе Debian 13.5 и поставляются с ядром Linux 7.0, QEMU 11.0, LXC 7.0 и ZFS 2.4. Настройки и инструментарий идентичны со сборками для x86-64, за исключением возможности загрузки только через UEFI с использованием OVMF (AAVMF), отсутствия механизмов шифрования памяти AMD SEV, отсутствия vGPU на базе Intel GVT-g и не предоставления пакета с микрокодом для CPU. Гостевые системы могут запускаться только на узлах с той же архитектурой. Proxmox VE предоставляет средства для развёртывания полностью готовой системы виртуальных серверов промышленного уровня с управлением через web-интерфейс, рассчитанный на управление сотнями или даже тысячами виртуальных машин. Дистрибутив имеет встроенные инструменты для организации резервного копирования виртуальных окружений и доступную из коробки поддержку кластеризации, включая возможность миграции виртуальных окружений с одного узла на другой без остановки работы. Среди особенностей web-интерфейса: поддержка безопасной VNC-консоли; управление доступом ко всем доступным объектам (VM, хранилище, узлы и т.п.) на основе ролей; поддержка различных механизмов аутентификации (MS ADS, LDAP, Linux PAM, Proxmox VE authentication).
| ||
|
Обсуждение (9 +7) |
Тип: К сведению |
| ||
| · | 06.08 | Релиз Mesa 26.2, свободной реализации OpenGL и Vulkan (11 +26) |
|
После трёх месяцев разработки представлен релиз свободной реализации API Vulkan, OpenGL, OpenGL ES и OpenCL - Mesa 26.2.0. Первый выпуск ветки Mesa 26.2.0 имеет экспериментальный статус - после проведения окончательной стабилизации кода будет выпущена стабильная версия 26.2.1.
В Mesa 26.2 доступна поддержка графического API Vulkan 1.4 в драйверах ANV для GPU Intel, RADV для GPU AMD, NVK для GPU NVIDIA, HoneyKrisp (hk) для GPU Apple, kk (KosmicKrisp, Vulkan поверх Metal), Turnip для GPU Qualcomm, PanVK для GPU ARM Mali, в программном растеризаторе lavapipe (lvp) и в режиме эмулятора (vn). В драйверах v3dv (GPU Broadcom VideoCore для Raspberry Pi 4+) и dzn (реализация Vulkan поверх Direct3D 12) поддерживается Vulkan 1.0, а драйвере pvr (GPU Imagination PowerVR) - Vulkan 1.2. В Mesa также обеспечивается полная поддержка OpenGL 4.6 для драйверов iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (старые GPU Intel Gen4-Gen7.5), AMD (r600), zink, llvmpipe, virgl (виртуальный GPU Virgil3D для QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (прослойка для организации работы OpenGL поверх DirectX 12) и asahi (GPU AGX, используемый в чипах Apple M1 и M2). Поддержка OpenGL 4.5 доступна для GPU NVIDIA (nvc0). Поддержка OpenGL 3.3 присутствует в драйверах softpipe (программный растеризатор) и nv50 (NVIDIA NV50). В драйверах panfrost (GPU ARM Mali) и v3d (GPU Broadcom VideoCore) поддерживается OpenGL 3.1. Основные новшества:
| ||
|
Обсуждение (11 +26) |
Тип: Программы |
| ||
| · | 05.08 | В ходе тестирования AI-агент попытался скомпрометировать проект на GitHub (123 +29) |
|
Организация AISI (AI Security Institute), учреждённая при департаменте науки, инноваций и технологий Великобритании, опубликовала отчёт об эксперименте, приведшем к результатам, напоминающем случай с AI-агентом OpenAI. При 122 тестовых запусках для решения поставленной задачи AI-агенты совершили 19 несанкционированных действий в сети интернет (в 17 случаях использовалась модель Mythos 5, в 2 - GPT-5.6 Sol, у которых не ограничен доступ в интернет и были отключены механизмы, ограничивающие использование для проведения кибератак).
В одном из случаев AI-агент совершил реальную атаку на проект, размещённый на GitHub, и попытался добиться интеграции pull-запроса с вредоносным кодом. Для продвижения изменения AI-агент зарегистрировал несколько учётных записей на GitHub и применил методы социальной инженерии для давления на сопровождающих, используя сеть Tor для скрытия своих следов. Сопровождающий распознал вредоносный код и не принял его. Помимо этого AI-агент отправил на email разработчиков файлы с вредоносным кодом и пытался убедить их запустить этот код, а также внедрил скрытые вредоносные инструкции для AI-агентов, которые могли применяться при разработке. В ходе эксперимента агентам не давали явных инструкций по совершению атак и совершённые действия рассматриваются как побочный эффект при поиске пути решения сложной задачи.
| ||
|
Обсуждение (123 +29) |
Тип: Проблемы безопасности |
| ||
| · | 04.08 | Новый червь ChainDrop поразил более 400 NPM-пакетов (59 +19) |
|
Зафиксирована массовая атака на пакеты в репозитории NPM, проводимая с использованием нового самораспространяющегося червя ChainDrop, подставляющего вредоносное ПО в зависимости. В результате атаки опубликовано 2212 вредоносных выпусков для 444 пакетов. Наиболее популярные из скомпрометированных пакетов keyv, flat-cache и file-entry-cache насчитывают 154, 149.9 и 147.6 миллионов загрузок в неделю.
Загрузчик червя размещался в файлах setup.mjs и Math_Symbol.js, которые запускались при помощи preinstall-обработчика ("preinstall": "node setup.mjs"), вызываемого при установке поражённого пакета. Указанные скрипты загружали легитимный Bun runtime и обфусцированный код червя, размером 710 Кб. После активации червь выполнял поиск в системе и в переменных окружения токенов к NPM, PyPI, CircleCI, AWS, GCP, Docker, Azure, HashiCorp, KubernetesK8s и другим сервисам (всего анализировалось более 140 файловых путей, типа ~/.npmrc), а также анализировал память (через /proc/<pid>/mem) окружения GitHub Actions на предмет токенов и учётных данных. В случае обнаружения токена для подключения к каталогу NPM червь автоматически публиковал новые вредоносные релизы для разрабатываемых в текущем окружении пакетов, поражая дерево зависимостей. В отличие от ранее выявленного червя Shai-Hulud 2.0 в ChainDrop была реализована техника EtherHiding для получения управляющих команд через публичный блокчейн Ethereum, задействовано шифрование для скрытия передаваемых на сервер атакующих конфиденциальных данных и обеспечено внедрение в файлы конфигурации Claude Code, VS Code и GitHub Copilot для закрепления присутствия в системе. Если в системе установлена русскоязычная локаль (LANG=ru*), то червь прекращает работу. Атака началась с компрометации процесса формирования релизов на базе GitHub Actions для пакета keyv, насчитывающего 154 млн загрузок в неделю и используемого как зависимость в 1703 пакетах. Доступ получен в результате атаки на сопровождающего, позволившей получить его учётные данные. Атакующие сформировали новую версию 6.0.0, подставив в неё вредоносный код, и опубликовали её с использованием механизма "Trusted Publishers" и корректной SLSA-аттестацией. После публикации червь поразил многие зависимые от keyv пакеты и по цепочке стал поражать непрямые зависимости. Среди наиболее популярных пакетов, которые оказались поражены червём, опубликовавшим для них вредоносные релизы:
| ||
|
Обсуждение (59 +19) |
Тип: Проблемы безопасности |
Источник: Червь ChainDrop поразил более 400 NPM-пакетов |
| ||
| Следующая страница (раньше) >> | ||
|
Закладки на сайте Проследить за страницей |
Created 1996-2026 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |