Mit der Splunk-Integration von PowerDMARC können Sie Ihre E-Mail-Authentifizierungs- und Domänensicherheitsdaten nahtlos direkt in Ihrer Splunk-Umgebung erfassen und überwachen. Durch die Nutzung der PowerDMARC-API können Unternehmen eine optimierte SIEM-Integration ohne komplexe Konfigurationen aufbauen – einfach verbinden, ausführen und einen zentralen Überblick über ihre E-Mail-Sicherheit in allen Domänen erhalten.
Der Leitfaden konzentriert sich bewusst auf die Einrichtung und Erfassung. Splunk-Dashboards und erweiterte Visualisierungen sind nicht Gegenstand dieses Dokuments.
API-Dokumentation
Swagger-Dokumentation: https://app.powerdmarc.com/swagger-ui/index.html
Alternative Dokumentation: https://api.powerdmarc.com/
Hinweis: Die Namenskonventionen sind nicht auf die in dieser Dokumentation genannten beschränkt.
Architekturübersicht
In diesem Beispiel verwenden wir den Audit-Protokoll-Endpunkt zu Testzwecken und zur Veranschaulichung.
PowerDMARC API
↓
Python-Skript (über cron/Task Scheduler geplant)
↓
Splunk HTTP-Ereignissammler (HEC)
↓
Splunk (Suche, Dashboards, Warnmeldungen, Korrelation)
Splunk empfängt Daten über seinen HTTP Event Collector (HEC)-Endpunkt, der eine sichere Datenerfassung aus externen Quellen ermöglicht.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:
Splunk Enterprise oder Splunk Cloud mit Administratorzugriff
Erlaubnis zu:
HTTP-Ereignissammler-Token (HEC) erstellen
Indizes erstellen
Dateneingaben konfigurieren
Python 3.7+ auf dem System installiert, auf dem das Integrationsskript ausgeführt wird
PowerDMARC API-Bearer-Token mit Berechtigung zum Zugriff auf Audit-Protokolle
Netzwerkverbindung von der Skript-Ausführungsumgebung zu:
PowerDMARC-API (https://app.powerdmarc.com)
Splunk HEC-Endpunkt
Splunk-Konfiguration
Schritt 1: Erstellen Sie einen dedizierten Index
Navigieren Sie zu Einstellungen → Indizes
Klicken Sie auf Neuer Index
Konfigurieren:
Indexname: powerdmarc
Indexdatentyp: Ereignisse
App: Suche (oder Ihre bevorzugte App)
Behalten Sie die anderen Einstellungen unverändert bei oder passen Sie sie entsprechend den Aufbewahrungsanforderungen an.
Klicken Sie auf . Speichern
Schritt 2: HTTP-Ereignissammler (HEC) aktivieren
Navigieren Sie zu Einstellungen → Dateneingaben
Klicken Sie auf HTTP-Ereignissammler
Klicken Sie auf Globale Einstellungen
Konfigurieren:
Alle Tokens: Aktiviert
SSL aktivieren: Aktiviert (empfohlen)
HTTP-Portnummer: 8088 (Standard)
Klicken Sie auf . Speichern
Schritt 3: HEC-Token erstellen
Weiterhin in Einstellungen → Dateneingaben → HTTP-Ereignissammler
Klicken Sie auf Neues Token
Token-Einstellungen konfigurieren:
Name: PowerDMARC_Integration
Quellennamen überschreiben: powerdmarc:api
Beschreibung: Token für die Erfassung von PowerDMARC-Auditprotokollen
Klicken Sie Weiter
Eingabeeinstellungen:
Quelltyp: Auswählen Automatisch
Index: Auswählen powerdmarc (oder verfügbare Indizes einschließlich powerdmarc)
Standardindex: powerdmarc
Klicken Sie Bewertung
Klicken Absenden
Wichtig: Kopieren Sie den Token-Wert sofort und speichern Sie ihn (Sie können ihn später nicht mehr abrufen).
Einrichtung des Integrationsskripts
Schritt 4: Python-Umgebung vorbereiten
Option A: Online-Installation (empfohlen)
Installieren Sie die erforderlichen Python-Bibliotheken von PyPI (erfordert eine Internetverbindung):
pip installieren Anfragen
Oder verwenden Sie die mitgelieferte requirements.txt Datei:
pip install -r Anforderungen.txt
Option B: Offline-Installation
Für Umgebungen ohne Internetzugang verwenden Sie die mitgelieferte Datei requirements.txt .
Pakete auf einem Computer mit Internetzugang herunterladen:
pip download -r requirements.txt -d ./packages
Übertragen Sie die Pakete in das Zielsystem und installieren Sie dann:
pip install --no-index --find-links=./packages -r requirements.txt
Installation überprüfen:
python3 -c "import requests; print(f'requests version: {requests.__version__}')"
Erwartete Ausgabe: Anfragen Version: 2.31.0 (oder ähnlich)
Schritt 5: Erstellen Sie das Integrationsskript
Erstellen powerdmarc_to_splunk.py und fügen Sie den Code aus powerdmarc_to_splunk.txt ein.
Schritt 6: Konfigurieren Sie das Skript
Bearbeiten Sie die powerdmarc_to_splunk.py und aktualisieren Sie sie:
POWERDMARC_API_TOKEN: Ihr PowerDMARC-API-Bearer-Token
SPLUNK_HEC_URL: Ihr Splunk HEC-Endpunkt
Format: https://your-splunk-instance:8088/services/collector/event
For Splunk Cloud: https://input-<your-instance>.cloud.splunk.com:8088/services/collector/event
SPLUNK_HEC_TOKEN: Das in Schritt 3 erstellte HEC-Token
SPLUNK_INDEX: powerdmarc (oder der von Ihnen gewählte Indexname)
DAYS_TO_FETCH: Anzahl der Tage, für die historische Daten abgerufen werden sollen (Standard: 1)
Schritt 7: Testen Sie das Skript
Führen Sie das Skript manuell aus, um die Konnektivität und die Datenerfassung zu überprüfen:
Python 3 powerdmarc_to_splunk.py
Erwartete Leistung:
============================================================
PowerDMARC-Integration in Splunk
============================================================
Abrufen PowerDMARC-Protokolle vom 03.01.2025, 00:00:00 Uhr bis zum 04.01.2025, 00:00:00 Uhr abrufen...
15 Audit-Protokolleinträge erfolgreich abgerufen
15 Ereignisse an Splunk senden...
Zusammenfassung der Einnahme:
Erfolgreich gesendet: 15
Fehlgeschlagen: 0
Gesamt: 15
============================================================
Integration erfolgreich abgeschlossen
============================================================
Automatische Ausführung planen
Für Linux/Unix (cron)
crontab bearbeiten:
crontab -e
Eintrag hinzufügen, um stündlich auszuführen:
0 * * * * /usr/bin/python3 /path/to/powerdmarc_to_splunk.py >> /var/log/powerdmarc_splunk.log 2>&1
Oder alle 15 Minuten ausführen:
*/15 * * * * /usr/bin/python3 /path/to/powerdmarc_to_splunk.py >> /var/log/powerdmarc_splunk.log 2>&1
Für Windows (Taskplaner)
Öffnen Taskplaner
Klicken Aufgabe erstellen
Konfigurieren:
Name: PowerDMARC Splunk-Integration
Beschreibung: Geplante Erfassung von PowerDMARC-Auditprotokollen
Sicherheitsoptionen: Ausführen, unabhängig davon, ob der Benutzer angemeldet ist oder nicht
Registerkarte „Trigger“: Klicken Sie auf Neu
Beginn: Nach Zeitplan
Einstellungen: Täglich, alle 1 Stunde wiederholen
Registerkarte „Aktionen“: Klicken Sie auf Neu
Aktion: Programm starten
Programm: python.exe
Argumente: C:\Pfad\zu\powerdmarc_to_splunk.py
Klicken Sie OK
Datenaufnahme in Splunk validieren
Schritt 8: Daten in Splunk überprüfen
Navigieren Sie zu Suche & Berichterstattung App
Führen Sie die folgende SPL-Abfrage aus:
index=powerdmarc Quelltyp=powerdmarc:auditlog
| sortieren - _Zeit
| Kopf 20
| Tabelle _time, user_name, action, ip_address, Erstellungszeitpunkt
Erwartete Ergebnisse
Sie sollten Audit-Protokolleinträge mit Feldern wie den folgenden sehen:
Benutzername: Benutzer, der die Aktion durchgeführt hat
Aktion: Beschreibung der durchgeführten Aktion
ip_address: IP-Adresse des Benutzers
created_at: Zeitstempel des Audit-Ereignisses
Beispiel für eine Veranstaltungsstruktur
{
"Benutzername": "John Doe",
„action“: „Angehängte Domains aktualisiert“,
„ip_address“: „12.111.67.123“,
„a_username“: null,
„Sonstiges“: null,
„created_at”: „2025-01-04 14:29:24”
}
Fehlerbehebung
Häufige Probleme
Problem: In Splunk werden keine Daten angezeigt.
Überprüfen Sie, ob das HEC-Token korrekt und aktiviert ist.
Überprüfen Sie, ob die HEC-Endpunkt-URL zugänglich ist.
Index überprüfen powerdmarc existiert und ist zugänglich
Überprüfen Sie die Firewall-Regeln, um ausgehende HTTPS-Verbindungen zu Splunk zuzulassen.
Überprüfen Sie die Protokolle zur Skriptausführung auf Fehler.
Problem: SSL-Zertifikatsfehler
Für selbstsignierte Zertifikate setzen Sie verify=False im Skript ein (nicht für die Produktion empfohlen).
Oder installieren Sie geeignete SSL-Zertifikate auf Splunk.
Problem: Fehler bei der PowerDMARC-API-Authentifizierung
Überprüfen Sie, ob das API-Token gültig ist und über die richtigen Berechtigungen verfügt.
Überprüfen Sie, ob das Token noch gültig ist.
Überprüfen Sie, ob die API-Endpunkt-URL korrekt ist.
Problem: Skript wird ausgeführt, aber es werden keine Protokolle abgerufen.
Überprüfen Sie die Zeitbereichsparameter.
Überprüfen Sie, ob für den angegebenen Zeitraum Audit-Protokolle vorhanden sind.
Überprüfen Sie die PowerDMARC-API-Dokumentation hinsichtlich des Parameterformats.
Nächste Schritte
An dieser Stelle:
PowerDMARC-Auditprotokolle werden erfolgreich in Splunk übernommen.
Sie können jetzt:
Erstellen Sie benutzerdefinierte Dashboards zur Visualisierung
Benachrichtigungen für bestimmte Audit-Ereignisse einrichten
PowerDMARC-Daten mit anderen Sicherheitsprotokollen korrelieren
Erstellen Sie Berichte für die Überwachung der Compliance und Sicherheit.
Nutzen Sie die Analysefunktionen von Splunk zur Erkennung von Bedrohungen.
Empfohlene Verbesserungen
Zusätzliche API-Endpunkte hinzufügen: Erweitern Sie das Skript, um DMARC-Aggregatberichte, forensische Berichte oder Domain-Daten abzurufen.
Checkpoint-Logik implementieren: Speichern Sie den Zeitstempel des letzten erfolgreichen Durchlaufs, um doppelte Erfassungen zu vermeiden.
Protokollierung hinzufügen: Implementieren Sie eine ordnungsgemäße Protokollierung mit Rotation für Produktionsumgebungen.
Fehlerbenachrichtigungen: Konfigurieren Sie E-Mail- oder Slack-Benachrichtigungen bei Skriptfehlern.
Als Splunk-Add-on bereitstellen: Packen Sie die Integration als Splunk TA (Technology Add-on) für eine einfachere Bereitstellung.
Sicherheitsaspekte
Speichern Sie Anmeldedaten sicher: Verwenden Sie Umgebungsvariablen oder verschlüsselte Konfigurationsdateien.
SSL-Überprüfung aktivieren: Immer verwenden verify=True für Produktionsumgebungen
API-Token regelmäßig rotieren: Befolgen Sie bewährte Sicherheitsverfahren für die Verwaltung von Anmeldedaten.
HEC-Token-Berechtigungen einschränken: Auf bestimmte Indizes und Quelltypen beschränken
Überwachen Sie die Skriptausführung: Richten Sie Warnmeldungen für fehlgeschlagene Ausführungen oder Anomalien ein.
Überprüfen Sie die Zugriffskontrollen von Splunk: Stellen Sie sicher, dass nur autorisierte Benutzer auf PowerDMARC-Daten zugreifen können.
Support und Ressourcen
PowerDMARC API-Dokumentation: https://api.powerdmarc.com/
Splunk HEC-Dokumentation: https://docs.splunk.com/Documentation/Splunk/latest/Data/UsetheHTTPEventCollector
Splunk Antworten: https://community.splunk.com/