15. März 2011

Überwachung von Datenbanken mittels Lösungsansatz Audit Warehouse implementieren

Derzeit ist viel Bewegung in der IT-Sicherheit zu erkennen. Durch die Novelle II des Bundesdatenschutzgesetzes (BDSG) vom 1.9.2009 sehen sich die Sicherheitsbeauftragten zum Handeln veranlasst und versuchen die Änderungen des BDSG in die Unternehmensabläufe zu integrieren. Eine Maßnahme, die auch im Zusammenhang mit ISO 27001 steht, ist die Erkennung von Einbrüchen bzw. Einbruchsversuchen, sowie die Überwachung der Zugriffe auf sensible personenbezogene Daten. Wie löst man nun diese Herausforderung? Die Antwort ist Transparenzschaffung und dann gezielte Kontrolle der bereits umgesetzten  Sicherheitsmaßnahmen. Gerade in Anbetracht der strengeren Regularien sollten jetzt vollständige Lösungen implementiert werden. In diesem Artikel wird ein Lösungsansatz beschrieben, der mit Standard-Technologien eine optimale Überwachung durch gezieltes Reporting realisiert.
 
Einleitung
Die Lösung der Überwachung ist die Idee der Transparenzschaffung aller Aktivitäten in den IT Komponenten in einer Unternehmung/Behörde und somit die Schaffung einer Grundlage zur besseren Kontrolle. 
Abbildung 1: Überwachung durch gezielte Protokollierung und Reporting
Die Abbildung 1 zeigt eine funktionale Architektur einer Vision für das unternehmensweite Protokollieren der gesamten IT-Anwendungslandschaft. Unternehmungen, die solch eine Vision bereits umgesetzt haben, sind heute bestens gerüstet und haben ihre IT-Landschaft auch in Bezug auf Sicherheit und BDSG voll im Griff.
Der Weg einer vollständigen Umsetzung dieser Vision sollte nicht in einem Projektschritt umgesetzt werden. Es empfiehlt sich die genannte Vision zu entwickeln. Ein erster Schritt ist ein unternehmensweites Protokollieren für die Speicherorte der personenbezogenen Daten – den Datenbanken. Für die Überwachung und Protokollierung der Datenbank-Infrastruktur können Oracle Standard-Technologien genutzt werden, die zu schnellen Erfolgen führen und Unternehmungen eine bessere Transparenz, Kontrolle und mehr Sicherheit mit dem Umgang von personenbezogenen Daten ermöglichen.
Oracle Audit Vault bietet eine Out-of-the-Box Lösung für gängige Datenbanken (Oracle, Microsoft, IBM und Sybase). Eine zentrale Einstellung der Protokollierungspolicies, ein revisionssicheres Repository (durch Datenbankmitteln (Database Vault, Verschlüsselung mittels Advanced Security Option u.a.) gehärtete Oracle Datenbank) für die Protokolldaten, entsprechende Agenten zum Sammeln der Protokolldaten und eine Weboberfläche (Oracle Application Express - APEX) für das Reporting stehen zur Verfügung.
 
1. Einrichtung der Überwachung von Datenbanken mittels Oracle Audit Vault
Als erstes wird die Serverkomponente von Oracle Audit Vault installiert, dann werden auf den entsprechenden zu überwachenden Datenbank Servern die Audit Vault Collection Agents installiert. Das genaue Vorgehen der Installation ist in den Installation Guides für Audit Vault beschrieben.
 
Hinweis:
Oracle Audit Vault Server Installation (z.B. auf LINUX X86):
http://download.oracle.com/docs/cd/E14472_01/doc.102/e14458/toc.htm
Oracle Audit Vault Collection Agent Installation:
http://download.oracle.com/docs/cd/E14472_01/doc.102/e14457/toc.htm 

Nun werden die zu überwachenden Datenbanken in die zentrale Überwachung von Audit Vault aufgenommen. Hierzu sind folgende Schritte notwendig:
  • Registrierung der Datenbanken am Audit Vault Server
  • Starten der Agenten
  • Übernahme der Auditeinstellung aus den Datenbanken, Anpassung und Zurückspielung (Provisioning).
  • Weitere Einstellungen wie Alerting sind möglich (siehe Admin-Guide).
Somit ist die erste Überwachungsinstanz lauffähig und überwacht alle angebundenen Datenbanken lt. eingestellten Protokollierungspolicies. Alle überwachten Aktivitäten werden nahezu in Echtzeit im revisionssicheren Audit Repository abgelegt. 
Abbildung 2: Oracle Audit Vault zur Sammlung von DB Aktivitäten
 
Hinweis:
Standardmäßig ist bei Audit Vault bereits ein komplettes Reporting auf Basis APEX enthalten.
Ein kurzes Einführungs-Viewlet steht im Internet zur Verfügung:
http://www.oracle.com/technology/products/audit-vault/index.html
Für die Verwaltung und das Reporting steht eine Weboberfläche zur Verfügung, die alle protokollierten DB-Aktivitäten visualisiert und den ersten Schritt in Richtung Kontrolle darstellt. Die Oberfläche und das Reporting ist mittels APEX Funktionalität umgesetzt und bietet im Look-and-Feel von APEX umfangreiche Möglichkeiten.
Abbildung 3: Oracle Audit Vault (10.2.3.1) Admin und Reports Web-Oberfläche
 Ein komfortables Business Intelligence (BI) Reporting mit Drill-Down, Slice and Dice, beliebige Ausgabeformate der Reports, Dashboards etc. bietet Oracle Audit Vault nur indirekt. Das Auditdata Warehouse – also das revisionssichere Repository – basiert auf einem fertig-modellierten Star-Schema, welches automatisiert befüllt wird. Auf dieses Star-Schema können beliebige BI-Lösungen aufsetzen, um die Möglichkeiten im Reporting wie z.B. das Korrellieren von verschiedenen Datenquellen und Usability zu erhöhen. Eine BI Lösung schafft mehr Kontrolle in der nun vorhandenen Protokollierungs-Transparenz durch die Komfortabilität und Flexibilität im Umgang mit Daten.
Hinweis:
Das Oracle Audit Vault Data Warehouse Schema als Star-Schema mit 9 Dimensionen: http://download.oracle.com/docs/cd/E14472_01/doc.102/e14460/avusr_app_dwschema.htm#CACFEHHF
 
Nun liegt es nahe, die DB-Überwachung um eine BI Lösung zu erweitern. Gerade im Hinblick auf die Überwachungsvision (Abbildung 1) der kompletten Anwendungslandschaft ist dieser Schritt entscheidend.
Abbildung 4: DB Überwachung mit BI Tools
 
2. Erweiterung der DB Überwachung durch eine komfortable BI Lösung
Ziel der Erweiterung durch eine BI Lösung (hier Oracle BI Standard Edition One unter Windows) ist es, eine komfortable und flexible Umgebung für den End-Benutzer zu schaffen. Die Installation der BI Lösung ist relativ einfach und wird durch den Oracle Installer voll unterstützt.

Hinweis:
Komplette Dokumentation der Oracle BI Standard Edition One: http://download.oracle.com/docs/cd/E10352_01/welcome.html

Installation Guide: http://download.oracle.com/docs/cd/E10352_01/doc/bi.1013/e10270/toc.htm

Nach der Installation muss die Verbindung zum Audidata Warehouse des Audit Vaults konfiguriert werden. Hierfür wird der BI Administrator genutzt. Zuerst wird eine Verbindung zum physikalischen Schema des Audit Vault Data Warehouse hergestellt. Das privilegierte Schema heisst AVAUDITOR, welches den Zugriff auf die physischen Objekte im Schema AVSYS hat.
Abbildung 5: Connect-Pool zur Anbindung des Audit Vault Warehouse
Ist die Verbindung zum physikalischen DB Layer hergestellt, erfolgt die Überführung des physischen Datenmodells in das gewünschte Präsentations Modell. Mittels Drag & Drop werden alle wichtigen Tabellen in das „Business Model (Semantic Layer)“ transformiert.

Hinweis:
Orientieren Sie sich bei der Übernahme der physischen Tabellen an das AV Star-Schema. Siehe Dokumentation:
http://download.oracle.com/docs/cd/E14472_01/doc.102/e14460/avusr_app_dwschema.htm#CHDJFFIG  

In dem Business Modell müssen nun noch die Drillpfade, die sogenannten Dimensionen, erstellt werden. Hierfür orientiert man sich am vorgegebenen Star-Schema in der Audit Vault Dokumentation. Beispiel:
  • Auswahl des Objektes Target
  • Rechte Maustaste klicken, „Create Dimension“ ausführen
  • Auswahl bestätigen.
Sind alle Objekte und Dimensionen (Drill-Pfade) in dem Business Modell erstellt, kann man das komplette Business Modell (hier „AuditVault“) in den Presentation Layer überführen. Man zieht das Business Modell „AuditVault“ in den Presentation Layer Bereich (per Drag & Drop) und kreiert somit den Presentation Layer.
Abbildung 6: Drill-Pfade erstellen mittels „Create Dimension“
 Nun sind alle drei Modelle, nämlich das physikalische Modell, das Business Modell und der Präsentations Modell, dem BI Server bekannt (siehe Abbildung 7).
Abbildung 7: BI Modelle mit dem BI Administrator erstellen
 
Mit BI Answers werden die Abfragen erstellt und später im Dashboard dargestellt. Die Erstellung der Abfragen wird über die Web-Oberfläche grafisch unterstützt (BI Answers). Auf der linken Seite von BI Answers findet man nun den erzeugten Presentation Layer. Um eine geeignete Abfrage zu erstellen, zieht man die Datenspalten der Dimensionen in den Kriterienbereich (per Drag & Drop) und definiert geeignete Filter. Beispiel für eine Abfrage aller Daten-Änderungen seit gestern (siehe Abbildung 8):
  • Per Drag & Drop folgende Datenspalten übernehmen:
    Aus der Dimension „Source“ → „Source Name“ übernehmen
    Aus der Dimension „Event“ → „Event Name“ und „Event Status“ übernehmen
    Aus der Dimension „User“ → „User Name“ und „OS Username“ übernehmen
    Aus der Dimension „Time“ → „Day“ übernehmen
    Aus der Fakt-Tabelle „Audit Event Fact“ → „Sql Text Str“ übernehmen
  • Die Abfrage wird mittels Filter eingeschränkt:
    Category Name = DATA ACCESS and TIME.Day >= CURRENT_DATE -1
Abbildung 8: Reports/Abfragen mit BI Answers per Drag & drop erstellen
Die Erstellung dieser Abfrage dauert ungefähr eine Minute und gibt als Ergebnis alle Datenänderungen, die seit gestern durchgeführt wurden, aus. Die Abfrage wird abgespeichert und später zur Anzeige in das Dashboard übernommen. Es können beliebige Dashboards zur Darstellung gebracht werden, in denen die gespeicherten Answers Abfragen einfach eingebunden werden.

Hinweis:
Die Benutzung von BI Answers, Dashboards etc. sind im User Guide beschrieben:
http://download.oracle.com/docs/cd/B40078_02/doc/bi.1013/b31767.pdf   

Für die Erstellung der Abfragen orientiert man sich am besten am Audit Vault Reporting und kann natürlich beliebige eigene Abfragen in das Dashboard einbinden. Das hier vorgestellte Überwachungs-Dashboard beinhaltet z.B. Abfragen, die eventuelle Attacken wie „Brute Force Attacken“, „SQLInjections“ oder „Installation eines Root-Kits“ aufzeigt. Die nachfolgende Abbildung zeigt, wie solch ein Überwachungsdashboard aussehen könnte.
Abbildung 9: Überwachungs-Dashboard
Natürlich können auch Reports, die mit dem BI Publisher erstellt wurden, integriert werden. Das BI Dashboard sieht einen direkten Aufruf von BI Publisher Reports vor. Die Idee ist, dass Dokumente, die Auskunft über den Zustand der Anwendungslandschaft geben, direkt eingebunden werden. In der Regel wird diese Art der Dokumentation durch Sicherheitskonzepte oder aber auch bei eventuellen Audits z.B. nach PCI DSS oder ISO 27001 gefordert. Mit dem BI Publisher hat man die Möglichkeit geforderte Reports einfach zu erstellen und in sein eigenes Überwachungs-Dashboard aufzunehmen.
Abbildung 10: Einbindung eines BI Publisher Reports zum IT-Grundschutz
Audit Vault und BI schaffen eine sehr gute Plattform für die Überwachung aller Datenbanken. Es können alle Aktivitäten überwacht werden, die von beliebigen Datenbank-Benutzern ausgeführt wurden. Was an dieser Stelle fehlt, ist das Wissen über die Datenbank-Benutzer. Welche Identität steckt hinter diesen Benutzern und welche Berechtigung haben diese Benutzer und warum? Diese Fragen lassen sich durch die Integration einer Identity Management Lösung beantworten. Oracle bietet mit dem Oracle Identity Manager die Möglichkeit zur zentralen Administration von Datenbank-Benutzern „CUA4DB (centralized User Administration for DBs)“ an. Um die Überwachung vollständig zu machen, läßt sich der Oracle Identity Manager (CUA4DB) in die Überwachungslösung aufnehmen.
Hinweis:
CUA4DB ist ein von Oracle Consulting entwickeltes Konzept auf Basis des Oracle Identity Managers.
 
3. Erweiterung der DB Überwachung durch den Oracle Identity Manager
Der Oracle Identity Manager als zentrales Tool zur Berechtigungs- und Identitätsvergabe bringt zusätzliche Transparenz und somit erhöhte Kontrolle. Der Oracle Identity Manager wird nach den Vorgaben des Installation Guides installiert. Im Standard enthalten ist der Oracle WebLogic Server, aber auch Application Server wie JBoss werden unterstützt.
Hinweis:
Die komplette Dokumentations wie auch die Installations Guide findet man hier:
http://download.oracle.com/docs/cd/E14049_01/index.htm  
Nach der Installation muss der Datenbank Connector in den Oracle Identity Manager deployed werden. Mit dem Deployment stehen Funktionen zum Provisioing (eingestellte Berechtigungen in den Zielsystemen anlegen) und zur Reconciliation (bestehende Berechtigungen in das Identity Repository überführen) zur Verfügung.
Hinweis:
Deployment Guide für den Datenbank Connector:

http://download.oracle.com/docs/cd/E11223_01/doc.904/e10425/toc.htm
Zur Vereinfachung der Konfiguration von Datenbank-Resourcen (u.U. sind mehrere hundert Instancen vorhanden) hat Oracle Sales Consulting ein kleines Parser-Tool entwickelt. Der TNSNames-Parser kann zur Verfügung gestellt werden und liest alle notwendigen Daten aus der TNSNAMES.ORA Datei und erstellt auf Basis dieser Information die komplette Konfiguration der Datenbank-Resourcen im Identity Manager. Somit ist die Installation und Konfiguration des Identity Managers als zentrale Berechtigungs-Verwaltung für Datenbanken sehr schnell und einfach umsetzbar.
Im nächsten Schritt müssen die Identitäten - die tatsächlichen Personen im Identity Repository - bekannt gemacht werden. Mittels einer CSV-Datei als Quelle kann diese Information leicht in das Repository importiert werden. Nun werden alle Berechtigungen aus den Datenbanken in das Identity Repository überführt. Hierfür wird für jede Datenbank ein Reconciliation Task angestossen.
Abbildung 11: Berechtigungen in das Identity Repository überführen mittels Reconciliation

Sind die USERIDs der Datenbank-Benutzer nicht identisch mit den User-IDs, die im Identity Repository hinterlegt sind, können sie manuell oder über Regeln den richtigen Identitäten zugeordnet werden. Die WebConsole des Identity Managers unterstützt diesen Zuordnungsvorgang, wie in Abbildung 12 dargestellt ist.
Abbildung 12: Manuelle Zuordnung von DB-Account zu Identitäten
Somit liefert der Oracle Identity Manager in kurzer Zeit Transparenz über die aktuellen Berechtigungen in den Datenbanken. Das nachfolgende Beispiel zeigt alle Datenbank Resourcen, auf die Carsten Muetzlitz zugriffsberechtigt ist.
Abbildung 13: Alle DB Resourcen von Hr. Mützlitz
Auf Basis dieser Information liefert der Oracle Identity Manager weitere Benefits zur Erhöhung der Kontrolle und Sicherheit wie kontrollierte und automatisierte Provisionierung von Berechtigungen, erhöhte Kontrolle der Rechtevergabe durch implementierte Logik, Segregation of Duties (Aufgabentrennung), Self-Services, Delegierte Administration, Workflows für Genehmigungen, Berechtigungsanforderungen via Self-Services, Kennwort-Synchronisation, Berechtigungsrezertifizierung, zentrales Entziehen von Berechtigungen (manuell oder Prozess-gesteuert) und einiges mehr. Ein weiteres Benefit für das Überwachungsdashboard sind die fertigen BI Publisher Reports, die sofort integriert werden können.
Abbildung 14: Identity Manager Reports im Überwachungsdashboard
Diese Reports schaffen zusätzliche Transparenz und geben Antworten auf die Fragen nach der tatsächlichen Identität und warum die Identität die aktuellen Berechtigungen in der entsprechenden Datenbank besitzt.

Zusammenfassung und Fazit
Aus den vorgestellten Technologie-Komponenten implementierten wir in diesem Beitrag eine Überwachung der Datenbank-Infrastruktur als Teil der Protokollierungs-Vision.
·         Oracle Audit Vault
Out-of-the-Box Data Warehouse Star-Modell für die Anbindung an eine BI Auswertung und Reporting. Standard-Agenten sammeln die Audit-Daten aus den Quell-Datenbanken und legen diese Information in einer revisionssicheren Datenbank ab. Zentrales Provisioning der Audit-Einstellungen in die Datenbanken über zentrale Policy-Administration.
·         Oracle Business Intelligence
Professionielle Auswertung, Reporting, Benachrichtigung und Ad-Hoc Abfragen über alle Audit-Informationen. Erstellung von eigenen Reports und Abfragen.
·         Oracle Identity Manager
Liefert mittels Datenbank-Connector Accounts und Rechte aller Datenbank-Benutzer und ermöglicht ein Mapping auf reale Identitäten. Berechtigungsprozesse sind abbildbar und schaffen mehr Sicherheit.
Der Oracle Lösungsansatz für die Datenbank-Überwachung ist schnell implementiert und liefert schnelle Ergebnisse. Daten können korreliert werden und somit beliebige Informationen abgeleitet werden: Attacken, Sicherheits-Reviews, Compliance-Reports und vieles mehr ist möglich.
Abbildung 15: Datenbank-Überwachung mit dem Lösungsansatz Audit-Warehouse
 
Kurzdarstellung: Der Weg zur Datenbank-Überwachung
Die Implementierung der Datenbank-Überwachung ist in 5 Schritten durchzuführen.
1. Installation und Konfiguration Oracle Audit Vault
2. Installation Oracle BI Komponenten
3. Installation Oracle Identity Manager
4. Dashboarding und Reporting der Überwachung
5. Zusätzliche Anforderungen umsetzen
Was man nicht messen kann, kann man nicht kontrollieren. Aus diesem Fakt heraus ist die Idee der Datenbank-Überwachung entstanden. Der wesentliche Unterschied in der IT-Sicherheit ist das Wissen über Zustände und nicht der Glaube, dass IT-Komponenten „sicher“ sind (Generelle Aussage: „...ich gehe davon aus, dass...“). Protokollierung und Überwachung wird immer wichtiger (Forderung aus dem BDSG §9 Abs. 1) und unterliegt einem Kreislauf der Messung, Auswertung, Verbesserung und Optimierung. Dadurch entsteht ein Prozess, der fortlaufend Wissen liefert und dieses Wissen wiederum im Prozess anwendet. Wie heißt es so schön: „Erfahrung macht klug!“
Abbildung 16: Kreislauf der Protokollierung
 
Der hier vorgestellte Lösungsansatz wurde nur skizziert. Für eine detaillierte Diskussion stehe ich gerne zur Verfügung.