Ранее на этой неделе мы рассказывали о том, что в сети появился PoC-эксплоит для опасной уязвимости в Windows Print Spooler (spoolsv.exe), которой исследователи дали название PrintNightmare. Изначально этот баг имел идентификатор CVE-2021-1675 и был исправлен Microsoft пару недель назад, в рамках июньского «вторника обновлений».
Как оказалось, проблема PrintNightmare была гораздо опаснее, чем предполагалось изначально. Так, вначале баг был классифицирован как рядовая уязвимость повышения привилегий, позволявшая злоумышленникам получить права администратора. Однако на прошлой неделе Microsoft обновила описание ошибки, сообщив, что проблема чревата удаленным выполнением произвольного кода.
Когда в сети случайно был опубликован полностью работающий PoC-эксплоит для опасного бага, исследователи обнаружили, что выпущенный в июне патч не исправляет проблему полностью. Более того, публикация эксплоита привела многих исследователей замешательство, и некоторые предположили, что PrintNightmare — это отдельная уязвимость нулевого дня, которая нуждается в собственном исправлении. К примеру, об этом писал в Twitter Митя Колсек, глава Acros Security и сооснователь 0Patch.
Writeup for the actual CVE-2021-1675. This vuln includes DLL sideloading and was fixed with June updates.https://t.co/RBcOGb4jyW
— Mitja Kolsek (@mkolsek) June 30, 2021
Тем не менее, один из исследователей NSFOCUS, обнаруживавших оригинальную проблему CVE-2021-1675, предложил другое объяснение того, почему выпущенный патч не останавливает эксплоит для PrintNightmare. Он пишет, что для патча взяли тестовый пример из его отчета, который был неполным и ограниченным. А значит, патч действительно не полный.
CVE-2021-1675 is meant to fix PrintNightmare, but it seems that they just test with the test case in my report, which is more elegant and also more restricted. So, the patch is incomplete. : (
— Yunhai Zhang (@_f0rgetting_) July 1, 2021
Разработчик инструмента mimikatz, Бенджамин Делпи, и вовсе сообщил, что новая проблема касается только пропатченных серверов, повышенных до контроллеров домена.
Thanks to @_f0rgetting_ we have an explanation about why we have an Elevated Token (allowing #PrintNightmare on patched domain controllers): legacy
— ? Benjamin Delpy (@gentilkiwi) July 1, 2021
If you remove "Authenticated users" from "BuiltinPre-Windows 2000 Compatible Access", the original Microsoft Patch works again? https://t.co/StvDdEWoog pic.twitter.com/h5IGJ0slpZ
В результате администраторам настоятельно рекомендовали отключить Windows Print Spooler, особенно на серверах, работающих в качестве контроллеров домена.
Теперь RCE-ипостаси PrintNightmare наконец был присвоен собственный идентификатор CVE — CVE-2021-34527. Сообщается, что проблема позволяет удаленно выполнить произвольный код с привилегиями SYSTEM и позволяет атакующему устанавливать программы, просматривать, изменять или удалять данные, а также создавать новые учетные записи с пользовательскими правами.
Хуже того, Microsoft подготовила бюллетень безопасности, в котором сообщает, что проблему уже эксплуатируют в реальной жизни, правда компания не уточняет, делают это злоумышленники или ИБ-исследователи. Также сообщается, что уязвимость PrintNightmare, то есть CVE-2021-34527, очень похожа на проблему CVE-2021-1675, но все же от нее отличается другим вектором атаки.
Microsoft 365 Defender customers can also refer to the threat analytics report we published on this vulnerability. The report provides tech details, guidance for mitigating the impact of this threat, and advanced hunting queries, which are published here: https://t.co/tBunCJgn6W
— Microsoft Security Intelligence (@MsftSecIntel) July 2, 2021
Инженеры Microsoft пишут, что уже работают над патчем, но пока его нет, у администраторов есть несколько вариантов решения проблемы. К примеру, по-прежнему рекомендуется отключить Print Spooler вовсе, заблокировав печать локально и удаленно. Также возможно отключение входящей удаленной печати через Group Policy, что позволит заблокировать основной вектор потенциальных атак. Во втором случае «система более не будет функционировать как сервер печати, но локальная печать с напрямую подключенных устройств по-прежнему будет возможна».