Ранее я уже заявлял об этом и даже делился видео-демонстрацией, но не раскрывая подробности. К сожалению, Разработчик забил болт так и не отреагировал на моё письмо о проблеме (моё обращение было зарегистрировано 2.10.2012 под номером sb-ru-02-121000048-t). Поэтому я решил показать все технические подробности. Приводимая далее видео демонстрация была впервые показана на ZeroNights 2012 в рамках zeroday show.
Подобные уязвимости часто находятся случайным образом. Мой случай — не исключение. Как-то разв 12 часов ночи, в полнолуние поставил себе Outpost Security Suite и настроил проактивку на максимальный режим. При этом режиме даже вставленная новая флешка в систему не примонтируется, пока не разрешить несколько действий во всплывающих окнах антивируса. Однажды при вставке новой флешки как обычно появилось всплывающее окно от антивируса, но я не давал согласия на установку. А привычным образом заблокировал компьютер (клавиш Win+L), покинув его на несколько минут. Каково же было моё удивление, когда вернувшись я выяснил, что флешка-таки примонтировалась в систему! Вот тут и началось самое интересное...
В режиме обучения проактивная защита Outpost при обнаружении подозрительной активности программы запрашивает действия у пользователя. Но если после вывода такого диалогового сообщения совершается Lock (то, что происходит при нажатии клавиш Win+L) — для антивируса это эквивалентно разрешению.
Автоматизация этого процесса может быть представлена таким вот bat-файлом, состоящим из 2-х строчек:
Пинг здесь нужен для задержки (хотя есть более изящное решение), после которой выполнится команда Lock (
Т.е запускаем файл 1.exe, ждём несколько секунд (чтоб антивирус вывел окно) и выполняем Lock.
Более того, при Lock можно увидеть, как значок антивируса меняется с синего на зелёный. Это означает, что он переходит из режима обучения в режим разрешения (всё что не запрещено — разрешено). Что ослабляет систему защиты. Например, программы, которым явно не запрещено выходить в интернет, будут теперь выходить. После входа в систему значок снова меняется на синий. (UPD: Это было в старых версиях (6.0) В последних версиях переходит в режим блокировки, что совершенно не ослабляет защиту. Спасибо Andersen за его замечание на сей счёт)
Суть демонстрации:
Проверены на уязвимость следующие версии Agnitum Outpost Security Suite:
Upd (18.12.2012) производителем исправлена уязвимость в версии 8.0 (4164.652.1856) от 17 декабря 2012
Предыстория
Подобные уязвимости часто находятся случайным образом. Мой случай — не исключение. Как-то раз
Суть проблемы
В режиме обучения проактивная защита Outpost при обнаружении подозрительной активности программы запрашивает действия у пользователя. Но если после вывода такого диалогового сообщения совершается Lock (то, что происходит при нажатии клавиш Win+L) — для антивируса это эквивалентно разрешению.
Автоматизация этого процесса может быть представлена таким вот bat-файлом, состоящим из 2-х строчек:
start 1.exe
ping 127.0.0.1 -n 10 -w 10000 > NULL & rundll32.exe user32.dll,LockWorkStation
Пинг здесь нужен для задержки (хотя есть более изящное решение), после которой выполнится команда Lock (
rundll32.exe user32.dll,LockWorkStation
).Т.е запускаем файл 1.exe, ждём несколько секунд (чтоб антивирус вывел окно) и выполняем Lock.
Демонстрация
Суть демонстрации:
- Проверяем, что в системе нет службы «test test test service» (пытаемся её остановить, на что система отвечает, что такой службы нет)
- Запускаем bat-файл (который запустит установщик службы)
- Через DebugViewer видим, что драйвер запустился именно ПОСЛЕ лока системы, а не до
- Снова пытаемся остановить службу «test test test service». На сей раз успешно.
Проверены на уязвимость следующие версии Agnitum Outpost Security Suite:
- 7.5.3 (3942.608.1810)
- 7.6 (3984.693.1842)
Upd (18.12.2012) производителем исправлена уязвимость в версии 8.0 (4164.652.1856) от 17 декабря 2012