CVE-2026-82217 охватывает версии Eclipse Theia с 1.73.0 по ниже 1.75.0. В AI «Agent Mode» инструменты редактирования файлов — writeFileContent, suggestFileContent и связанные помощники для replace и state — разрешали путь, заданный моделью, без проверки, что он принадлежит рабочему пространству. Относительный путь ../.bashrc, абсолютный путь или расширение ~ приводили к записи или удалению файлов за пределами рабочего пространства с правами операционной системы backend-пользователя. В Agent Mode такие изменения применяются без диалога подтверждения. Запись в ~/.ssh/authorized_keys или в файл запуска shell повышает это до выполнения кода на backend. CVSS 3.1 составляет 8.8; оценку назначил NVD, а не сам проект.
Исправление, которого никто не мог увидеть
В уведомлении указан один коммит. Этот коммит относится к pull request под названием «ai-ide: add Memory prompt capability». Он действительно затрагивает уязвимые файлы — file-changeset-functions.ts и workspace-functions.ts — но по названию и описанию это функциональное изменение. Администратор, читавший релиз-ноты 1.75.0, не получил никаких признаков того, что обновление закрывает цепочку от path traversal до RCE.
Два промежутка
Сообщение в Eclipse: 24 июля. Коммит с исправлением: 11 августа. Релиз с ним: 27 августа. Уведомление: 31 августа. Уязвимые 1.73 и 1.74 оставались в эксплуатации примерно два месяца после сообщения, а исправление было публично доступно в открытом репозитории 20 дней до раскрытия — его мог прочитать любой, кто сравнивает коммиты, и не мог увидеть тот, кто читает только уведомления.
Что упускает сокращённая формулировка
Фраза «Theia исправила уязвимость» подразумевает, что был добавлен недостающий контроль. В собственном отчёте Eclipse говорится об неполном исправлении: проверки с названиями ensureWithinWorkspace и resolveToUri уже существовали на уровне resolver, а инструменты с наибольшим эффектом обходили их. Защита была, но не применялась там, где это было важнее всего — другой тип сбоя, и его труднее заметить при ревью.
Почему это важно шире
Это не теоретическая prompt injection. Это полноценная цепочка: внешний контент, вывод модели, путь к файлу, запись за пределами рабочего пространства, код на хосте — без подтверждения пользователя, потому что auto-apply заложен в сам дизайн. Любая IDE-агентная система, которая сочетает путь, предложенный моделью, с автоматическим применением, имеет ту же структуру.
