Интегрированные среды разработки (IDE) всё чаще становятся мишенью для злоумышленников, превращая рабочие станции программистов в незащищённые шлюзы к корпоративным активам. Недавнее исследование четырёх популярных расширений для Visual Studio Code (VS Code), общее число загрузок которых превысило 128 миллионов, выявило критические уязвимости, способные привести к утечке данных и полному захвату систем. Эти инциденты ярко демонстрируют, что IDE и их экосистема расширений могут быть самым слабым звеном в цепочке поставок программного обеспечения организации.
Детали уязвимостей
Разработчики часто хранят конфиденциальную информацию, такую как ключи API, бизнес-логику, конфигурации баз данных и даже данные клиентов, прямо в файловой системе, доступной из среды разработки. Расширения же, по сути, действуют как «мини-администраторы» внутри IDE, обладая широкими полномочиями для выполнения кода, изменения файлов и доступа к машине. Как отмечает исследовательская группа Ox, всего одно скомпрометированное или вредоносное расширение может позволить злоумышленникам перемещаться по внутренней сети, похищать данные или захватывать контроль над компьютерами.
Обнаруженные проблемы затронули расширения с колоссальной пользовательской базой и получили идентификаторы уязвимостей CVE. В частности, уязвимость CVE-2025-65717 в расширении Live Server, оцениваемая в 9.1 балла по шкале CVSS, позволяет осуществлять удалённую эксфильтрацию файлов. Уязвимость CVE-2025-65715 в Code Runner (CVSS 7.8) открывает возможность для удалённого выполнения кода. Расширение Markdown Preview Enhanced содержит уязвимость CVE-2025-65716 (CVSS 8.8), приводящую к выполнению JavaScript-кода, который, в свою очередь, может инициировать сканирование локальных портов с потенциальной утечкой данных. Во всех трёх случаях уязвимыми являются все версии расширений. Кроме того, в расширении Microsoft Live Preview была обнаружена проблема, позволяющая с помощью межсайтового скриптинг-атаки (XSS) выполнить одно нажатие для полной эксфильтрации файлов IDE; исправление выпущено в версии 0.4.16 и новее.
Важно отметить, что аналогичные риски затрагивают и другие IDE, построенные на базе VS Code, такие как Cursor и Windsurf. Это означает, что угроза распространяется далеко за пределы одной конкретной среды разработки. Потенциальное влияние таких уязвимостей крайне серьёзно. Во-первых, существует риск латерального перемещения: скомпрометировав рабочую станцию разработчика, злоумышленники могут использовать её как плацдарм для атак на подключённые внутренние сети организации, расширяя своё присутствие и эскалируя привилегии. Во-вторых, это прямое похищение данных и захват контроля над хостом. Если вредоносные действия выполняются на машине, где запущен локальный сервер, это может привести к краже критически важной информации, включая исходный код и учётные данные, и в конечном итоге - к полному контролю над системой.
Сложившаяся модель распространения расширений по принципу «устанавливай на свой страх и риск» показывает свою несостоятельность на фоне роста популярности инструментов искусственного интеллекта и всё большей зависимости разработчиков от сторонних плагинов. Для исправления ситуации эксперты предлагают ряд системных мер, включая обязательные проверки расширений перед публикацией в маркетплейсе, автоматическое сканирование на уязвимости с помощью ИИ, а также установление жёстких сроков для разработчиков по устранению проблем и присвоению идентификаторов CVE.
Однако уже сегодня каждый разработчик и компания могут принять практические шаги для снижения рисков. Ключевая рекомендация - минимизировать поверхность атаки, отключая или удаляя неиспользуемые расширения и инструменты. Кроме того, критически важно укреплять безопасность локальной сети, настраивая строгие правила межсетевого экрана для контроля входящего и исходящего трафика, связанного со службами разработки. Не менее важен дисциплинированный подход к обновлениям: необходимо оперативно устанавливать патчи безопасности для операционных систем, сред разработки, расширений и всех зависимостей проекта. В свою очередь, в качестве дополнительных мер предосторожности специалисты советуют избегать открытия непроверенных HTML-файлов при активных локальных серверах, по возможности не запускать серверы на localhost и никогда не вставлять непроверенные фрагменты кода в глобальный файл настроек "settings.json".
Обнаруженные уязвимости служат суровым напоминанием о том, что безопасность цепочки поставок начинается с рабочего места каждого программиста. В условиях, когда инструменты разработки становятся всё более сложными и связанными, пренебрежение базовыми принципами гигиены безопасности может открыть двери для масштабных инцидентов, ставя под угрозу не только код, но и всю инфраструктуру компании.
Ссылки
- https://www.cve.org/CVERecord?id=CVE-2025-65715
- https://www.cve.org/CVERecord?id=CVE-2025-65716
- https://www.cve.org/CVERecord?id=CVE-2025-65717
- https://github.com/ritwickdey/vscode-live-server
- https://www.ox.security/blog/cve-2025-65715-code-runner-vscode-rce/
- https://www.ox.security/blog/cve-2025-65716-markdown-preview-enhanced-vscode-vulnerability/
- https://www.ox.security/blog/cve-2025-65717-live-server-vscode-vulnerability/
- https://www.ox.security/blog/four-vulnerabilities-expose-a-massive-security-blind-spot-in-ide-extensions/