Skip to content

Security Baselines

Security Baselines in TCM365 bieten vordefinierte Regelwerke, die Industrie-Best-Practices, regulatorische Anforderungen und organisatorische Sicherheitsstandards repraesentieren. Mit 43 Baseline-Templates über 10+ Framework-Kategorien ermöglicht TCM365 automatisierte Compliance-Evaluation gegen weithin anerkannte Sicherheitsbenchmarks.


Übersicht

Eine Security Baseline ist eine Sammlung von Konfigurationsregeln, die jeweils einen erwarteten Einstellungswert, den zugehörigen Resource Type und Metadaten für Compliance-Mapping spezifizieren. TCM365 evaluiert Tenant-Snapshots gegen diese Baselines, um Compliance-Scores zu erstellen, Lücken zu identifizieren und Remediation-Anleitungen zu generieren.

Kernfunktionen

  • 43 vorgefertigte Baseline-Templates über 10+ Framework-Kategorien
  • MITRE ATT&CK-Mapping für sicherheitsrelevante Regeln
  • Framework-spezifische Bezeichner (Maester Test IDs, EIDSCA Control IDs)
  • Cross-Vendor Framework-Mapping (ISO, NIS2)
  • Automatisierte Compliance Engine für Snapshot-Evaluation
  • Erstellung und Modifikation eigener Baselines
  • Zscaler-spezifische Baselines für ZIA- und ZPA-Konfigurationen
  • Atlassian-spezifische Baselines für Org Security, Jira und Confluence (v2.5.0)
  • Szenario-basierte Templates für gängige Deployment-Muster

Baseline-Template-Kategorien

CIS Benchmarks (4 Templates)

Center for Internet Security (CIS) Benchmarks bieten praeskriktive Konfigurationsrichtlinien für Microsoft 365.

Template Datei Regeln Umfang
CIS M365 Level 1 cis-m365-l1.json Grundlegende Sicherheit für alle Organisationen Entra, Exchange, SharePoint, Teams
CIS M365 Level 1 E5 cis-m365-l1-e5.json Level 1 mit E5-spezifischen Controls Level 1 + Defender, Purview
CIS M365 Level 2 cis-m365-l2.json Erweiterte Sicherheit (kann Nutzbarkeit beeinträchtigen) Erweiterte Entra, Exchange-Härtung
CIS M365 Level 2 E5 cis-m365-l2-e5.json Level 2 mit E5-spezifischen Controls Level 2 + erweiterte Defender

SCUBA (8 Templates)

CISA Secure Cloud Business Applications (SCUBA) Baselines sind auf die Cloud-Sicherheitsanforderungen der US-Bundesregierung abgestimmt.

Template Datei Umfang
SCUBA AAD scuba-aad.json Azure Active Directory / Entra ID
SCUBA Defender scuba-defender.json Microsoft Defender for Office 365
SCUBA Exchange scuba-exo.json Exchange Online
SCUBA SharePoint scuba-sharepoint.json SharePoint Online
SCUBA Teams scuba-teams.json Microsoft Teams
SCUBA Power BI scuba-powerbi.json Power BI
SCUBA Power Platform scuba-powerplatform.json Power Platform
SCUBA Full Bundle scuba-full-bundle.json Alle SCUBA Workloads kombiniert

Microsoft Zero Trust (3 Templates) + NIST (1 Template)

Zero Trust Architecture Baselines basierend auf Microsofts Maturity-Modell und NIST Special Publication 800-207.

Template Datei Reifegrad
Zero Trust Starting Point ms-zero-trust-starting-point.json Grundlagen-Level
Zero Trust Enterprise ms-zero-trust-enterprise.json Mittleres Level
Zero Trust Specialized ms-zero-trust-specialized.json Fortgeschrittene/spezialisierte Workloads
NIST 800-207 Zero Trust nist-800-207-zt.json NIST ZT-Architektur

BSI (1 Template)

Bundesamt für Sicherheit in der Informationstechnik (BSI) IT-Grundschutz-Baseline für deutsche regulatorische Compliance.

Template Datei Umfang
BSI Grundschutz M365 bsi-grundschutz-m365.json Deutscher IT-Sicherheitsstandard für M365

Maester (3 Templates)

Maester-kompatible Baselines für automatisierte Sicherheitstests mit strukturierten Test-Bezeichnern.

Template Datei Fokus
App Registration Security app-registration-security.json Entra ID App Registration Hygiene
CA Policy Validation maester-ca-policy-validation.json 52 Conditional Access Policy-Tests
Privileged Role Hygiene privileged-role-hygiene.json Privileged Identity Management

EIDSCA (1 Template)

Entra ID Security Configuration Analyzer -- eine umfassende Baseline mit Fokus ausschliesslich auf Entra ID-Sicherheitseinstellungen.

Template Datei Fokus
EIDSCA Entra Security eidsca-entra-security.json Umfassende Entra ID-Konfiguration

Allgemeine Sicherheit (9 Templates)

Zweckgebundene Baselines für spezifische Sicherheitsdomaenen:

Template Datei Fokus
Anti-Phishing anti-phishing.json Phishing-Schutzrichtlinien
CA MFA Enforcement ca-mfa-enforcement.json Multi-Faktor-Authentifizierung via CA
DKIM Signing dkim-signing.json E-Mail DKIM-Konfiguration
Entra Hardening entra-hardening.json Entra ID Sicherheitshaertung
Exchange Security exchange-security.json Exchange Online Sicherheitseinstellungen
Intune Compliance intune-compliance.json Device Compliance Policies
Legacy Auth Blocking legacy-auth-blocking.json Legacy-Authentifizierungsprotokolle blockieren
Teams Governance teams-governance.json Teams Collaboration Governance
Zero Trust Foundation zero-trust-foundation.json Grundlegende Zero Trust Controls

Zscaler (4 Templates)

Baselines für Zscaler ZIA- und ZPA-Sicherheitskonfigurationen:

Template Datei Regeln Fokus
ZIA Security Best Practices zscaler-zia-security.json 10 ZIA Internet-Sicherheit
ZPA Zero Trust Access zscaler-zpa-zero-trust.json 9 ZPA Zero Trust-Zugriff
ZIA DLP zscaler-zia-dlp.json 8 Data Loss Prevention
Zscaler Hardening zscaler-hardening.json 8 Kombinierte ZIA/ZPA-Härtung

Szenario-basiert (6 Templates)

Vorkonfigurierte Baselines optimiert für gängige organisatorische Szenarien:

Template Datei Zielgruppe
Copilot Readiness scenario-copilot-readiness.json Organisationen mit M365 Copilot-Deployment
Education scenario-education.json Bildungseinrichtungen
New Tenant scenario-new-tenant.json Frisch provisionierte M365 Tenants
Regulated Industry scenario-regulated-industry.json Finanz, Gesundheit, Regierung
Remote Workforce scenario-remote-workforce.json Verteilte/Remote-Organisationen
SMB Essential scenario-smb-essential.json Kleine und mittlere Unternehmen

Atlassian (3 Templates, v2.5.0)

Baselines für Atlassian Cloud Sicherheitskonfigurationen:

Template Datei Regeln Fokus
Atlassian Org Security atlassian-org-security.json 10 Organisationsweite Sicherheitseinstellungen
Atlassian Jira Security atlassian-jira-security.json 8 Jira-spezifische Sicherheitskonfiguration
Atlassian Confluence Security atlassian-confluence-security.json 6 Confluence-spezifische Sicherheitskonfiguration

Template-JSON-Struktur

Jedes Baseline-Template folgt einem standardisierten JSON-Schema definiert in backend-js/src/config/baseline-templates/template-schema.ts.

Template-Aufbau

{
  "id": "cis-m365-l1",
  "name": "CIS Microsoft 365 Level 1",
  "description": "CIS Benchmark für Microsoft 365 - Level 1 (empfohlen für alle Organisationen)",
  "version": "2.0.0",
  "framework": "CIS",
  "category": "benchmark",
  "vendor": "microsoft",
  "tags": ["cis", "m365", "level1", "recommended"],
  "rules": [
    {
      "id": "CIS-M365-1.1.1",
      "name": "MFA für alle Benutzer sicherstellen",
      "description": "Multi-Faktor-Authentifizierung sollte für alle Benutzerkonten erforderlich sein",
      "severity": "critical",
      "resourceType": "microsoft.entra.conditionalAccess",
      "settingPath": "state",
      "expectedValue": "enabled",
      "operator": "equals",
      "remediation": "CA Policy erstellen, die MFA für alle Benutzer erfordert",
      "references": [
        "https://www.cisecurity.org/benchmark/microsoft_365"
      ],
      "mitreAttackId": "T1078",
      "mitreAttackTactic": "Initial Access",
      "isoMapping": "A.9.4.2",
      "nis2Mapping": "Article 21(2)(j)"
    }
  ]
}

Regel-Eigenschaften

Eigenschaft Typ Pflicht Beschreibung
id string Ja Eindeutiger Regelbezeichner innerhalb des Templates
name string Ja Menschenlesbarer Regelname
description string Ja Detaillierte Beschreibung der Regel
severity enum Ja info, low, medium, high, critical
resourceType string Ja Vendor-Prefixed Resource Type zur Auswertung
settingPath string Ja JSONPath zur spezifischen Einstellung innerhalb der Ressource
expectedValue any Ja Erwarteter Wert für Compliance
operator enum Ja Vergleichsoperator (siehe unten)
remediation string Nein Empfohlene Behebungsschritte
references string[] Nein Externe Referenz-URLs
mitreAttackId string Nein MITRE ATT&CK Technique ID
mitreAttackTactic string Nein MITRE ATT&CK Tactic
maesterTestId string Nein Maester Framework Test ID
eidscaControl string Nein EIDSCA Control-Bezeichner
isoMapping string Nein ISO 27001/27002 Control-Mapping
nis2Mapping string Nein NIS2-Richtlinie Artikel-Mapping

Vergleichsoperatoren

Operator Beschreibung Beispiel
equals Exakte Werteuebereinstimmung state gleich "enabled"
notEquals Wert darf nicht uebereinstimmen legacyAuth ungleich "allowed"
contains Array oder String enthält Wert grantControls enthält "mfa"
notContains Array oder String enthält Wert nicht excludedUsers enthält nicht "all"
greaterThan Numerischer Vergleich passwordLength größer als 12
lessThan Numerischer Vergleich sessionTimeout kleiner als 480
exists Eigenschaft muss vorhanden sein mfaConfiguration existiert
notExists Eigenschaft darf nicht vorhanden sein legacyAuthPolicy existiert nicht
regex Regulaerer Ausdruck displayName passt auf /^PROD-.*/

MITRE ATT&CK-Mapping

Baseline-Regeln können auf das MITRE ATT&CK Framework gemappt werden, sodass Organisationen verstehen können, welche Angriffstechniken ihre Konfigurationen abdecken.

Unterstützte Mappings

Feld Zweck Beispiel
mitreAttackId ATT&CK Technique-Bezeichner T1078 (Valid Accounts)
mitreAttackTactic ATT&CK Tactic-Kategorie Initial Access, Persistence

Coverage-Visualisierung

Der Security Assessment Report (siehe Berichte) umfasst MITRE ATT&CK Coverage-Mapping und zeigt:

  • Welche Techniken durch Baseline-Regeln abgedeckt sind
  • Welche Techniken bestandene vs. fehlgeschlagene Regeln haben
  • Coverage-Lücken, die potenzielle Blind Spots darstellen

Cross-Framework-Mapping

Baseline-Regeln unterstützen das Mapping zu mehreren Compliance-Frameworks gleichzeitig, sodass eine einzelne Regel Anforderungen über mehrere Standards erfüllen kann:

Mapping-Feld Framework Beispiel
isoMapping ISO 27001 / ISO 27002 A.9.4.2 (Sichere Anmeldeverfahren)
nis2Mapping NIS2-Richtlinie Article 21(2)(j) (Multi-Faktor-Authentifizierung)
maesterTestId Maester MT.1001
eidscaControl EIDSCA EIDSCA-AF01

Dieses Cross-Mapping ermöglicht TCM365 die Compliance-Evaluation über mehrere Frameworks aus einem einzigen Baseline-Evaluierungslauf.


Compliance Engine

Der BaselinesService enthält eine Compliance Engine, die Tenant-Snapshots gegen ausgewaehlte Baselines evaluiert.

Evaluierungsablauf

flowchart TD
    A[Snapshot-Daten] --> B[Baseline-Template auswählen]
    B --> C[Für jede Regel im Template]
    C --> D[Resource Type aus Snapshot extrahieren]
    D --> E[Zum settingPath navigieren]
    E --> F[Operator-Vergleich anwenden]
    F --> G[Pass/Fail/Skip-Ergebnis erfassen]
    G --> H[Compliance-Score berechnen]
    H --> I[Compliance-Bericht generieren]

Evaluierungsergebnisse

{
  "baselineId": "cis-m365-l1",
  "baselineName": "CIS Microsoft 365 Level 1",
  "evaluatedAt": "2026-03-05T10:30:00Z",
  "score": 87.5,
  "totalRules": 40,
  "passed": 35,
  "failed": 3,
  "skipped": 2,
  "results": [
    {
      "ruleId": "CIS-M365-1.1.1",
      "ruleName": "MFA für alle Benutzer sicherstellen",
      "status": "passed",
      "actualValue": "enabled",
      "expectedValue": "enabled"
    },
    {
      "ruleId": "CIS-M365-2.3.1",
      "ruleName": "Legacy-Authentifizierung blockieren",
      "status": "failed",
      "actualValue": "allowed",
      "expectedValue": "blocked",
      "remediation": "CA Policy erstellen, die Legacy-Authentifizierungsprotokolle blockiert"
    }
  ]
}

Score-Berechnung

Der Compliance-Score ist ein gewichteter Prozentsatz:

Score = (bestandene_regeln / (gesamt_regeln - uebersprungene_regeln)) * 100

Regeln werden uebersprungen, wenn der erforderliche Resource Type nicht im Snapshot vorhanden ist (z.B. Auswertung von Defender-Regeln gegen einen Snapshot, der keine Defender-Konfigurationen erfasst hat).


API-Endpoints

Methode Endpoint Beschreibung
GET /api/v1/baselines/templates Alle verfügbaren Baseline-Templates auflisten
GET /api/v1/baselines/templates/{id} Template-Details und Regeln abrufen
POST /api/v1/baselines Eigene Baseline erstellen
GET /api/v1/baselines Alle Baselines auflisten (integrierte + eigene)
GET /api/v1/baselines/{id} Baseline-Details abrufen
PUT /api/v1/baselines/{id} Eigene Baseline aktualisieren
DELETE /api/v1/baselines/{id} Eigene Baseline löschen
POST /api/v1/baselines/{id}/evaluate Snapshot gegen Baseline evaluieren
GET /api/v1/baselines/{id}/results Evaluierungsergebnisse abrufen

Eigene Baselines

Organisationen können eigene Baselines erstellen durch:

  1. Von einem Template starten -- Bestehendes Template klonen und Regeln anpassen
  2. Von Grund auf erstellen -- Neue Baseline mit eigenen Regeln erstellen
  3. Templates zusammenfuehren -- Regeln aus mehreren Templates kombinieren

Eigene Baseline erstellen

{
  "name": "Unser Organisations-Sicherheitsstandard",
  "description": "Eigene Baseline, die CIS L1 mit zusätzlichen internen Anforderungen kombiniert",
  "framework": "Custom",
  "vendor": "microsoft",
  "rules": [
    {
      "id": "CUSTOM-001",
      "name": "Mindestens 16-Zeichen-Passwörter erfordern",
      "severity": "high",
      "resourceType": "microsoft.entra.authenticationMethods",
      "settingPath": "passwordPolicy.minimumLength",
      "expectedValue": 16,
      "operator": "greaterThan",
      "remediation": "Entra ID Passwort-Policy aktualisieren für mindestens 16 Zeichen"
    }
  ]
}

Best Practices

  1. Mit CIS Level 1 beginnen -- Bietet eine solide Grundlage ohne uebertriebene Einschränkungen
  2. Baselines schichten -- CIS mit Maester und EIDSCA für umfassende Abdeckung kombinieren
  3. Szenario-Templates nutzen -- Das Szenario-Template wählen, das am nächsten zum Organisationstyp passt
  4. Auf Regulierungen mappen -- Cross-Framework-Mappings für Compliance-Reporting nutzen
  5. Regelmäßig überprüfen -- Eigene Baselines aktualisieren wenn sich Sicherheitsanforderungen ändern
  6. MITRE-Coverage verfolgen -- ATT&CK-Mapping nutzen um Lücken in der Sicherheitslage zu identifizieren
  7. Vor und nach Änderungen evaluieren -- Baseline-Evaluierungen vor und nach Konfigurationsänderungen durchführen um Verbesserungen zu messen