Случаи использования сетевых принтеров как вектора атаки уже наблюдались ранее; в основном это были результаты академических исследований уязвимостей или происки вандалов, наполнявших мусором лоток принтера. Вчера Microsoft устранила такую возможность, грозящую неприятностями для корпоративных и домашних сетей.

Бюллетень MS16-087, один из пяти критических в новом наборе патчей, посвящен двум брешам в компонентах диспетчера очереди печати, Windows Print Spooler. Наиболее серьезная из них, CVE-2016-3238, вызвана несовершенством проверки подлинности драйверов при установке принтеров на принт-сервер. Эксплойт в данном случае осуществляется посредством получения локального доступа, drive-by-загрузки или подмены совместно используемого сервера печати. Другая уязвимость (CVE-2016-3239, повышение привилегий) позволяет получить права на запись в файловой системе.

Некоторые детали уязвимости CVE-2016-3238 раскрыты в блог-записи исследователей из Vectra Networks, которые, впрочем, воздержались от публикации PoC-кода атаки. По словам Гюнтера Оллмана (Gunter Ollmann), руководителя ИБ-исследований компании, эта брешь, присутствующая во всех поддерживаемых версиях Windows, позволяет установить и запустить на исполнение драйвер, работающий, по сути, как функция-обертка для вредоносного кода.

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

«Проблема в том, что драйвер при этом не обязательно должен быть драйвером, — говорит исследователь. — Это может быть любой исполняемый код. Уязвимость позволяет любому атакующему использовать принтер, установивший фальшивый драйвер или вредоносный исполняемый код; он будет автоматически установлен и запущен на всех Windows-системах в сети, которые ищут принтер или осуществляют вывод на печать».

Оллман уподобил возможный сценарий атаке по методу «хищник у водопоя»: принтер готов к использованию и ждет, когда ничего не подозревающие жертвы загрузят на свои машины вредоносные «экзешники».

Эту же функциональность можно использовать для проведения атак на устройства, совместно использующие виртуальный принтер в рамках одной и той же сети. «Вредоносный драйвер загрузят все, кто обратился к общей папке принтера, — поясняет Оллман. — Вектор атаки при этом переместится с физических устройств на любые устройства сети, способные хостить образ принтера».

Для масштабирования атаки можно воспользоваться функцией Windows, разрешающей печать через Интернет. В этом случае эксплуатация осуществляется через drive-by-загрузку посредством внедрения браузерного эксплойта на веб-сервер.

Оллман высоко оценил усилия Microsoft по латанию брешей в операционной системе, однако порицает ее легкомысленное отношение к таким векторам атаки, как драйверы печати. По его словам, на настоящий момент злоупотребления такого рода невозможно обнаружить, тогда как рабочие эксплойты уже не за горами. «Этот вектор атаки хорош тем, что развертывается однократно и сохраняется на все времена, а детектирование при этом маловероятно, — комментирует эксперт. — Если нужен новый пример постоянной угрозы, он уже налицо».

В целом июльский набор патчей от Microsoft оказался не таким объемным, как можно было бы ожидать. Внимания также заслуживает обновление для Microsoft Office, MS16-088, которое закрывает семь RCE-уязвимостей в Office, SharePoint Server и Office Web Apps. Шесть из этих брешей связаны с нарушением целостности памяти.

В Internet Explorer (MS16-084) пропатчены множественные RCE-баги, а также повышение привилегий, раскрытие информации и обход средств защиты. Реальных атак с их использованием пока не зафиксировано. Накопительное обновление для Edge (MS16-085) также закрывает возможности для удаленного выполнения кода через порчу памяти, в том числе в JavaScript-движке Chakra. Кроме того, устранены обход ASLR, подмена контента в браузере и раскрытие информации. Аналогичная RCE исправлена в движках JScript и VBScript (MS16-086).

Пяти бюллетеням присвоен статус «важный»:

  • MS16-089 — уязвимость в Windows Secure Kernel Mode, чреватая раскрытием информации;
  • MS16-090 — баги повышения привилегий в драйверах режима ядра Windows;
  • MS16-091 — уязвимость во фреймворке .NET, грозящая раскрытием информации;
  • MS16-092 — бреши в ядре Windows, провоцирующие обход защиты;
  • MS16-094 — уязвимость в Secure Boot, чреватая обходом защиты.

Категории: Главное, Уязвимости