Codex CLI тайком ставит самообновляющийся фоновый демон

· Безопасность
Начиная с версии 0.157.0 инструмент OpenAI при первом запуске поднимает постоянный фоновый процесс, который копирует себя и обновляется без ведома пользователя. В сообществе поведение сравнивают с вредоносным ПО.

cover.svg

Пользователь под ником Yihua-Liu-1997 открыл на GitHub обращение к разработчикам Codex CLI — консольного инструмента OpenAI. Начиная с версии 0.157.0 простое открытие интерактивной сессии приводит к неожиданным последствиям, и автор просит сделать параметр daemon_auto_start отключённым по умолчанию или хотя бы спрашивать разрешения один раз.

Что происходит при запуске

По описанию, запуск сессии поднимает постоянный фоновый демон (codex app-server --managed-daemon). Он работает без терминала, в собственной сессии, и продолжает жить после закрытия всех окон Codex — процесс переподчиняется PID 1 и останавливается только отдельной командой или при перезагрузке.

Далее демон копирует весь платформенный пакет — около 374 МБ, включая бинарники и вложенные bwrap, zsh и rg — в каталог ~/.codex/packages/ и запускается уже из этой копии. С этого момента версия бэкенда отвязывается от версии CLI, установленной пакетным менеджером.

Отдельно стартует фоновый апдейтер: он проверяет наличие обновлений через пять минут после старта, затем ежечасно, скачивает новые релизы и перезапускает бэкенд. По словам автора, такой перезапуск способен прервать активные задачи после 60-секундной отсрочки.

Есть и побочный эффект с окружением: демон запоминает переменные той сессии, которая его породила. Если Codex запускается через обёртку, задающую HTTPS_PROXY для каждого вызова, весь исходящий трафик уходит через прокси первой сессии независимо от настроек последующих.

Чего просят у разработчиков

Автор считает, что для CLI наименее неожиданное поведение — когда бэкенд живёт и умирает вместе с окном, запускает именно установленный бинарник и не обновляет себя втихую. Общий самообновляющийся демон уместен для десктопного приложения или режима Remote Control, но не как молчаливое умолчание. Если же его оставят включённым, он просит хотя бы завершать автозапущенный демон при отключении последнего клиента и не копировать себя, если CLI установлен через npm, brew или pacman.

Попутно обнаружился баг: команда остановки демона не убивает процесс апдейтера, и его приходится завершать вручную.

Реакция сообщества

Обсуждение собрало немало сочувствующих. Один из участников написал, что CLI «непригоден к использованию», пока проблему не исправят. Другие высказались резче: поведение инструмента, по их словам, напоминает признаки вредоносного ПО, и кто-то даже усомнился, что оно возникло случайно. Судя по комментариям, разработчики уже подготовили коммит, отключающий автозапуск демона по умолчанию.


Источник: Hacker News

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.