Программа DLL функции обнаружения службы печати не работает

Обновлено: 21.11.2024

Существует уязвимость Windows, которая использует диспетчер очереди печати для удаленного выполнения кода на устройствах. В разделе Assura’s Take мы предлагаем три варианта смягчения последствий: 1. Отключить службу диспетчера очереди печати, 2. Применить ACL для ограничения установки/обновления драйвера печати. 3. Отключите удаленные подключения к диспетчеру очереди печати.

Обзор

Недавно сообщество исследователей безопасности гудело разговорами о новых эксплойтах против службы диспетчера очереди печати Windows. Помните Стакснет? Вы знаете, червь, который уничтожил центрифуги по обогащению ядерных материалов в Иране, промахнулся и заразил более 45 000 сетей? Этот маленький парень стоял у истоков этой уязвимости и некоторое время продолжает оставаться ахиллесовой пятой Microsoft.

CVE-2021-1675 и впоследствии CVE-2021-34527, также известная как PrintNightmare, представляет собой уязвимость, которая позволяет злоумышленнику с обычными правами пользователя запускать код на сервере от имени SYSTEM. Воспользовавшись этой уязвимостью локально или удаленно, злоумышленник получит полный контроль над системой с наивысшими привилегиями. Это означает, что если злоумышленник нацелится на ваш контроллер домена, то он будет владеть всей вашей Active Directory.

Кикер? Служба диспетчера очереди печати включена по умолчанию на всех серверах Windows. Таким образом, если вы явно не отключили службу, ваша организация уязвима.

Что мы знаем об этой атаке?

Уязвимость PrintNightmare по своей сути представляет собой уязвимость обхода аутентификации. При загрузке драйвера принтера (используя RpcAddPrinterDriver) на рабочую станцию ​​или сервер Microsoft намеревалась добиться того, чтобы удаленный пользователь получил назначенную ему привилегию SeLoadDriverPrivilege. Однако логика в «ValidateObjectAccess» имеет внутри себя аргумент, которым может управлять пользователь. Пользователь, указав правильное значение в управляемом пользователем аргументе, может обойти проверку безопасности и затем беспрепятственно загрузить драйверы печати на целевое устройство.

Однако использовать PrintNightmare не так просто, как просто обойти механизм аутентификации. Чтобы воспользоваться этой уязвимостью, злоумышленник должен загрузить вредоносный DLL-файл очень специфическим образом в зависимости от того, что ожидает служба диспетчера очереди печати.

Исходя из общедоступного эксплойта, мы наблюдаем следующее поведение:

Злоумышленник вызывает RpcAddPrintDriver.

RpcAddPrintDriver скопирует A.dll, malware.dll и C.dll в папку «C:\Windows\System32\spool\drivers\x64\3\new».

Затем три файла копируются в «C:\Windows\System32\spool\drivers\x64\3».

Затем служба диспетчера очереди загружает «C:\Windows\System32\spool\drivers\x64\3\A.dll» и «C:\Windows\System32\spool\drivers\x64\3\C.dll».

Spooler затем скопирует pConfigFile (наш вредоносный файл) в «C:\Windows\System32\spool\drivers\x64\3\malicious.dll». Однако обратите внимание, что служба диспетчера очереди еще не загрузила вредоносный DLL-файл.

Злоумышленник снова вызывает RpcAddPrinterDriver, на этот раз для обновления драйвера печати. На этот раз pDataFile (ранее A.dll) будет заменен вредоносным расположением DLL на целевом жестком диске. На этот раз, когда драйверы принтера «обновлены» вместо загрузки A.dll, будет загружен файл malware.dll, и злоумышленник успешно воспользовался сервером.

Причина, по которой мы наблюдаем описанный выше процесс эксплуатации, заключается в том, что служба буферизации загружает только путь UNC (универсальное соглашение об именах) для pConfigFile, но не для pDataFile или pDriverPath, поэтому злоумышленник должен сначала загрузить его на целевую машину, а затем «обновите» диск принтера после того, как вредоносный файл станет локальным, чтобы его можно было успешно скопировать и загрузить для эксплуатации.

Здесь мы приводим пример эксплойта на полностью исправленной Windows Server 2019, проведенного нашей исследовательской группой:

Учетная запись злоумышленника (пользователь домена с низким уровнем привилегий):

1 Свойства непривилегированных пользователей

Членство двух непривилегированных пользователей

Служба диспетчера очереди печати находится в состоянии «Выполняется» из-за автоматического запуска (настройка по умолчанию!):

3 Состояние работы службы буферизации

4 Служба буферизации при автоматическом запуске

Применено исправление CVE-2021-1675 (KB5003646):

5 Применено исправление KB5003646

Исправленная версия службы очереди печати для справки:

6 Обновленная версия службы очереди печати

Используйте видео:

Взгляд Ассуры

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

У Assura есть несколько возможных вариантов смягчения последствий, которые организации могут использовать для обеспечения своей защиты или снижения вероятности использования:

Вариант 1. Отключите службу диспетчера очереди печати на всех устройствах, где печать не требуется.

Вариант 2. Если печать может быть необходима, но загрузка драйверов печати не требуется, реализуйте следующий обходной путь ACL, предоставляемый TrueSec, с помощью PowerShell:

$Acl = (Get-Item $Path).GetAccessControl('Доступ')

$Ar = New-Object System.Security.AccessControl.FileSystemAccessRule("Система", "Изменить", "ContainerInherit, ObjectInherit", "Нет", "Запретить")

Set-Acl $Path $Acl

Это добавит правило «Запретить» для каталога драйверов и всех подкаталогов, не позволяющее учетной записи SYSTEM изменять его содержимое. С этим ACL вы сможете использовать сервер в качестве сервера печати для удаленных устройств, но новые/обновленные диски не смогут быть загружены. Это правило можно отключить с помощью следующего сценария PowerShell:

$Acl = (Get-Item $Path).GetAccessControl('Доступ')

$Ar = New-Object System.Security.AccessControl.FileSystemAccessRule("Система", "Изменить", "ContainerInherit, ObjectInherit", "Нет", "Запретить")

Set-Acl $Path $Acl

Вариант 3. Microsoft рекомендует либо 1 – полностью отключить службу диспетчера очереди печати, как мы также предложили в пункте 1. Их вторичное указание — отключить входящую удаленную печать с помощью групповой политики. Эта политика блокирует вектор удаленной атаки, предотвращая входящие операции удаленной печати. Система больше не будет работать как сервер печати, но локальная печать на устройство, подключенное к каталогу, по-прежнему будет возможна.

  1. В рамках групповой политики:
    1. Конфигурация компьютера > Административные шаблоны > Принтеры
    2. Отключите политику «Разрешить диспетчеру очереди печати принимать клиентские подключения», чтобы блокировать удаленные подключения/атаки.

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

    Компания Assura протестировала вышеуказанные средства защиты и может подтвердить, что эксплойты действительно терпят неудачу, если средства защиты применяются надлежащим образом:

    7 Пример неудачной попытки эксплойта.

    Помимо мер по устранению угроз, убедитесь, что вы используете новейший антивирус или Endpoint Detection and Response, чтобы предотвратить и обнаружить любую эксплуатацию на ваших устройствах. Если вы являетесь клиентом Asura Managed Endpoint Protection, мы отслеживаем попытки эксплойтов в режиме реального времени.

    Если вы являетесь клиентом Assura, не стесняйтесь обращаться к своему контактному лицу Virtual ISO или Assura SOC, если у вас есть вопросы об этой уязвимости или наш ответ. В противном случае свяжитесь с нами.

    Конец июня ознаменовался новым кошмаром (каламбур) для Microsoft, когда на Github было опубликовано несколько подтверждений концепции (PoC) уязвимости диспетчера очереди печати Microsoft Windows (CVE-2021-1675). Microsoft пыталась исправить проблему, выпуская исправления для CVE по вторникам исправлений. Но увы, PoC был. считается критическим и ему присвоен отдельный CVE, CVE-2021-34527. Этот рабочий PoC был назван PrintNightmare исследователем безопасности, разместившим его в Интернете, и отсюда и произошло это название.

    Функция RpcAddPrinterDriverEx() используется для установки драйверов принтера в системе, поскольку служба диспетчера очереди печати Microsoft Windows не может ограничить доступ к этой функции.

    Microsoft выпустила обновления для системы безопасности и обходные пути для этой уязвимости в бюллетене CVE-2021-34527. Реализация обходных путей может помешать входящим операциям удаленной печати. Ниже приведены шаги для устранения (если установлено исправление),

    Выполните следующее:

    Get-Service -Name Spooler

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

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

    Stop-Service -Name Spooler -Force

    Set-Service -Name Spooler -StartupType Disabled

    Влияние обходного пути Отключение службы диспетчера очереди печати отключает возможность печати как локально, так и удаленно.

    Вы также можете настроить параметры с помощью групповой политики следующим образом:

    Конфигурация компьютера/Административные шаблоны/Принтеры

    Отключите политику «Разрешить диспетчеру очереди печати принимать клиентские подключения:», чтобы блокировать удаленные атаки.

    Службу необходимо перезапустить, чтобы изменения вступили в силу.

    С помощью «rpcdump.py» можно обнаружить потенциально уязвимые хосты, как показано на рисунке ниже, на сканируемой конечной точке работает удаленный протокол системы печати.


    Этот сценарий PowerShell выполняет локальное повышение привилегий (LPE) с помощью метода атаки PrintNightmare. Следующим действием злоумышленника будет добавление нового пользователя в группу локального администратора.


    Чтобы обнаружить это действие, группа безопасности должна отслеживать событие Windows с идентификатором 4720 для создания локального пользователя с последующим добавлением созданного пользователя в локальную группу администраторов в событии с идентификатором 4732.


    При включении ведения журнала службы печати Microsoft (Microsoft-Windows-PrintService/Admin) событие с идентификатором 808 регистрируется, когда диспетчеру очереди печати не удается загрузить подключаемый модуль.


    При включении ведения журнала рабочих событий Microsoft Print Service (Microsoft-Windows-PrintService/Operational) событие с идентификатором 316 регистрируется при добавлении или обновлении драйверов принтера.


    Следующая псевдологика может помочь обнаружить это действие:

    • Процесс содержит spoolsv.exe и
    • Путь к образу содержит "C:\Windows\System32\spool\drivers\x64\"
    • Имя файла не содержит ни одного из этих
      • 'UNIDRV.DLL'
      • 'wdlres.dll'
      • 'hpygidres20.dll'
      • 'hpygidUI20.dll'
      • 'ADUIGP.DLL'
      • 'FXSTIFF.DLL'
      • 'FXSAPI.DLL'
      • 'x5lrs.dll'
      • 'MXDWDRV.DLL'
      • 'FXSUI.DLL'
      • 'FXSRES.DLL'
      • 'PrintConfig.dll'
      • 'FXSDRV.DLL'

      Для расследования любых попыток эксплойта будет полезен следующий скрипт для сбора соответствующей информации от средств просмотра событий:

      “Get-WinEvent -LogName 'Microsoft-Windows-PrintService/Admin' | Select-String -InputObject -Pattern «Диспетчер очереди печати не смог загрузить подключаемый модуль»

      SIRP может ускорить обнаружение известных уязвимостей за счет использования возможностей автоматизации. Многочисленные интеграции SIRP со сканерами уязвимостей, SIEM и EDR позволяют нам сделать это. Инструмент сканирования уязвимостей сканирует активы имен файлов для идентификации уязвимости. Затем SIEM используется для корреляции событий. EDR ускоряет процессы обнаружения и реагирования.

      1. Первый шаг — проверить, доступны ли функции, которые нужно использовать, в потенциально уязвимой системе.
      2. Если служба доступна, выполните следующие команды, чтобы отключить или заблокировать службу.

      Остановить службу диспетчера очереди

      REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Spooler" /v "Пуск" /t REG_DWORD /d "4" /f

      Удалить службы печати

        Обнаружение файла можно выполнить, выбрав следующие (по умолчанию) имена файлов, используемые в PoC:

      Книга SIRP PrintNightmare Playbook охватывает следующие задачи:

      1. Проверка того, включена ли служба диспетчера очереди печати и существует ли уязвимость в системе.
      2. Меры по снижению риска:
        1. Ручное отключение служб диспетчера очереди печати.
        2. Ограничение ACL.
        3. Установка исправлений и обновлений.

        Плейбук выполняется следующим образом:

        Плейбук запускается на SIRP

        ЕСЛИ служба диспетчера очереди печати включена:

        • Уведомить ИТ-специалистов о необходимости выполнить действие вручную — отключить службу диспетчера очереди печати
        • Уведомить ИТ-специалистов о необходимости выполнить действие вручную — установить исправление Microsoft для службы очереди печати
        • Уведомить ИТ-специалистов, чтобы они предприняли ручное действие — ограничить ACL
        • Запустите сканирование затронутой конечной точки с помощью сканера уязвимостей.
        • Получение событий, связанных с идентификаторами событий 808 и 31017, с помощью Qradar SIEM
        • Расширить данные CVE из Vulndb и CVE Search
        • Назначьте задачу аналитику L2 для расследования с помощью соответствующих инструментов безопасности и расширенных данных в заявке.

        SIRP интегрируется с несколькими инструментами, позволяющими автоматизировать несколько корректирующих действий. Например,

        Интеграция SIEM для автоматизации приема предупреждений

        • IBM QRadar
        • RSA NetWitness
        • Расширение
        • Эластичный SIEM

        Интеграция анализа угроз для обогащения

        Интеграция решений EDR и EPP для корректирующих действий

        • Удаленное управление Windows
        • заблокировать путь к файлу
        • скопировать файл
        • получить файл
        • удалить файл
        • FireEye HX
          • Блокировать хеш
          • Изолировать систему
          • Получить файл
          • Получить сортировку
          • Изолировать систему
          • Создать сканирование
          • Блокировать/разблокировать IP-адрес
          • Включить/отключить пользователя

          Вышеупомянутые интеграции позволяют платформе SIRP SOAR обнаруживать и устранять уязвимости и эксплойты в таких условиях, как PrintNightmare. Возможности быстрого обнаружения и реагирования SIRP позволяют командам реагирования на инциденты и SOC экономить часы ручного труда, заботясь о самом процессе обнаружения и обогащения.

          Чтобы узнать, как платформа SIRP SOAR может помочь вашей организации сократить время отклика, снизить киберриски и повысить прозрачность, свяжитесь с нами сегодня, чтобы организовать индивидуальную демонстрацию.

          Бомонт, К., 2021 г. Нулевой день для всех поддерживаемых версий ОС Windows в дикой природе — PrintNightmare. [онлайн] Даблпульсар. Доступно по адресу: [По состоянию на 6 июля 2021 г.].

          Рот, Ф., 2021 г. Однострочник PowerShell для выделения попыток эксплуатации CVE-2021-1675.

          Стюарт, К., 2021 г. CVE-2021-1675 — PrintNightmare LPE (PowerShell). [онлайн] GitHub. Доступно по адресу: [По состоянию на 6 июля 2021 г.].

          Вторник исправлений от июня 2021 г. Microsoft исправила уязвимость диспетчера очереди печати CVE-2021-1675 в Windows. В то же время аналогичная уязвимость, получившая название PrintNightmare, которая была обнаружена другой группой, по ошибке опубликовала подробности и подтверждение концепции (PoC) PrintNightmare из-за путаницы, фактически превратившей PrintNightmare в нулевую уязвимость. день.

          Первоначально классифицированная как уязвимость низкой степени серьезности, делающая возможным повышение привилегий, 21 июня Microsoft повысила серьезность CVE-2021-1675 до критической, поскольку эта уязвимость позволяла выполнять удаленный код. По совпадению, PrintNightmare также позволяет удаленное выполнение кода, что еще больше способствовало путанице между CVE-2021-1675 и PrintNightmare. 2 июля Microsoft наконец отказалась от новой CVE-2021-34527 для PrintNightmare и заявила, что CVE-2021-34527 похожа, но отличается от CVE-2021-1675, хотя обе являются недостатками одних и тех же функций. Интересно, что системы по-прежнему уязвимы для CVE-2021-1675 даже после применения исправлений, если они настроены с параметром Point and Print с параметром NoWarningNoElevationOnInstall.

          Уязвимость PrintNightmare возникает из-за того, что любой пользователь, прошедший проверку подлинности, может установить новый драйвер принтера и указать файл драйвера, который находится на удаленном сервере. Таким образом, служба диспетчера очереди печати выполняет код в произвольной DLL (замаскированной под драйвер принтера) с системными привилегиями. Злоумышленники, вероятно, переживают не лучшие времена из-за наличия нескольких работающих PoC, что усугубляется путаницей в сообществе безопасности относительно того, какие системы затронуты PrintNightmare.

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

          Поскольку исправления недоступны, мы рекомендуем отключать службу диспетчера очереди печати на ненужных компьютерах. Администраторы могут использовать настройки групповой политики (GPP), чтобы отключить диспетчер очереди печати на компьютерах в домене или отключить входящую удаленную печать с помощью групповой политики, разрешающей только локальную печать. Помните, что отключение службы диспетчера очереди печати фактически отключает возможность печати с сервера как локально, так и удаленно.

          Важно отметить, что обычно небольшие организации настраивают свои контроллеры домена так, чтобы они также функционировали в качестве серверов печати, что делает невозможным отключение службы диспетчера очереди печати, поскольку это будет препятствовать их повседневным деловым операциям. Если диспетчер очереди печати необходимо запустить на некоторых серверах, администраторы могут переложить обязанности сервера печати с контроллера домена на отдельный сервер. Риск запуска службы печати на контроллерах домена слишком высок и не может быть оправдан.

          LogPoint выпустила версию UseCase 5.0.2, которая включает информационные панели и оповещения для обнаружения эксплуатации уязвимости PrintNightmare.

          Подготовка источников журналов

          Наиболее убедительным доказательством обнаружения уязвимости являются события из каналов Microsoft-Windows-PrintServer/Admin и Microsoft-Windows-PrintServer/Operational.Вам нужно вручную включить последний. Во-первых, подготовьте планы с администраторами, чтобы начать пересылку журналов из вышеупомянутых источников в LogPoint. Кроме того, если вы развернули Sysmon в среде, мы рекомендуем администраторам обновить конфигурацию, чтобы убедиться, что Sysmon может перехватывать артефакты PrintNightmare. Наконец, вы также можете использовать события IDS/IPS для сбора сетевых артефактов, оставленных PrintNightmare.

          Требования к возможным источникам данных для обнаружения PrintNightmare

          Обнаружение артефактов эксплуатации в LogPoint

          Мы можем обнаруживать артефакты PrintNightmare как в конечной точке, так и в сетевых событиях. Как указывалось ранее, самый надежный способ обнаружения эксплуатации — поиск таких идентификаторов событий, как 808 и 316. В обоих случаях мы можем наблюдать имя вредоносной DLL, загружаемой службой диспетчера очереди печати. В нашем тестировании событие с идентификатором 808 генерируется не всегда, и даже когда оно генерируется, вредоносная DLL успешно загружается.

          norm_id=WinServer event_source="Microsoft-Windows-PrintService" event_id=808

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

          norm_id=WinServer event_source="Microsoft-Windows-PrintService" event_id=316

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

          Используя события создания файлов Sysmon, мы можем отслеживать перетаскивание библиотек DLL в каталог драйвера диспетчера очереди печати.

          norm_id=WindowsSysmon event_id=11
          path="C:\Windows\System32\spool\drivers\x64\3\*"

          Можно поискать файлы DLL в каталоге драйвера диспетчера очереди печати.

          Отброшенные библиотеки DLL впоследствии загружаются процессом диспетчера очереди печати (spoolsv.exe), как видно из событий загрузки изображений Sysmon.

          norm_id=WindowsSysmon label=Image label=Загрузить
          source_image="*\spoolsv.exe"
          image="C:\Windows\System32\spool\drivers\x64\3\*"< /p>

          Вы можете проверить загрузку DLL из каталога драйвера диспетчера очереди печати.

          Загруженные библиотеки DLL также появляются в путях реестра диспетчера очереди печати, что видно из событий реестра Sysmon.

          norm_id=метка WindowsSysmon=метка реестра=Set
          target_object IN ["*\Файл конфигурации*", "*\Файл данных"] | количество диаграмм() по хосту, изображению, целевому_объекту, деталям

          Список недавно загруженных библиотек DLL можно найти в папке реестра диспетчера очереди печати

          Наконец, библиотеки DLL удаляются, как видно из событий удаления файлов Sysmon.

          norm_id=WindowsSysmon event_id IN [23, 26] source_image="*\spoolsv.exe" image="C:\Windows\System32\spool\drivers\x64\3\*"

          Пока новая конфигурация Sysmon передается в среду, мы также можем использовать встроенные события Windows для поиска возможных уязвимостей. Мы можем либо искать порождение WerFault.exe службой диспетчера очереди печати, либо неожиданное завершение службы диспетчера очереди печати. Мы можем использовать собственные события Windows, потому что служба диспетчера очереди печати будет генерировать ошибку во время загрузки DLL полезной нагрузки. Следует отметить, что успешная неопубликованная загрузка библиотеки DLL позволяет обойти это поведение.

          ((norm_id=WindowsSysmon label="Process" label=Create
          parent_image="*\spoolsv.exe" image="*\WerFault.exe")
          ИЛИ (norm_id=WinServer channel= System event_id=7031
          message="Служба диспетчера очереди печати неожиданно прервана"))
          | timechart count() по event_id, host

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

          В качестве альтернативы мы также можем использовать общее обнаружение эксплуатации путем поиска порождения подозрительных процессов службой диспетчера очереди печати.

          norm_id=WindowsSysmon label="Процесс" label=Создать
          parent_image="*\spoolsv.exe" образ В ["*\cmd.exe", "*\powershell.exe", "*\rundll32 .exe"]

          Со стороны сети нам нужно искать передачу полезной нагрузки DLL через SMB, что легко, если в вашей среде есть IDS/IPS, такие как Snort и Zeek (Bro).

          norm_id IN [Snort, SuricataIDS] (message="ET POLICY SMB2 NT Создать AndX-запрос для DLL-файла — возможно боковое перемещение"
          OR signal="ET POLICY SMB2 NT Создать AndX-запрос для DLL-файла — возможное боковое перемещение")
          norm_id=BroIDS event_category=files
          (file="*.DLL" OR mime_type="application/x-dosexec")

          Если у вас есть IDS или IPS, вы можете найти передачу DLL через SMB.

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

          Мы должны помнить, что PrintNightmare также можно использовать для локального повышения привилегий (LPE), например, с помощью PowerShell PoC для создания локального пользователя-администратора без использования удаленных протоколов RPC или SMB. Администраторам рекомендуется следить за новыми локальными творениями пользователей после создания любого из артефактов PrintNightmare, как показано ниже.

          [ norm_id=WindowsSysmon label=метка реестра=Set
          target_object IN ["*\Файл конфигурации*", "*\Файл данных"]] как s1, за которым следует [label=Создать метку=Пользователь] как s2 на s1.host=s2.host
          | количество графиков() от s1.host, s1.image, s1.target_object, s1.detail, s2.target_user

          Вы можете искать новые пользовательские творения после добавления новых записей в папку реестра диспетчера очереди печати

          Конфигурация Sysmon — ключ к обнаружению эксплуатации

          Нетрудно заметить, как мы использовали Sysmon для обнаружения различных артефактов, созданных PrintNightmare. Не забывайте о важности Sysmon в сегодняшней ситуации с угрозами. Вы можете использовать Sysmon для обогащения базовых журналов событий Windows, дополняя существующие источники, такие как создание процессов, а также добавляя поддержку новых источников данных, таких как создание каналов, которые жизненно важны для обнаружения угроз в текущей среде. Однако настройка Sysmon по-прежнему требует тонкого баланса между обнаружением широкого спектра событий и предотвращением переполнения журналов. Все сводится к правильной настройке правил в конфигурации Sysmon, которая специально адаптирована к среде, в которой вы будете ее развертывать.

          Конфигурация Sysmon от SwiftOnSecurity остается одной из лучших отправных точек для начала настройки Sysmon с учетом конкретной среды. Конфигурация Sysmon должна включать правила для обнаружения важных событий, таких как удаление DLL и EXE-файлов, а также исключение для законных приложений, которые очень шумны, таких как встроенные системные процессы, такие как svchost, AV, EDR, сканеры уязвимостей и базы данных, такие как MSSQL. Начните с развертывания базовой конфигурации на выбранных системах и отслеживайте том журнала. Затем начните настраивать исключения для шумных событий в конфигурации. Повторяйте этот процесс до тех пор, пока хранилище SIEM не сможет обрабатывать том журнала при развертывании на всех системах в среде.

          В новых версиях Sysmon представлены новые события, поэтому убедитесь, что у вас установлена ​​минимальная версия Sysmon, необходимая для создания нужных событий. Наконец, прежде чем слепо использовать обнаружение, основанное на Sysmon, обязательно проверьте, может ли развернутая конфигурация генерировать события, необходимые для обнаружения. Слепые зоны в конфигурации Sysmon — обычное явление, которого необходимо избегать путем тщательного тестирования перед полным развертыванием в среде.

          Приготовьтесь к использованию PrintNightmare злоумышленниками

          Поскольку мы до сих пор не знаем, когда Microsoft выпустит исправление для PrintNightmare, защитники предприятий должны сохранять бдительность, поскольку мы ожидаем, что злоумышленники всех уровней начнут использовать уязвимость для повышения привилегий после получения доступа к среде. Несмотря на то, что Microsoft заявила, что затронуты только контроллеры домена, и их расследование продолжается для выявления других затронутых ролей, лучше предположить, что затронуты все версии Windows.Мы рекомендуем сопоставлять события из нескольких источников для надежного обнаружения, что не должно быть проблемой для предприятий, внедривших подход к глубокоэшелонированной защите.

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

          р>

          Еще одна неделя, еще одна критическая уязвимость. Последний критический недостаток безопасности называется PrintNightmare и является ссылкой на две уязвимости в службе диспетчера очереди печати Windows — CVE 2021-1675 и CVE 2021-34527, опубликованные в период с июня по июль 2021 года.

          CVE 2021-1675 — это исправленная уязвимость, позволяющая удаленно выполнять код и повышать привилегии на серверах и компьютерах, на которых работает диспетчер очереди печати. CVE 2021-34527 также допускает удаленное выполнение кода и повышение привилегий в одной и той же службе с помощью несколько иных средств. (Обновление от 6 июля 2021 г.: Microsoft выпустила исправление для CVE-2021-34527.) На данный момент неясна точная связь между двумя уязвимостями и тем, было ли исправление неполным или был обнаружен другой метод атаки.

          Прежде чем я двинусь дальше, давайте начнем с самого главного: если вы еще этого не сделали, отключите все службы диспетчера очереди печати Windows, работающие на контроллере домена. (Semperis Directory Services Protector (DSP) включает в себя индикаторы, которые постоянно сканируют на наличие угроз и признаков компрометации, включая включенные диспетчеры очереди печати на контроллерах домена.)

          Semperis Directory Services Protector постоянно сканирует AD и уведомляет об индикаторах раскрытия и компрометации, включая индикатор для поиска контроллеров домена с активной службой диспетчера очереди печати

          Фон диспетчера очереди печати

          Диспетчер очереди печати — это служба Windows, включенная по умолчанию на всех клиентах и ​​серверах Windows. Служба управляет заданиями на печать, загружая драйверы принтеров, получая файлы для печати, ставя их в очередь, планируя и т. д.

          Служба диспетчера очереди печати требуется, когда компьютер физически подключен к принтеру, который предоставляет услуги печати другим компьютерам в сети. Можно использовать сторонние драйверы и программное обеспечение (например, предлагаемые производителями принтеров), но многие организации полагаются на службу диспетчера очереди печати по умолчанию.

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

          С точки зрения безопасности Диспетчер очереди печати Windows и принтеры в целом уже много лет являются привлекательной мишенью для злоумышленников. Червь Stuxnet 2010 года, использованный против иранских ядерных объектов, использовал уязвимость в службе для повышения привилегий и распространения вредоносного ПО по сети. Та же самая уязвимость диспетчера очереди печати вновь обнаружилась в 2020 году, когда исследователи обнаружили новые способы ее использования. Учитывая тот факт, что принтеры, как известно, можно взломать, может быть, нам действительно пора отказаться от бумаги?

          Ошибка нулевого дня PrintNightmare

          Итерация уязвимости диспетчера очереди печати в июне 2021 г. началась со вторника исправлений Microsoft за июнь 2021 г., который включал исправление для CVE 2021-1675, которое Microsoft считала уязвимостью повышения привилегий с использованием «менее вероятного» в то время — оценка 6,8 ( Средний риск) оценка CVSS. Microsoft обновила этот CVE 21 июня, включив в него удаленное выполнение кода, и повысила оценку CVSS до 7,8 (высокий риск). Через несколько дней на GitHub появился код PoC-эксплойта. Код был быстро переведен в автономный режим, но уже несколько раз разветвлялся.

          30 июня стало очевидно, что исправления недостаточно, а полностью исправленные системы по-прежнему уязвимы для удаленного выполнения кода и повышения привилегий до SYSTEM. Исходный код эксплойта был изменен, что сделало исправление лишь частично эффективным.

          1 июля Microsoft создала новую уязвимость CVE 2021-34527. (6 июля 2021 г. — Microsoft выпустила исправление.)

          Анализ уязвимостей диспетчера очереди печати

          Уязвимость удаленного выполнения кода диспетчера очереди печати использует вызов функции RpcAddPrinterDriver в службе диспетчера очереди печати, который позволяет клиентам добавлять произвольные файлы DLL в качестве драйверов принтера и загружать их как SYSTEM (контекст службы диспетчера очереди печати).

          Эта функция предназначена для того, чтобы пользователи могли удаленно обновлять принтеры — например, ИТ-специалист удаленно устанавливает ваш новый офисный принтер. Однако логическая ошибка в том, как это работает, позволяет любому пользователю внедрить в процесс свою собственную неподписанную DLL, минуя аутентификацию или проверку файла.

          Смягчение проблемы PrintNightmare

          Обновление от 7 июля 2021 г. Microsoft выпустила исправление для CVE 2021-34527. По-прежнему рекомендуется отключать диспетчер очереди печати там, где он не требуется. Вы можете отключить службу диспетчера очереди печати на всех ваших контроллерах домена (или на любой машине, если на то пошло) с помощью параметра групповой политики в разделе «Конфигурация компьютера». Windows Settings\Security Settings\System Services или, что еще лучше, используя GP Preferences в Computer Configuration\Preferences\Control Panel Settings\Services. Дополнительным неофициальным решением является ограничение доступа к папке драйвера, из которой загружается служба. Это необходимо делать на каждом сервере, и, насколько мне известно, это не было полностью протестировано, поэтому используйте его на свой страх и риск.

          Защита контроллеров домена

          Контроллеры домена никогда не должны использоваться в качестве серверов печати. Единственная известная мне законная причина запуска диспетчера очереди печати на контроллере домена — это упомянутая выше обрезка принтеров. В дополнение к многочисленным уязвимостям в Windows Print Spooler вектор атаки на эту службу, известный как «ошибка принтера», позволяет злоумышленнику, который может скомпрометировать ресурс с неограниченным делегированием Kerberos, также скомпрометировать контроллер домена с привилегиями SYSTEM. Хорошее объяснение этой атаки здесь.

          Постоянно отслеживайте уязвимости, такие как PrintNightmare

          Еженедельно мы обнаруживаем уязвимости в часто используемой ИТ-инфраструктуре. Короткое время цикла от раскрытия до размещения оружия требует быстрого подхода к смягчению последствий, который включает в себя непрерывный мониторинг окружающей среды в сочетании с расстановкой приоритетов и информацией о необходимых действиях по исправлению.

          Продукт Semperis Directory Services Protector (DSP) включает в себя индикаторы, которые постоянно сканируют уязвимые места и признаки компрометации в средах с гибридной идентификацией (включая обнаружение включенных диспетчеров очереди печати на контроллерах домена), а также обеспечивают приоритизацию, метрики и рекомендации по исправлению.< /p>

          Дополнительные ресурсы

          Хотите узнать больше о том, как противостоять PrintNightmare, PetitPotam и другим новым атакам, нацеленным на Active Directory? Присоединяйтесь к бесплатному веб-семинару по запросу «Усиление защиты Active Directory: уроки, извлеченные из недавних атак, таких как PrintNightmare», организованный Шоном Дьюби, директором по обслуживанию Semperis.

          Ран Харел (Ran Harel), старший менеджер по продуктам безопасности в Semperis, имеет более чем 15-летний опыт работы в области безопасности, включая тестирование на проникновение, безопасность и управление рисками и соответствием требованиям в глобальных финансовых учреждениях. В последнее время Ран занимал руководящие должности в глобальном поставщике услуг в области кибербезопасности и в двух приобретенных стартапах. Ссылка

          Зарегистрироваться

          Получите последние новости и контент от Semperis.

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

          Избранное

          Защита Active Directory — первый шаг к приведению в соответствие с новыми рекомендациями Управления финансового надзора Великобритании

          Защита Active Directory — первый шаг к приведению в соответствие с новыми рекомендациями Управления финансового надзора Великобритании

          В 2019 году Управление финансового надзора (FCA) предложило внести изменения в порядок обеспечения операционной устойчивости учреждениями финансового сектора Великобритании, особенно в отношении угрозы кибератак. FCA вступит в силу с 31 марта 2022 года. Все организации, деятельность которых регулируется FCA, должны будут пройти аудиторские проверки.

          Представляем атаку Golden GMSA

          В этой статье представлена ​​новая атака, нацеленная на групповые управляемые сервисные аккаунты (gMSA), получившая название «Золотая».

          Защита среды гибридной идентификации от кибератак

          Поскольку мир продолжает осваивать цифровую трансформацию и распределенную работу, компании будут продолжать развертывать SaaS.

          Читайте также: