Auditing Warum, Wer und Wann

Warum - Ziele eines Auditing

Die Ziele eines Auditing sind:

  • WER hat etwas geändert ?
    Damit dies funktioniert, sollten natürlich die Ausführenden nicht als "Administrator" arbeiten, sondern persönliche  Konten genutzt werden. (siehe auch Adminkonzept)
  • Was wurde geändert
    Jede Änderung überschreibt einen vorherigen Wert. für die Fehlersuche und Analyse ist es wichtig, welche Daten vorher und hinterher geschrieben wurden. In Verbindung mit Exchange ist es z.B.: schon sehr wichtig, wenn die primäre Mailadresse eines Kontos verändert wird.
  • Wann erfolgte die Änderung ?
    Stellen Sie sich vor ein Anwender scheidet aus und als IT-Abteilung müssen belegen, dass das Konto umgehend deaktiviert wurde. Aber auch wenn ein Kennwort zurückgesetzt wird. Durch die Aufzeichnung des Zeitpunkts ist es aber auch sehr einfach möglich, neu aufgetretene Fehler mit einer Änderung in Verbindung zu bringen.
  • Wo wurde die Änderung durchgeführt
    Gerade größere Netzwerke mit verteilten Servern und Arbeitsplätzen für mehrere Administratoren sind schwer zu überwachen. Daher ist es auch wichtig, von welcher Arbeitsstation auf welchem Server eine Änderung durchgeführt wurde. Oft sind Replikationsverzögerungen im AD Grund für Probleme.
  • Warum wurde etwas geändert
    Sofern ein Produkt die Option erlaubt, einen Kommentar zu hinterlegen, sollte dies auch genutzt werden. Allerdings können Auditing-Systeme, die einfach nur die Änderungen selbst erkennen dem Ausführenden keine Rückfrage stellen. Daher ist eine gewissen Disziplin beim Anwender selbst erforderlich.

Letztlich dient ein Auditing auch dazu, dass der Spruch "Ich hab nichts geändert" so nicht mehr haltbar ist. Dabei darf ein Audit-System nicht als Mittel zur Kontrolle oder Gängelung von Administratoren und IT-Abteilung verstanden werden, sondern kann gerade auch umgekehrt sehr gut belegen, wie eine Abteilung arbeitet und dass die Ursache für einen Fehler wo anders zu suchen ist.

Was ist zu überwachen ?

Es gibt zwei Benutzerkreise, die einem Audit unterworfen werden können

  • Administratoren
    Hier interessiert die Tätigkeit der Administratoren, d.h. wer pflegt und ändert Benutzer, Verteiler und Konfigurationseinstellungen. Hierzu zählen auch Änderungen an Berechtigungen auf Postfächer und Konfigurationsobjekte. In Exchange 2003 und früher hat der Administrator direkt per LDAP die Einträge im AD geändert, so dass eine Überwachung immer nur die Änderungen nachprotokollieren konnte. Die PowerShell von Exchange 2007 hätte eine Protokollierung beim umsetzen erlaubt, aber diese Ansatz ist nicht durchgesetzt worden. Erst Exchange 2010 erlaubt mittels RBAC nicht nur die Protokollierung sondern auch Steuerung von administrativen Aktionen.
  • Anwender
    Der zweite Aspekt betrifft den "Content" im Postfach, z.B. wer öffnet und liest welche Mails, wer hat wann einen Kontakt angelegt oder gelöscht. Zwar entspannt ein Archivsysteme die Lage derart, dass gelöschte Elemente sehr einfach wieder hergestellt werden können, aber allein der "Lesezugriff" auf sensible Daten muss in einigen Bereichen aktiv überwacht werden.
    Exchange 2000 hat diese Funktion über die normale Windows Überwachung (Security Log und Audit-ACLs) bereit gestellt. Allerdings war die Umsetzung nicht komplett: Kaum jemand weiß, wie man Auditeinträge auf Ordner und Mails aktiviert und die Auswertung im Eventlog ist auch nicht besonders einfach.
    Hier sind auch Fehlalarme zu behandeln, die bei Termineinladungen zwangsläufig entstehen. Wenn ich zu einem Termin einlade, dann versucht Outlook im Hintergrund zu den Teilnehmern die Details der Belegt-Zeiten zu erhalten. das führt natürlich zu "Zugriff verboten" Meldungen, die aber der Anwender nicht verhindern kann.

Für jede Gruppe gibt es passende Lösungen und Produkte.

Wie kann überwacht werden ?

Ich unterscheide hier drei Ansätze der Überwachung:

Nach der Ausführung

Gerade im Bereich der Revision ist es erforderlich, zu wissen, wer worauf Berechtigungen hat. Bei den meisten Systemen (und auch bei Windows) ist es kein Problem, ein Verzeichnis auszuwählen und zu dokumentieren, wer auf dieses Verzeichnis berechtigt ist. Aber der umgekehrte Weg ist mit Bordmitteln nicht einfach möglich. Auch im Active Directory ist dies nicht möglich.

Aber es gibt entsprechende Programme, die alle Berechtigungen einer Umgebung auslesen und daraus einen Bericht erstellen. Die meisten dieser Programme erlauben auch die Speicherung eines bestimmten Standes um im Nachhinein auch Veränderungen zu erkennen. Somit ist zumindest mit diesen Hilfsmitteln ein Schnappschuss und Vergleich bestimmter Zeitstände möglich. Allerdings fehlt dabei die Echtzeitüberwachung und die Aufzeichnung mehrere Änderungen am gleichen Objekt zwischen zwei Aufnahmen.

Während der Ausführung

Aus diesem Grund gibt es Programm, die entweder die in Windows eingebauten Überwachungsmechanismen nutzen oder eigene Module einbinden um die Aktivitäten in Echtzeit aufzuzeichnen. Einige der Programme haben hier auch die Möglichkeit, bestimmte Aktionen zu verhindern, weil diese gegen Richtlinien verstoßen. Damit sind sogar Änderungen durch den Administrator blockierbar.

Besonders interessant ist hierbei die Überwachung in Echtzeit, die über entsprechende Alarmierungen auch die Erkennung von Eindringversuchen (z.B. fehlerhafte Anmeldung) oder die versuchte Änderung kritischer Gruppen (z.B. Domänen Administratoren) meldet.

Vor der Ausführung

Eine dritte Variante ergibt sich, wenn das Programm, welches die Änderungen durchführt, selbst die Änderungen protokolliert. Nun ist es so, dass die MMC und viele anderen Zugriffe, z.B.: mit LDIFDE, ADSIEDIT etc. gar nicht entsprechend protokolliert werden. Aber vielen Firmen gehen mehr und mehr dazu über, dass die verschiedenen Veränderungen an Benutzern und Einstellungen nicht mehr direkt über die Administrationswerkzeuge von Microsoft durchgeführt werden, sondern über eigens für die Verwaltung angepasste administrative Programme. Dies können z.B. webbasierte Lösungen sein,  bei denen die ausführenden Personen (die nicht unbedingt Administratoren sein und auch nicht zur IT gehören müssen) in einem Browser die gewünschten Aktionen auswählen und Formulare ausfüllen. Nach dem Absenden kann dann die Webanwendung direkt die Aktionen mit ihren Berechtigungen durchführen oder die Eingaben als Auftrag an andere Personen weiter leiten. So könnte die Personalabteilung das Ausscheiden eines Mitarbeiters eingeben und das Skript setzt das Verfallsdatum des Kontos entsprechend. Zudem kann die Oberfläche entsprechende Hilfen anbieten, die Eingabe anhand von Vorlagen und Auswahlfeldern vereinfachen und nebenbei die Qualität der Daten verbessern.

Sobald ein eigenes anpassbares Programm jedoch letztlich die Änderungen durchführt und niemand mehr direkt per LDAP die Einträge ändern kann, dann kann diese Software ebenfalls ein "Changelog" mitschreiben, Missbrauchsversuche melden und Fehler protokollieren.

Damit ist natürlich nicht zu überwachen, welche Änderungen z.B. eine Softwareinstallation durchführt. Aber die alltäglichen administrativen Veränderungen sind nicht nur protokollierbar, sondern können zudem auf Plausibilität und Gültigkeit überprüft werden. Je nach Umsetzung muss der Anwender selbst gar nicht mehr die erforderlichen Berechtigungen auf den jeweiligen Objekten besitzen, da die Verwaltungsanwendung (z.B. eine ASP-Seite oder ein Serverprozess) die eigentlichen Einstellungen vornimmt. (Siehe auch Provisioning)

Was ist ein Alarm wert ?

Wenn das System nun den Event hat, dann ist das immer noch nicht ausreichend, um Alarm zu schlagen, da es sehr viele "normale" Zugriffe gibt, z.B.:

  • Sekretariat und Stellvertreter
    Es gibt ganz normale gewollte Zugriffe von Benutzern auf fremde Postfächer, z.B. Sekretariate, Teammitglieder etc., die im Eventlog natürlich als Erfolg angezeigt werden.
  • Archivprogramme
    Das Dienstkonto, welches Postfachinhalte archiviert und bei Anforderung wieder herstellt hat meist umfangreiche Rechte auf alle Postfächer und muss in den Events ignoriert werden.
  • Statistische Auswertungsprodukte (z.B. MessageStats)
    Diverse Tools werten die Datenbankinhalte nach Größe, Anzahl etc. statistisch aus, damit die Firma Wachstum, Missbrauch aber auch Daten zur Abrechnung und Sizing erhalten kann.
  • Volltextsuche (Sharepoint, Search Server)
    Beide Produkte erlauben z.B. das Durchsuchen von öffentlichen Ordnern. Auch hier gibt es sicher schützenswerte Ordner, so dass auch dieser Prozess sehr viele Events generiert.
  • Drittprodukte (Blackberry, Goodlink etc.)
    Solche Produkte haben die Aufgabe, die Postfächer der Mitarbeiter auf neue Mails zu überwachen und an die mobilen Geräte zu senden. Dazu nutzen die Produkte meist ein Dienstkonto, welches die entsprechenden Postfächer lesen darf. im Log tauchen entsprechend viele "erfolgreich"-Meldungen eines fremden Benutzer auf, welche ausgefiltert werden müssen, solange die "richtigen" Postfächer gelesen werden
  • Free/Busy
    Wenn sie mit Outlook eine Terminplanung mit anderen Teilnehmern machen, dann liest ihr Outlook nicht nur die Frei/Belegt-Zeiten im öffentlichen Ordner, um die Belegung farblich darzustellen, sondern Outlook "versucht" auch den Kalender der Teilnehmer direkt zu lesen. Wenn ihm das gelingt, dann Zeit Outlook auch die Details zu den Frei/Belegt-Zeiten an. Schon haben wir bei vielen Postfächern einen "unerlaubten Zugriff"

Sie sehen also, dass es gar nicht so einfach ist, von einem "fehlgeschlagenen Zugriff" auf einen möglichen Vertrauensbruch zu schließen.