SOC Prime Bias: Kritisch

24 Nov. 2025 12:15

NotDoor Einblicke: Tiefgründige Analyse von Outlook-Makros und darüber hinaus

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Follow
NotDoor Einblicke: Tiefgründige Analyse von Outlook-Makros und darüber hinaus
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Dieser Artikel untersucht die NotDoor-Hintertür, die bösartige Outlook-VBA-Makros missbraucht, um Persistenz zu gewährleisten und Command-and-Control bereitzustellen. Die Nutzlast wird über DLL-Sideloading einer manipulierten SSPICLI.dll , die eine legitime OneDrive.exe Binärdatei nachahmt. Verschleierte PowerShell-Skripte verwalten die Datenexfiltration über Webhook-Dienste und ändern die Outlook-Registry-Einstellungen, um die Makroausführung zu erzwingen. Die Erkennungshinweise konzentrieren sich auf die Verfolgung verdächtiger Dateierstellung, DLL-Ladeaktivitäten, Registry-Änderungen und kodierte PowerShell-Befehle.

Analyse der NotDoor-Hintertür

Weiterführende Analysen zeigen, dass die gefälschte DLL ein temporäres Verzeichnis erstellt, eine Nutzlast in die Outlook VBAProject.OTM -Datei schreibt und Registrierungsschlüssel konfiguriert, um alle Makros zuzulassen. Anschließend werden base64-kodierte PowerShell-Anweisungen ausgeführt, die DNS- und HTTP-Callbacks an webhook.site and dnshook.siteausgeben. Registry-Änderungen umfassen das Aktivieren von LoadMacroProviderOnBoot, das Senken des Sicherheitsniveaus in Outlook und das Ändern von PONT_STRING , um Sicherheitshinweise zu unterdrücken.

Minderung

Wichtige Maßnahmen zur Minderung umfassen die Begrenzung von DLL-Sideloading-Möglichkeiten, die Durchsetzung von Codesignaturanforderungen für ausführbare Dateien, die Überwachung der Erstellung von VBAProject.OTM durch keine Outlook-Prozesse und das Blockieren ausgehender Verbindungen zu den identifizierten Webhook-Domains. Zusätzlich können Teams Prinzipien des geringsten Privilegs auf Registrierungsmeldungen anwenden und das automatische Laden von Makros deaktivieren, wo immer es möglich ist.

Reaktion

Wird eine NotDoor-Aktivität erkannt, isolieren Sie den kompromittierten Endpunkt, erfassen Sie die bösartige DLL und zugehörige Nutzlasten und führen Sie eine forensische Überprüfung von Registrierungseinträgen und Netzwerkspuren durch. Blockieren Sie zugehörige Domains und IPs, starten Sie eine umfassendere Untersuchung ähnlicher DLL-Sideloading-Verhaltensweisen, setzen Sie die Outlook-Makro-Richtlinien zurück und stellen Sie sicher, dass die Sicherheitseinstellungen aller Benutzer wieder gehärtet sind.

graph TB %% Class definitions classDef technique fill:#ffcc99 classDef tool fill:#cccccc classDef file fill:#e6e6fa classDef action fill:#99ccff classDef operator fill:#ff9900 %% Nodes – Actions / Techniques initial_access[„<b>Action</b> – Initialer Zugriff über bestehenden Zugangspunkt“] class initial_access action dll_sideload[„<b>Technique</b> – <b>T1574.001 Hijack Execution Flow: DLL</b><br/>OneDrive.exe lädt die bösartige SSPICLI.dll über DLL-Sideloading“] class dll_sideload technique powershell[„<b>Technique</b> – <b>T1059.001 Command and Scripting Interpreter: PowerShell</b><br/>Base64-kodierte PowerShell-Befehle werden für Netzwerkprüfungen und Dateikopien ausgeführt“] class powershell technique office_macro[„<b>Technique</b> – <b>T1137.001 Office Application Startup: Office Template Macros</b><br/>VBA-Makro wird in %APPDATA%\\Microsoft\\Outlook\\VbaProject.OTM abgelegt“] class office_macro technique vba_stomping[„<b>Technique</b> – <b>T1564.007 Hide Artifacts: VBA Stomping</b><br/>Makro überwacht eingehende E-Mails (Application_NewMailEx) auf C2-Trigger und exfiltriert Daten“] class vba_stomping technique vb_interpreter[„<b>Technique</b> – <b>T1059.005 Command and Scripting Interpreter: Visual Basic</b><br/>VBA-Code führt Befehle aus und kommuniziert über Outlook“] class vb_interpreter technique %% Nodes – Files / Objects file_oneDrive[„<b>File</b> – OneDrive.exe“] class file_oneDrive file file_sspicli[„<b>File</b> – SSPICLI.dll“] class file_sspicli file file_vba[„<b>File</b> – VbaProject.OTM“] class file_vba file email_monitor[„<b>Object</b> – Outlook-Anwendung<br/>Überwacht eingehende E-Mails (Application_NewMailEx)“] class email_monitor action outlook_comm[„<b>Object</b> – Outlook<br/>Kommuniziert mit C2 und exfiltriert Daten“] class outlook_comm action %% Connections – Flow of the attack initial_access –>|führt zu| dll_sideload dll_sideload –>|nutzt| file_oneDrive dll_sideload –>|lädt| file_sspicli dll_sideload –>|löst aus| powershell powershell –>|führt zu| office_macro office_macro –>|platziert| file_vba office_macro –>|aktiviert| vba_stomping office_macro –>|aktiviert| vb_interpreter vba_stomping –>|überwacht| email_monitor vb_interpreter –>|kommuniziert über| outlook_comm

Angriffsfluss

Simulation Ausführung

Voraussetzung: Der Telemetrie- & Baseline-Preflight-Check muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der Angreifertechnik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und Erzählungen MÜSSEN direkt die identifizierten TTPs widerspiegeln und darauf abzielen, die genau erwartete Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird.

  • Angriffsaufriss & Befehle:
    Ein Angreifer, der Benutzerrechte auf der Opfermaschine erlangt hat, setzt die NotDoor-Malware ein. Das Ziel der Malware ist es, sicherzustellen, dass Outlook beim Systemstart automatisch ein bösartiges Makro lädt, Sicherheitswarnungen deaktiviert und Dialog-Popups unterdrückt. Um dies zu erreichen, schreibt der Angreifer drei spezifische Registry-Werte in den Outlook-Zweig:

    1. LoadMacroProviderOnBoot gesetzt auf 1 unter HKCUSoftwareMicrosoftOutlook – zwingt Outlook dazu, den Makro-Provider bei jedem Start zu laden.
    2. Level gesetzt auf 1 unter HKCUSoftwareMicrosoftOutlookSecurity – senkt das Makro-Sicherheitsniveau.
    3. PONT_STRING gesetzt auf eine bösartige CLSID unter HKCUSoftwareMicrosoftOutlookOptionsGeneral – weist Outlook auf die bösartige Makro-DLL hin.

    Diese Schreibaktionen erzeugen Registrierungsänderungsevents, die Auswahl1 and (Auswahl2 or Auswahl3) in der Sigma-Regel erfüllen und dadurch den Alarm auslösen.

  • Regressionstestskript:

    # NotDoor Registrierungnsänderungssimulation – PowerShell
    function Set-NotDoorOutlookRegistry {
        # 1. Aktivieren des Makro-Providers beim Start
        New-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlook" `
            -Name "LoadMacroProviderOnBoot" -Value 1 -PropertyType DWORD -Force
    
        # 2. Sicherheitswarnstufe senken
        New-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookSecurity" `
            -Name "Level" -Value 1 -PropertyType DWORD -Force
    
        # 3. Auf bösartiges Makro zeigen (simulierte CLSID)
        $maliciousClsid = "{12345678-1234-1234-1234-123456789ABC}"
        New-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookOptionsGeneral" `
            -Name "PONT_STRING" -Value $maliciousClsid -PropertyType String -Force
    }
    
    # Simulierten Angriff ausführen
    Set-NotDoorOutlookRegistry
  • Bereinigungsbefehle:

    # Entfernen der simulierten NotDoor-Registrierungsänderungen
    Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlook" `
        -Name "LoadMacroProviderOnBoot" -ErrorAction SilentlyContinue
    
    Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookSecurity" `
        -Name "Level" -ErrorAction SilentlyContinue
    
    Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookOptionsGeneral" `
        -Name "PONT_STRING" -ErrorAction SilentlyContinue