Патчи безопасности применяются к последнему релизу. Старые версии обновляйте перед отчетом.
Не открывайте публичный issue для уязвимостей безопасности. Используйте GitHub Private Vulnerability Reporting (вкладка Security → Report a vulnerability на странице репозитория) либо напишите напрямую мейнтейнеру.
Постарайтесь указать:
- версию плагина и EDT;
- описание проблемы и шаги воспроизведения;
- возможное влияние (выполнение кода, утечка данных, отказ в обслуживании);
- предложение фикса, если есть.
Ответ - в течение нескольких дней. Координированное раскрытие приветствуется.
AI-EDT - локальный MCP-сервер для рабочего процесса одного разработчика.
- Сервер слушает только loopback (
127.0.0.1). Флажок Require bearer token на странице Window → Preferences → AI-EDT включает проверку: каждый запрос к/mcpнесет bearer-токен,/healthбез токена отвечает полямиstatus,phase,edt_version. При привязке ко всем интерфейсам токен требуется независимо от флажка. Токен создается при первом запуске сервера и показан только на той же странице; в журнал, в тело отказа401и в ответ/healthон не попадает. - Запрос браузера принимается только с происхождением
http://localhost,http://127.0.0.1,http://[::1](с портом или без,http/https) илиvscode-webview://<id>;Origin: null- только при включенной настройке Accept browser pages without an origin. - Не публикуйте порт наружу (в интернет, общую сеть, контейнер с пробросом) без дополнительной защиты на уровне reverse-proxy: токен - один долгоживущий секрет, а инструменты за ним читают и правят метаданные, BSL, запускают отладку и работают с информационной базой.
- Инструменты могут менять исходники, метаданные и информационные базы. Используйте Read-only пресет для анализа чужого проекта, держите проект в VCS перед правками, отключайте деструктивные операции если они не нужны.
evaluate_expressionиexecute_queryвыполняют BSL в живой сессии 1С - это сознательная возможность для отладки и инспекции, не дефект.
- Поведение инструментов по назначению (запись BSL, удаление объекта через
delete_metadata_objectс подтверждением, update_database) - это функциональность, а не нарушение безопасности. - Открытый ответ
/healthиз трех полей (status,phase,edt_version) без токена: по нему установочные скрипты и мониторинг узнают, что сервер жив. - Доступ AI-ассистента к данным проекта - это и есть назначение MCP-сервера; ограничивается пресетами и политикой AI-клиента.
Зависимости - Eclipse/EDT platform, OSGi runtime, bundled libs (snakeyaml, jsoup, copy-down). Уязвимости в них сообщайте в соответствующие upstream-проекты; мы обновляем bundled libs при выходе патчей.