Support-Portal

Wichtiger Hinweis: PrintNightmare-Sicherheitslücke: Was Sie nun tun müssen

Bei PrintNightmare (CVE-2021-34527) handelt es sich um einen kritischen Zero-Day Windows-Bug mit dem Remote Code Execution möglich ist. Der Bug betrifft alle Windows-Geräte, einschließlich Endpoints und Server.

Zum 07. Juli 2021 wurden durch Microsoft mehrere Patches für OS Builds 19041.1083, 19042.1083 und 19043.1083, sowie eine wichtige Sicherheits-Guideline bereitgestellt. Betroffene Unternehmen sollten die Patches bei der ersten Gelegenheit einspielen

Sophos Schutzmaßnahmen

Beginnend ab 02. Juli 2021 hat SophosLabs IPS-Signaturen für Sophos Endpoint und Sophos Firewall Produkte veröffentlicht, die sich auf Remote Add Printer Driver Calls beziehen, wie sie in den verfügbaren Proof of Concepts beschrieben werden:

  • Sophos XG Firewall und Sophos SG UTM: 57876 und 57877 (verfügbar seit 02.07.2021 und 03.07.2021)
  • Sophos Intercept X und Sophos Endpoint Protection: 2305776 (verfügbar seit 06.07.2021)

Am 03.07.2021 wurde Static File Detection für die bereits bekannten Proof-of-Concept Executables:

  • cpp Version: Exp/20211675-A
  • c# Version: Exp/20211675-B
  • PowerShell Version: Exp/20211675-C
  • Python Version: Exp/20211675-D

Was Sie tun können

Betroffene Unternehmen sollten die verfügbaren Patches von Microsoft so frühzeitig wie möglich einspielen. Sofern dies nicht möglich ist, empfiehlt Sophos Ihnen folgendes:

Option 1:

Schalten Sie den Print Spooler aus, wo immer möglich und limitieren Sie den Zugriff auf Print Spooler Dienste so strikt wie möglich auf allen Maschinen auf denen das Deaktivieren nicht möglich ist.

Option 2:

Deaktivieren Sie eingehendes Remote Printing per Gruppenrichtlinie

Prüfen Sie ihre Anfälligkeit mit Sophos EDR und Sophos XDR

Kunden können Live Discover nutzen, um festzustellen, ob sie von der Sicherheitslücke betroffen sind und ob die Patches bereits eingespielt sind.

1. Wie Sie Geräte identifizieren, auf denen der Print Spooler läuft

Nutzen sie Live Discover, um die nachfolgende Anfrage durchzuführen, um festzustellen auf welchen Windows-Geräten der Print Spooler Dienst aktiv ist. Ist der Dienst aktiviert, ist der Computer potenziell anfällig für ungepatchte Sicherheitslücken, wie PrintNightmare.

SELECT display_name, status, start_type, user_account,
CASE
   WHEN status = 'RUNNING' THEN ' Exposed to unpatched vulnerabilities inc. PrintNightmare'
   WHEN status = 'STOPPED' THEN ' NOT exposed to unpatched vulnerabilities inc. PrintNightmare'
   END AS SpoolerCheck,
CASE
   WHEN start_type = 'AUTO_START' THEN 'Set Spooler to DISABLED or DEMAND_START'
   END AS ServiceCheck
FROM services WHERE path = 'C:\Windows\System32\spoolsv.exe';

2. Suchen Sie Fehler beim Laden von Modulen

Nutzen Sie Live Discover, um die nachfolgende Anfrage durchzuführen, um Fehler beim Laden von Modulen zu finden. Die Ergebnisse müssen manuell von Ihrem Administrator gegengeprüft werden.

SELECT
  datetime,
  eventid,
  'PrintService' AS Source,
  JSON_EXTRACT(data, '$.UserData.Context') AS context,
  JSON_EXTRACT(data, '$.UserData.ErrorCode') AS ErrorCode,
  JSON_EXTRACT(data, '$.UserData.LoadPluginFailed') AS LoadPluginFailed,
  JSON_EXTRACT(data, '$.UserData.PluginDllName') AS PluginDllName
FROM sophos_windows_events
WHERE source = 'Microsoft-Windows-PrintService/Admin' AND eventid = 808 AND (LOWER(ErrorCode) = '0x45a' OR LOWER(ErrorCode) = '0x7e');

3. Finden Sie heraus, ob der Patch ausgerollt wurde

Für die neueste Anfrage, nutzen Sie den Sophos Support Threat Hunting Community Post

Prüfung mittels Windows SC (Service Control) Befehl

Um zu sehen, ob der Spooler-Dienst auf Ihrem Computer läuft, können Sie einen Windows SC (Service Control) Befehl von der Konsole absetzen:

C:\Users\duck>sc query spooler

SERVICE_NAME: spooler
        TYPE               : 110  WIN32_OWN_PROCESS  (interactive)
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

Sie können verhindern, dass der Spooler von selbst startet, selbst nach einem Geräteneustart, indem Sie folgenden Befehl ausführen:

C:\Users\duck>sc config spooler start= disabled

Beachten Sie, dass kein Leerzeichen zwischen „start“ und „=“ stehen darf, aber zwischen „=“ und „disabled“ eines gesetzt werden muss. Sie müssen die Kommandokonsole (CMD.EXE) als Administrator starten, um Services zu konfigurieren.

Nach einem Neustart sollten Sie folgendes sehen:

C:\Users\duck>>sc query spooler

SERVICE_NAME: spooler
        TYPE               : 110  WIN32_OWN_PROCESS  (interactive)
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 1077  (0x435)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0