Критическая уязвимость в K7 Antivirus: как обычный пользователь может получить права SYSTEM?

Специалисты по информационной безопасности выявили в продукте K7 Ultimate Security компании K7 Computing новую уязвимость, которая привела к крупной проблеме в сфере защиты данных. Данная уязвимость позволяет обычным пользователям с ограниченными правами получить наивысшие привилегии операционной системы — уровень SYSTEM. Более того, процесс обходил защитный механизм Windows — UAC (User Account Control).

Ошибка была обнаружена исследователем безопасности Лукасом Лайзом (Quarkslab) случайно, в ходе анализа другой уязвимости — CVE-2024-36424 в драйвере K7RKScan.sys, которая приводила к отказу в обслуживании.

Корень проблемы: неправильно настроенные «named pipe»

В ходе изучения специалисты обнаружили несколько именованных каналов (named pipes) уровня SYSTEM, используемых компонентами K7 Security для межпроцессного взаимодействия. Самое опасное заключалось в том, что некоторые из этих каналов были созданы с чрезмерно широкими разрешениями.

В частности:

Как выяснилось, обычные пользователи могли без ограничений открывать, отправлять данные или перепроигрывать пакеты, поступающие через эти каналы. Это создавало прямую основу для опасной цепочки эксплуатации.

Обычный пользователь может выполнять команды от имени SYSTEM

Мониторинг с использованием инструментов IoNinja и Procmon показал, что процесс K7TSMain.exe вносит изменения в реестр через канал K7TSMngrService1, работая с SYSTEM-привилегиями.

Было доказано следующее:

  • При изменении настроек конфигурации внутри антивируса создаются специальные «двоичные полезные данные» (binary payloads).
  • Они принимаются процессом, выполняющимся с правами SYSTEM.
  • Пользователь с низкими правами, повторно отправляя эти пакеты, мог полностью отключить защиту или добавить вредоносную программу в «белый список».

Фактически это являлось своеобразной скрытой «дверью», позволяющей обойти защитные механизмы.

Глубокая эксплуатация: выполнение кода на уровне SYSTEM

Исследователи Quarkslab пошли дальше и смогли добиться запуска кода на уровне SYSTEM через механизм Windows Image File Execution Options (IFEO). Эта техника известна как T1546.012 в MITRE ATT&CK.

Они добились привилегированного выполнения команд за счет:

  • привязки ложного «отладчика» (debugger) к файлу K7TSHlpr.exe,
  • запуска поддельного процесса обновления,
  • выполнения команд с привилегиями SYSTEM.

Были также опубликованы PowerShell-скрипты, полностью автоматизирующие процесс эксплуатации — в целях анализа защиты.

Выпущенные K7 патчи и способы их обхода

Компания K7 Computing выпустила три последовательных патча для устранения уязвимости.

1-й патч:
Добавлена проверка клиента pipe.
Однако исследователи смогли обойти защиту: вручную загрузили DLL в процесс k7tsmngr.exe и получили доступ к службе TS.

2-й патч:
Выпущена версия драйвера K7Sentry.sys 22.0.0.70, блокирующая загрузку DLL в защищенные процессы.
Обход: использованы другие подписанные EXE-файлы K7, не входящие в защищенный список, например K7QuervarCleaningTool.exe.

3-й патч:
Добавлены дополнительные проверки, но Quarkslab снова продемонстрировали способы обхода защиты.

Компания K7 заявила, что полная переработка ACL (Access Control List) будет реализована только в следующей крупной версии продукта.

Вывод: сам антивирус может стать источником угрозы

K7 Antivirus — средство безопасности, работающее в наиболее доверенном уровне системы. Однако из-за неправильно созданных служб, незащищённых IPC-каналов и слабых прав доступа, программа начала представлять угрозу той системе, которую должна защищать.

Этот инцидент в очередной раз подтверждает:

Если средства безопасности не защищены должным образом и своевременно, они сами могут стать наиболее опасной уязвимостью.

Рекомендации для пользователей и организаций

1. Для использующих продукты K7:

  • Обновите ПО до последней версии.
  • Ознакомьтесь с патчами и следуйте рекомендациям официального блога.
  • Отслеживайте подозрительную активность в системе.

2. Для IT-администраторов:

  • Проверьте все агенты K7 в корпоративной сети.
  • Мониторьте разрешения на named pipes.
  • Выполните сканирование на предмет признаков LPE (локального повышения привилегий).

3. Для специалистов по безопасности:

  • Изучите опубликованные Quarkslab скрипты для анализа защиты.
  • Добавьте в правила SIEM мониторинг процессов K7.