НеИБи
Мышь прогрызла дыру
Думаю, многие из вас видят в своем трее Logitech Options+. Это софт, который все обладатели брендовой периферии ставят вместе с мышью или клавиатурой и потом благополучно забывают. А внутри у него есть служба обновления, которая работает от имени NT AUTHORITY\SYSTEM. Именно она и стала отправной точкой для цепочки уязвимостей, которую исследователь из AmberWolf описал под номером CVE-2026-12518.
Служба слушает именованный канал \\.\pipe\logitech_kiros_updater. Подключиться к нему может любой локальный пользователь, но служба проверяет, что соединение пришло от logioptionsplus_agent.exe. Звучит разумно, пока не вспомнить, что этот агент работает с правами того же самого пользователя. То есть в него можно внедрить DLL без всякого админа. Причем проверка службы увидит «легитимный» процесс, которым на самом деле управляет атакующий. Дальше через этот канал отправляется сообщение SET /updates/depot/reinstall с полем custom_tags, где переменная {depot} подменяется на произвольный путь вроде C:\Users\Public\logi_pwn.
В манифесте одного из депотов есть команда, которая запускает msiexec.exe с параметром /qn и берет MSI-файл из {depot}/LogiPluginServiceInstaller.msi. Поскольку {depot} теперь указывает на папку пользователя, туда можно положить свой MSI с вредоносным кодом. К тому же в коде updater есть флаг isSystem, и если он установлен, проверка Authenticode-подписи просто пропускается. Этот флаг уже стоит в манифесте, а значит, неподписанный MSI спокойно запускается с правами SYSTEM.
Цепочка не требует ни административных прав, ни действий пользователя, ни сетевого доступа. Обычный локальный пользователь получает полный контроль над машиной. Logitech уведомили в марте, патч вышел 19 августа, публичное раскрытие — 14 сентября.
Интересна тут не отдельная дыра, а то, как несколько независимых защит — проверка процесса, валидация сертификата, ограничение путей — в сумме не создали нормальной границы доверия. Каждая по отдельности выглядела разумно, но вместе они просто передавали управление по цепочке, где каждый следующий элемент доверял предыдущему. Привилегированный updater в итоге должен исходить из того, что все, что приходит через его IPC, может быть враждебным.
@antiinfosec Если у вас установлено приложение,
вы можете сразу перейти в канал