Нещодавно виявлена вразливість Windows (CVE-2026-35603) дозволяє будь-якому користувачеві без прав адміністратора розмістити шкідливий конфігураційний файл у спільному каталозі C:\ProgramData, де кілька ШІ-помічників для програмування автоматично зчитують налаштування. Коли адміністратор згодом запускає один із цих інструментів — Claude Code, Cursor, Codex CLI або Gemini CLI — шкідливий файл виконується з повними системними привілеями, що дає зловмиснику контроль над машиною без будь-якого попередження.

Чому це важливо

ШІ-помічники для програмування стали звичним явищем у циклах розробки, і часто вони запускаються з підвищеними правами для доступу до компіляторів, менеджерів пакетів або внутрішніх репозиторіїв. Можливість впровадити код, який виконується від імені адміністратора, дозволяє обійти звичайну пісочницю (sandbox) на рівні користувача, що захищає робочу станцію. На практиці обліковий запис із низьким рівнем привілеїв може розмістити файл, дочекатися запуску помічника адміністратором, а потім змусити помічника виконувати довільні команди, змінювати системні файли або збирати облікові дані. Наслідки варіюються від непомітного закріплення шкідливого ПЗ до повного захоплення корпоративних робочих станцій.

Як працює вразливість

Усі чотири інструменти мають спільне просте дизайнерське рішення: вони зберігають конфігурацію для всієї машини в C:\ProgramData і автоматично завантажують ці файли під час запуску. У Windows цей каталог доступний для читання та запису будь-якому стандартному користувачеві. Інструменти не перевіряють власника або цілісність файлів перед їх парсингом.

Інструмент Очікуваний конфігураційний файл
Claude Code managed-settings.json
Cursor hooks.json
Codex CLI config.toml
Gemini CLI system-defaults.json

Зловмисник створює файл із точною назвою, яку шукає інструмент, розміщує його у відповідній папці в C:\ProgramData і чекає. Коли адміністратор відкриває помічника, програма зчитує контрольований зловмисником файл і виконує його вміст. У випадку з Codex CLI шкідлива конфігурація також може вимкнути вбудовані захисні пісочниці, ще більше розширюючи поверхню атаки.

Anthropic, розробник Claude Code, уже переніс свої налаштування в захищене місце, фактично усунувши цю проблему для свого продукту. Інші постачальники на момент підготовки звіту про дослідження ще не випустили виправлення, залишаючи своїх користувачів під загрозою.

Хто виграє, а хто програє

  • Зловмисники отримують прямий шлях підвищення привілеїв, який не потребує експлуатації багів ядра або коду нульового дня.
  • Розробники та організації, які покладаються на цих помічників у щоденній роботі, стикаються з ризиком непомітних крадіжок облікових даних, впровадження коду або розгортання програм-вимагачів.
  • Постачальники інструментів ризикують репутаційною шкодою та можливою відповідальністю, якщо вразливість не буде оперативно виправлена.

Вартість порушення безпеки може бути високою: скомпрометовані SSH-ключі, хмарні токени та облікові дані Git можуть відкрити шлях до ширшого компрометування мережі. Навіть одна скомпрометована робоча станція може стати плацдармом для латерального переміщення (lateral movement) всередині корпоративного середовища.

Заходи з пом'якшення наслідків, які можна вжити вже сьогодні

Поки постачальники не випустять патчі, адміністратори можуть посилити захист самих папок. Наступні команди PowerShell, запущені з підвищеними правами, створять необхідні директорії (якщо вони ще не існують) і обмежать до них доступ так, щоб лише система та адміністратори мали право на запис:

# Create the directories
$paths = @(
    "C:\ProgramData\ClaudeCode",
    "C:\ProgramData\Cursor",
    "C:\ProgramData\openai\codex",
    "C:\ProgramData\gemini-cli"
)
foreach ($p in $paths) { New-Item -ItemType Directory -Path $p -Force }

# Remove inherited permissions and grant only the needed accounts
foreach ($p in $paths) {
    icacls $p /inheritance:r
    icacls $p /grant "SYSTEM:(OI)(CI)F" "Administrators:(OI)(CI)F" "Users:(OI)(CI)RX"
}

Після застосування списків контролю доступу (ACL) перевірте папки на наявність будь-яких файлів, власником яких є стандартний користувач. Виявлення такого файлу є вагомою ознакою того, що машину вже було скомпрометовано; у такому разі негайно змініть усі приватні ключі, токени доступу до хмарних сервісів та облікові дані систем контролю версій.

На що звернути увагу

  • Патчі від постачальників – стежте за примітками до випусків (release notes) від відповідних постачальників. Перенесення налаштувань у захищене місце або перевірка цілісності конфігураційних файлів нейтралізували б проблему.
  • Оновлення інструментів безпеки – платформи виявлення кінцевих точок (EDR) можуть додати сигнатури для цього конкретного шаблону створення файлів у C:\ProgramData. Встановлення таких оновлень може забезпечити раннє сповіщення.
  • Оприлюднення спільноти – дослідники безпеки можуть опублікувати докази концепції (PoC) експлуатації або скрипти виявлення, які можна інтегрувати у внутрішній моніторинг.

Контраргумент

Дехто може стверджувати, що ризик обмежений машинами, де існує кілька облікових записів користувачів, або що ці інструменти рідко запускаються з правами адміністратора. Хоча ці фактори зменшують поверхню атаки, вони не усувають її повністю. Багато корпоративних ноутбуків керуються централізовано, і розробникам часто надають права адміністратора для встановлення компіляторів або SDK. Більше того, шкідливе програмне забезпечення може використовувати ту саму папку для закріплення в системі навіть без тригера на рівні адміністратора, використовуючи ШІ-асистента лише як зручний вектор виконання.

Висновок

CVE-2026-35603 демонструє, як на перший погляд невинне дизайнерське рішення — читання конфігурації з папки, доступної для запису всім користувачам — може стати потужним шляхом підвищення привілеїв, коли задіяні інструменти ШІ. Доки постачальники не усунуть цю вразливість, єдиним надійним захистом є обмеження доступу до підпапок C:\ProgramData, які використовують ці асистенти, та сприйняття будь-яких неочікуваних файлів у них як ознаки компрометації. Ігнорування цієї проблеми залишає прямий шлях для облікових записів із низьким рівнем привілеїв до отримання повного контролю над робочою станцією Windows.