Install Root Certificate erkennen: Vertrauen untergraben

Kurzfassung: Vertrauen ist unter Windows an die Stammzertifikate gebunden - wer dort ein eigenes Zertifikat einschleust, lässt selbst signierte Schadsoftware und abgefangenen TLS-Verkehr vertrauenswürdig erscheinen. Install Root Certificate untergräbt eine der grundlegenden Schutzschichten des Systems. Für den Verteidiger wird das an wenigen Mustern sichtbar: dem Registry-Eintrag im Stammspeicher, einem certutil-Aufruf und einem PowerShell-Import. Drei sigma-cli-validierte Sigma-Regeln, dazu Härtung und der Test im Lab. Serie "Angriff erkennen".

Ob eine Signatur gültig ist und ob eine TLS-Verbindung echt ist, entscheidet Windows anhand der vertrauenswürdigen Stammzertifikate. Diese Liste ist eine Vertrauensanker-Schicht - und genau deshalb ein lohnendes Ziel. Schiebt ein Angreifer sein eigenes Stammzertifikat hinein, gilt alles, was damit signiert ist, als vertrauenswürdig: Schadsoftware wirkt sauber signiert, und ein Angreifer kann TLS-Verkehr aufbrechen, ohne eine Warnung auszulösen. Weil das eine Schutzfunktion des Systems schwächt, steht die Technik in dieser Serie in der Spalte Defense Impairment. Dieser Beitrag nimmt die Erkennung in den Blick und bleibt auf der Verteidigerseite.

Einordnung in ATT&CK: Subvert Trust Controls: Install Root Certificate (T1553.004), eine Untertechnik von Subvert Trust Controls. MITRE führt sie in der Taktik Defense Evasion; in dieser Serie steht sie in der Spalte Defense Impairment, weil das Einschleusen eines Stammzertifikats eine Vertrauens- und Schutzschicht des Systems gezielt schwächt. Sie grenzt sich von der Manipulation einzelner Signaturen ab und setzt an der Wurzel des Vertrauens an.

Was der Angreifer tut

Das Einschleusen eines Stammzertifikats läuft - auf der Ebene des Prinzips, nicht als Anleitung - in wenigen Mustern ab:

  • Ein eigenes Zertifikat erstellen. Der Angreifer erzeugt ein Stammzertifikat, dessen privaten Schlüssel nur er besitzt.
  • In den Stammspeicher aufnehmen. Das Zertifikat wird in den vertrauenswürdigen Stammspeicher eingetragen - über die Registry, über certutil oder über PowerShell.
  • Vertrauen ernten. Alles, was mit diesem Zertifikat signiert ist, gilt nun als vertrauenswürdig; auch abgefangener TLS-Verkehr erscheint echt.
  • Unauffällig bleiben. Ein zusätzliches Stammzertifikat fällt im Alltag kaum auf, solange niemand den Speicher gezielt prüft.

Für die Erkennung ist entscheidend: Das Eintragen hinterlässt eine Spur - den Registry-Eintrag im Stammspeicher und, wenn Bordmittel genutzt werden, den certutil- oder PowerShell-Aufruf. Genau daran setzen die Regeln an.

Welche Logquellen die Technik zeigt

  • Registry-Telemetrie zuerst. Sysmon Event 13 zeigt einen neuen Eintrag unter SystemCertificates\Root\Certificates und erfasst das Stammzertifikat auch dann, wenn kein Kommandozeilenwerkzeug genutzt wurde. Die wichtigste Quelle.
  • Prozess-Telemetrie. Event 4688 zeigt certutil oder PowerShell samt vollständiger Befehlszeile - also den addstore-Aufruf oder den Import in den Stammspeicher.
  • Werkzeug-Kontext. certutil ist ein mitgeliefertes Windows-Programm; Grundlagen zum Missbrauch solcher Bordmittel unter Living off the Land.
  • Abgleich mit der Baseline. Entscheidend ist der Vergleich mit der regulären Zertifikatspflege: Windows und die Unternehmens-PKI tragen Zertifikate aus bekannten Quellen ein - alles andere ist auffällig.

Das Muster im Log

Drei Signale tragen. Das erste ist ein neuer Eintrag unter SystemCertificates\Root\Certificates in der Registry - der direkte Beleg für ein neues Stammzertifikat. Das zweite ist ein certutil-Aufruf mit addstore und dem Stammspeicher Root. Das dritte ist ein PowerShell-Import mit Import-Certificate oder Import-PfxCertificate in einen Root-Speicher. Legitime Treffer stammen aus der automatischen Windows-Stammzertifikatspflege und der Unternehmens-PKI, die Zertifikate aus bekannten Quellen verteilen. Auffällig wird es, wenn ein Stammzertifikat außerhalb dieser Wege auftaucht, von einem Arbeitsplatz oder Benutzerkonto gesetzt wird oder mit einem mitgebrachten Zertifikat einhergeht. Der Blick auf Quelle, Konto und Zeitpunkt trennt den Alltag vom Angriff.

Drei Sigma-Regeln

Die Regeln sind mit sigma-cli geprüft und nehmen die drei Signale: den Registry-Eintrag im Stammspeicher, den certutil-Aufruf und den PowerShell-Import. Eine wertet die Registry aus, zwei die Prozess-Telemetrie.

1. Neues Stammzertifikat in der Registry eingetragen (T1553.004). Ein Eintrag unter SystemCertificates\Root\Certificates. Die Regel steht auf level: medium.

Sigma
title: Neues Stammzertifikat in der Registry eingetragen
id: 6d2b8f41-4c93-4e75-a1e6-3b9d7c2a5f18
status: experimental
description: |
  Erkennt das Eintragen eines Zertifikats in den Stammzertifikatsspeicher unter
  SystemCertificates\\Root\\Certificates in der Registry. Angreifer schleusen ein eigenes Stammzertifikat
  ein, damit ihr Code oder ihr abgefangener TLS-Verkehr als vertrauenswuerdig gilt (Install Root
  Certificate). Ein neuer Eintrag im Stammspeicher ausserhalb der regulaeren Windows-Zertifikatspflege
  ist verdaechtig.
references:
  - https://attack.mitre.org/techniques/T1553/004/
author: blue-team.net
tags:
  - attack.defense-impairment
  - attack.t1553.004
logsource:
  product: windows
  category: registry_set
detection:
  sel:
    TargetObject|contains: '\SystemCertificates\Root\Certificates\'
  condition: sel
falsepositives:
  - Die automatische Windows-Stammzertifikatspflege und Unternehmens-PKI tragen regulaer Zertifikate ein - bekannte Quellen und Thumbprints als Baseline ausnehmen
level: medium

2. certutil trägt Zertifikat in den Stammspeicher ein (T1553.004). certutil mit addstore und Root. Die Regel steht auf level: high.

Sigma
title: certutil traegt Zertifikat in den Stammspeicher ein
id: 9f4c6a23-7d81-4b63-a2f5-8e3d6c1b4a79
status: experimental
description: |
  Erkennt certutil.exe mit addstore und dem Stammspeicher Root. Angreifer nutzen certutil, um ein
  eigenes Stammzertifikat in den vertrauenswuerdigen Speicher aufzunehmen und so Code oder TLS-Verkehr
  vertrauenswuerdig erscheinen zu lassen (Install Root Certificate). Der Aufruf ist im Normalbetrieb
  selten und meist bewusst.
references:
  - https://attack.mitre.org/techniques/T1553/004/
author: blue-team.net
tags:
  - attack.defense-impairment
  - attack.t1553.004
logsource:
  product: windows
  category: process_creation
detection:
  sel_img:
    Image|endswith: '\certutil.exe'
  sel_store:
    CommandLine|contains: 'addstore'
  sel_root:
    CommandLine|contains: 'Root'
  condition: sel_img and sel_store and sel_root
falsepositives:
  - Administration und PKI-Verwaltung nutzen certutil addstore legitim - bekannte Hosts und Konten als Baseline ausnehmen
level: high

3. PowerShell importiert Zertifikat in den Stammspeicher (T1553.004). Import-Certificate oder Import-PfxCertificate in LocalMachine\Root oder CurrentUser\Root. Ebenfalls level: high.

Sigma
title: PowerShell importiert Zertifikat in den Stammspeicher
id: 2a8e5c37-4d94-4f61-b3d7-7c2e9b4a1f63
status: experimental
description: |
  Erkennt PowerShell, das ueber Import-Certificate oder Import-PfxCertificate ein Zertifikat in den
  Stammspeicher (LocalMachine\\Root oder CurrentUser\\Root) importiert. Angreifer nehmen so ein eigenes
  Stammzertifikat in den vertrauenswuerdigen Speicher auf (Install Root Certificate). Der Import in den
  Stammspeicher ist im Normalbetrieb selten.
references:
  - https://attack.mitre.org/techniques/T1553/004/
author: blue-team.net
tags:
  - attack.defense-impairment
  - attack.t1553.004
logsource:
  product: windows
  category: process_creation
detection:
  sel_img:
    Image|endswith:
      - '\powershell.exe'
      - '\pwsh.exe'
  sel_cmd:
    CommandLine|contains:
      - 'Import-Certificate'
      - 'Import-PfxCertificate'
  sel_root:
    CommandLine|contains:
      - 'LocalMachine\Root'
      - 'CurrentUser\Root'
  condition: sel_img and sel_cmd and sel_root
falsepositives:
  - Automatisierte Zertifikatsverteilung nutzt diese Cmdlets legitim - bekannte Skripte und Hosts als Baseline ausnehmen
level: high

Härtung: der Angriff, der ins Leere läuft

  • Stammspeicher schützen. Das Ändern des Stammzertifikatsspeichers erfordert Administratorrechte - diese eng halten und das Hinzufügen von Stammzertifikaten per Richtlinie auf die PKI beschränken.
  • Zertifikate zentral verteilen. Stammzertifikate ausschließlich über Gruppenrichtlinie und die Unternehmens-PKI ausrollen, damit jeder andere Weg sofort auffällt.
  • Regelmäßig abgleichen. Den Stammspeicher der Endgeräte regelmäßig gegen eine Soll-Liste prüfen und unbekannte Zertifikate untersuchen.
  • Gezielt überwachen. Registry-Einträge im Stammspeicher, certutil addstore und PowerShell-Importe in den Root-Speicher als feste Erkennungen führen.

Der Test

Die Erkennung lässt sich im Lab gefahrlos prüfen, auf einem isolierten System mit aktivem Sysmon - mit einem selbst erzeugten Testzertifikat, das danach wieder entfernt wird:

  • Für Regel 1 ein Testzertifikat in den Stammspeicher eintragen und prüfen, dass Sysmon Event 13 den neuen Eintrag unter SystemCertificates\Root\Certificates meldet.
  • Für Regel 2 das Testzertifikat mit certutil -addstore Root hinzufügen und prüfen, dass Event 4688 den Aufruf samt Befehlszeile zeigt.
  • Für Regel 3 das Zertifikat per Import-Certificate in Cert:\LocalMachine\Root importieren und kontrollieren, dass die Regel greift; das Testzertifikat danach wieder entfernen.
  • Breiter wird der Test mit den Fällen zu T1553.004 aus Atomic Red Team.

Fehlalarme und Tuning

  • Windows-Stammzertifikatspflege. Windows aktualisiert den Stammspeicher automatisch über den CryptSvc-Dienst. Diese Quelle als Baseline ausnehmen, bevor die Registry-Regel scharf geschaltet wird.
  • Unternehmens-PKI. Die eigene PKI verteilt Stammzertifikate per Gruppenrichtlinie. Bekannte Zertifikate und Verteilwege gezielt behandeln.
  • Quelle entscheidet. Ein Stammzertifikat aus der automatischen Pflege oder der PKI ist Alltag; dasselbe von einem Benutzerkonto oder per mitgebrachtem certutil-Aufruf ist es nicht - danach priorisieren.
  • Kette schlägt Einzelzeile. Der Eintrag im Stammspeicher zusammen mit einem frisch abgelegten Zertifikat und einem auffälligen Konto ist weit aussagekräftiger als ein Treffer allein - die Korrelation schärft die Bewertung.

Fazit

Install Root Certificate setzt an der Wurzel des Vertrauens an: Ein eingeschleustes Stammzertifikat lässt signierte Schadsoftware sauber erscheinen und erlaubt das unbemerkte Aufbrechen von TLS-Verkehr. Die verlässlichen Signale sind ein neuer Eintrag unter SystemCertificates\Root\Certificates, ein certutil-Aufruf mit addstore Root und ein PowerShell-Import in den Stammspeicher. Die wirksamste Härtung ist das Beschränken des Stammspeichers auf die zentrale Verteilung über PKI und Gruppenrichtlinie, zusammen mit einem regelmäßigen Abgleich gegen eine Soll-Liste. Grundlagen zum Missbrauch signierter Bordmittel wie certutil zeigt das Living off the Land. Weitere Techniken dieser Taktik führt das Lexikon nach Taktik unter Defense Impairment.

NH

$ whoami

Norbert Hofmann

Cyber Defense Analyst im Security Operations Center eines Managed Security Service Providers. Red und Blue Teaming, Malware-Analyse, Incident Response und Security-Awareness-Trainings. Finalist bei „Deutschlands bester Hacker“ 2022, mehrere CVE-Einträge für WordPress-Plugins.