Zum Hauptinhalt springen

Die Integrität des Audit-Protokolls untersuchen

Prüfe die Audit-Kette, beachte die Grenzen der Prüfung und sichere Nachweise bei einem Fehler.

4 Min. Lesezeit

Nutze diese Anleitung, wenn Ketten-Integrität einen Bruch meldet oder du eine Benachrichtigung zur Audit-Integrität erhältst. Für den beschriebenen Weg durch die Einstellungen brauchst du ein Admin- oder Inhaberkonto. Ziehe für die Untersuchung der Datenbank den Betreiber deiner Installation hinzu.

Den geprüften Bereich feststellen

  1. Öffne Einstellungen > Richtlinien > Protokolle und suche Ketten-Integrität.
  2. Notiere Status und Zeitpunkt der letzten automatischen Prüfung. Noch nicht geprüft bedeutet, dass noch kein Ergebnis vorliegt; es bestätigt keine erfolgreiche Prüfung.
  3. Wähle Jetzt prüfen. Das Ergebnis nennt die Zahl der geprüften Einträge. Ein Aufruf prüft höchstens 1.000 Einträge ab dem Anfang der noch vorhandenen Kette.
  4. Ist das Ergebnis unvollständig, bitte den Betreiber, den restlichen Bereich zu prüfen. Ein erneuter Klick beginnt wieder am selben Anfang. Eine fehlerfreie erste Seite belegt nicht die Integrität des gesamten Verlaufs.

Das Ergebnis dieses Aufrufs und der Status der geplanten Prüfung sind getrennt. Jetzt prüfen aktualisiert den Zeitpunkt der letzten automatischen Prüfung nicht.

Verstehen, was die Prüfung abdeckt

Das aktuelle PostgreSQL-Backend prüft den SHA-256-Hash jedes noch vorhandenen, nicht bereinigten Audit-Eintrags und die Verknüpfungen zwischen den Einträgen. Die erste erhaltene Zeile liefert den Ausgangswert. So lassen sich viele Änderungen innerhalb der Kette erkennen. Die Prüfung liefert jedoch keinen unabhängig signierten Nachweis aller früheren Daten.

Ein Eintrag wird wenige Sekunden nach dem Schreiben in die Kette aufgenommen. Das Backend speichert ihn zusammen mit der Änderung, die er festhält, und überlässt das Hashen einem Worker. Dieser nimmt wartende Einträge stapelweise auf, in der Reihenfolge, in der er sie erreicht. Diese Reihenfolge bestimmt die Kette, nicht der Zeitpunkt des Ereignisses: Ein Eintrag, dessen Änderung spät bestätigt wurde, kann auf Einträge mit einem späteren Zeitpunkt folgen. Jetzt prüfen nimmt zuerst die wartenden Einträge auf. Was während der Prüfung geschrieben wird, erscheint als noch nicht in der Kette und wird bei der nächsten Prüfung erfasst. Bleiben Einträge länger als ein paar Minuten außerhalb der Kette, nimmt kein Worker sie auf: Prüfe, ob der Worker läuft. Die tägliche Prüfung protokolliert, wie viele Einträge warten und seit wann.

Die Aufbewahrungsregel kann den Anfang der Kette entfernen. Die geplante Prüfung setzt an ihrem gespeicherten Fortschritt fort. Wurde dieser Ausgangspunkt regulär durch die Aufbewahrung gelöscht, beginnt sie bei der ersten erhaltenen Verknüpfung. Fehlt ein Ausgangspunkt innerhalb des Aufbewahrungszeitraums, wird das nicht auf diese Weise akzeptiert.

Bei Einträgen, deren personenbezogene Inhalte gelöscht wurden, prüft das Backend die Verknüpfung, ohne den Hash aus den gelöschten Inhalten neu zu berechnen. Es zählt außerdem bereinigte Zeilen ohne passenden Löschantrag. Untersuche eine solche Warnung anhand der Löschvorgänge. Das aktuelle Backend prüft keine HMAC-signierten Prüfpunkte; ein Audit-Signaturschlüssel behebt diese Befunde nicht.

Einen Fehler dokumentieren

Bei einem abweichenden Hash oder einer fehlerhaften Verknüpfung zeigt das Panel Ketten-Integrität verletzt, die Eintrags-ID, den Zeitpunkt sowie Erwarteter Hash und Gespeicherter Hash. Über Diesen Eintrag öffnen untersuchst du das Ereignis.

  1. Sichere den Befund zusammen mit Organisation, Eintrags-ID, Zeitpunkt und bereitgestellter Version. Übernimm die Werte unverändert.
  2. Bewahre vor Reparaturen Datenbank-Snapshots sowie relevante Deployment-, Zugriffs- und Backup-Protokolle auf. Beschränke den Zugriff auf Kopien mit personenbezogenen Daten.
  3. Vergleiche den Zeitpunkt mit Aufbewahrung, Löschung, Wiederherstellung und Wartung. Zeitliche Nähe ist ein Ermittlungsansatz, kein Beweis für einen harmlosen Fehler.
  4. Folge deinem Ablauf für Sicherheitsvorfälle, wenn der Befund ungeklärt bleibt. Ändere oder lösche die betroffene Zeile nicht, nur damit die Prüfung erfolgreich wird.

Die Anleitung zu Audit-Protokollen erklärt Felder und Export. Ein gefilterter Export mit Zeilenlimit ist weder ein vollständiges Backup noch zwingend eine vollständige Kette.

Die geplante Prüfung verfolgen

Ein täglicher Job prüft Organisationen mit Audit-Einträgen schrittweise. Ein erkannter Hash-Bruch aktiviert eine Integritätswarnung und benachrichtigt die Admins der Organisation. Wiederholte Prüfungen führen für denselben Befund nicht zu doppelten Benachrichtigungen. Ein veränderter Befund kann eine neue auslösen.

Prüfe nach Reparatur oder Wiederherstellung, ob der betroffene Bereich wieder gültig ist. Eine anschließende erfolgreiche geplante Prüfung hebt die aktive Warnung auf. Einem Kollegen den Fehler zu erklären oder eine Benachrichtigung zu schließen repariert die Kette nicht.

Weitere Schutzmaßnahmen findest du unter Härtung. Welche alten Nachweise entfernt werden, regelt die Aufbewahrung.