OpenAI отозвала и заменила сертификат подписи кода для всех настольных приложений под macOS — ChatGPT Desktop, Codex, Codex CLI и Atlas. Причиной стал инцидент с компрометацией популярной JavaScript-библиотеки Axios, затронувший цепочку поставок. Вредоносный пакет попал в процесс сборки через рабочий процесс GitHub Actions, имевший доступ к сертификату подписи приложений для macOS.
Пользователям macOS-приложений OpenAI рекомендуется обновить их до версий, подписанных новым сертификатом, до 8 мая 2026 года. После этой даты старые сборки перестанут получать обновления и могут помечаться системой безопасности macOS как недоверенные.
Что произошло
31 марта 2026 года злоумышленники скомпрометировали учётную запись сопровождающего Axios в реестре npm и опубликовали вредоносные версии библиотеки (в том числе 1.14.1 и 0.30.4). По данным исследователей безопасности, в них могла использоваться дополнительная вредоносная зависимость, распространявшаяся ограниченное время.
В это окно попал рабочий процесс GitHub Actions, который OpenAI использует для подписи macOS-приложений. Процесс автоматически загрузил и выполнил одну из скомпрометированных версий Axios и имел доступ к сертификату разработчика Apple Developer ID и материалам нотаризации, которыми подписываются ChatGPT Desktop, Codex, Codex CLI и Atlas.
По данным профильных компаний в области кибербезопасности, атака могла быть связана с организованными группами, специализирующимися на атаках на цепочки поставок. Учётная запись сопровождающего npm была скомпрометирована с использованием методов социальной инженерии.
Был ли похищен сертификат
OpenAI привлекла стороннюю фирму для цифровой криминалистики и реагирования на инциденты. По итогам расследования компания не выявила признаков успешного извлечения сертификата вредоносной нагрузкой.
Дополнительно OpenAI проверила события подписания и нотаризации и подтвердила отсутствие аномальной активности, а также то, что опубликованное программное обеспечение не подвергалось несанкционированным изменениям. Тем не менее компания приняла решение считать сертификат потенциально скомпрометированным и отозвать его в превентивном порядке.
Даже потенциальная компрометация сертификата подписи кода считается критичной: в случае его утечки злоумышленники могли бы подписывать вредоносные приложения, маскируя их под легитимное ПО.
Что делать пользователям
- Если установлены ChatGPT Desktop, Codex, Codex CLI или Atlas на macOS — обновить приложения до актуальных версий до 8 мая 2026 года.
- Обновляться только через встроенный механизм обновления или официальные страницы загрузки OpenAI.
- Не устанавливать приложения по ссылкам из писем, сообщений или сторонних сайтов.
- С осторожностью относиться к любым установщикам «OpenAI», «ChatGPT» или «Codex», распространяемым вне официальных каналов.
Минимальные версии приложений, подписанные новым сертификатом, и страницы загрузки:
- ChatGPT Desktop 1.2026.071 — openai.com/chatgpt/desktop
- Codex App 26.406.40811 — developers.openai.com/codex/app
- Codex CLI 0.119.0 — github.com/openai/codex
- Atlas 1.2026.84.2 — chatgpt.com/atlas
Инцидент не затрагивает версии приложений для iOS, Android, Windows и Linux, а также веб-версии сервисов OpenAI. Пароли учётных записей и API-ключи менять не требуется.
Причина инцидента
По данным OpenAI, причиной инцидента стала конфигурация рабочего процесса GitHub Actions: использовались плавающие версии зависимостей вместо закреплённых хэшей коммитов, а также отсутствовало ограничение на минимальный возраст новых пакетов перед их загрузкой.
Это позволило автоматически загрузить скомпрометированную версию Axios в течение короткого периода, пока вредоносный пакет находился в реестре npm.
Инцидент подчёркивает риски атак на цепочки поставок и важность защиты CI/CD-процессов. Среди рекомендуемых мер:
- Закрепление зависимостей по хэшу коммита или цифровому отпечатку.
- Использование политики минимального возраста релизов.
- Применение краткоживущих учётных данных с ограниченными правами.
- Включение двухфакторной аутентификации для учётных записей сопровождающих.
- Изоляция процессов сборки.
