Logo Oracle Deutschland   DBA Community  -  Februar 2015
Oracle Audit Vault and Database Firewall - Teil 2 (Database Firewall)
von Heinz-Wilhelm Fabry, ORACLE Deutschland B.V. & Co KG

Oracle Audit Vault and Database Firewall (AVDF) besteht aus den zwei Komponenten Oracle Audit Vault (AV) und Oracle Database Firewall (DBF). Im Januar 2015 ist im Rahmen der DBA Community bereits ein Tipp zur Installation der Komponente AV erschienen. Der Januar Tipp beschreibt ausserdem, wie AV als Repository und Berichtsgrundlage für Audit Daten aus Oracle Datenbanken eingerichtet wird. Der folgende Tipp setzt die Lektüre des Tipps aus dem Januar voraus. Als Folgetipp beschreibt der aktuelle Tipp die Installation und Inbetriebnahme der Komponente DBF. Der Tipp ersetzt nicht die Lektüre der originalen Installationsanleitung vor dem Einsatz in produktiven Umgebungen. Vielmehr dient er als Anleitung dazu, wie man sich in sehr kurzer Zeit und ohne Rücksicht auf die im Installationshandbuch beschriebenen Details eine einfache Beispiel- oder Testumgebung aufsetzen kann.

Die DBF überwacht den Netzwerkverkehr zu Datenbanken unterschiedlicher Hersteller, protokolliert diesen Netzwerkverkehr nach konfigurierbaren Vorgaben, kann Berichte erzeugen, Alarme (alerts) auslösen sowie unerwünschte oder durch SQL Injection manipulierte Zugriffe auf Datenbanken unterbinden. Ein späterer Tipp wird beschreiben, wie Regeln implementiert werden, nach denen die DBF zum Beispiel einen Zugriff auf geschützte Daten abblockt.

Der aktuelle Tipp ist in die folgenden Abschnitte gegliedert Die DBF unterstützt Oracle Datenbanken von Version 9 bis 12. Aber die DBF schützt nicht nur Oracle Datenbanken, sondern auch die Datenbanken Microsoft SQL Server, IBM DB2 für LUW, Sybase ASE und SQL Anywhere sowie MySQL. Detaillierte Versionsinformationen zu den unterstützten Datenbanken listet das Handbuch auf.

Voraussetzungen für die Installation
Es bedarf keinerlei besonderer Privilegien die DBF zu installieren. Die Hard- und Software Voraussetzungen für die Installation der DBF entsprechen denen, die auch für AV gelten:
  • ein ausschliesslich von der DBF zu nutzender x86 64-bit Rechner, der kompatibel sein muss mit Oracle Linux, Release 5 Update 10
  • der Rechner muss über mindestens 2 GB RAM und
  • eine lokale Festplatte mit einer Mindestkapazität von 150 GB verfügen
  • je nach geplanter Konfiguration werden ein bis drei Netzwerkkarten benötigt; für das Beispiel dieses Beitrags genügt eine Karte.
Da die DBF für wesentliche Teile der Administration und Steuerung sowie für die gesamte Ablage von Protokollinformationen und das Erzeugen von Berichten eine Installation von AV voraussetzt, sollte vor der Installation der DBF eine AV Instanz aufgebaut werden. Wie bereits oben erwähnt, erklärt der Community Artikel aus dem Januar, wie dazu vorzugehen ist.

Installation
Auch die DBF wird in Form eines ISO Image als Software Appliance ausgeliefert. Das Nach der Installation Starten des ISO Image installiert ohne weitere Eingriffe des Benutzers den gesamten gehärteten Softwarestack. Wie bei der Installation von AV werden lediglich zwei Eingaben erwartet: Zunächst wird ein Einmalpasswort erfragt, das als Passphrase bezeichnet wird (die Eingabe wird von einer Tastatur mit englischem Layout erwartet). Das Passwort muss bestimmten Mindestanforderungen genügen. Es ermöglicht das erstmalige Einloggen in die DBF Management Konsole. Ausserdem müssen Angaben zur IP Adresse (IP Adresse, Subnet Mask und sofern nötig Gateway) für die DBF gemacht werden. Zum Abschluss der Installation bootet das System neu und meldet sich mit der Bildschirmanzeige zurück, die links abgebildet ist.

Ansonsten gilt ebenfalls, was bereits im Zusammenhang mit der Installation von AV betont wurde: Die installierte DBF Software darf in keiner Weise verändert, sondern nur in festgelegtem Ausmass konfiguriert werden.

Konfiguration
Erstes Einloggen in der Management Konsole Im nächsten Schritt müssen noch Benutzer und ihre Passwörter sowie die Verbindung zwischen einer DBF und einem AV Server konfiguriert werden. Dazu benötigt man - genauso wie für alle im Weiteren beschriebenen Aktionen - Administratorprivilegien sowohl in AV als auch in DBF. Die gesamte Konfiguration kann über Skripte ausgeführt werden, hier wird jedoch die Möglichkeit genutzt, über die graphischen Benutzeroberflächen im Browser zu arbeiten.

Es beginnt in der oben erwähnten Konsole der DBF, die unter der bei der Installation angegebenen URL (https://ipadresse) erreichbar ist. Zum Einloggen wird, wie links erkennbar, das Einmalpasswort benötigt.

Konfiguration nach Abschluss der Installation Nach dem erstem Einloggen öffnet sich die Bildschirmseite, die auf der Abbildung rechts zu sehen ist. Es werden eingerichtet
  1. Ein Administrator: Er kann sich in der DBF Konsole einloggen und die DBF konfigurieren. Er ist zuständig für das Einrichten der Netzwerkkonfiguration, so dass Datenbanken überwacht werden können. Weitere Zuständigkeiten sind zum Beispiel das Einrichten der Kommunikation mit einem AV Server und eine Festlegung, auf welchen Wegen auf den Firewall Rechner zugegriffen werden kann (Web, SSH, SNMP).
  2. Das Passwort für den Benutzer root, der zum Beispiel bei Bedarf von der Rechnerkonsole aus den DBF Rechner herunterfahren kann. Der Benutzer sollte nur wie in den Handbüchern beschrieben oder auf Anweisung des Oracle Supports verwendet werden.
  3. Das Passwort für den Benutzer support, so dass man sich für bestimmte Aufgaben wie einfacherer Problemanalysen auch ohne root-Privilegien auf dem DBF Rechner anmelden kann. Auch dieser Benutzer sollte nur wie in den Handbüchern beschrieben oder auf Anweisung des Oracle Supports verwendet werden.
Für produktive Umgebungen sollte nun noch wenn nötig das DNS Setup sowie das Einrichten von NTP Servern erfolgen. Für die Zwecke dieses Tipps kann das jedoch vernachlässigt werden.

Als nächstes muss die Kommunikation zwischen Database Firewall und einem AV Server konfiguriert werden. Dies macht nochmals klar, wie eng die Komponenten AV und DBF verzahnt sind, denn der Vorgang beginnt in der Konsole des Audit Vault Servers, mit dem die Firewall zusammenarbeiten soll.

Zertifikat des Audit Vault Servers Da die Kommunikation zwischen AV und DBF verschlüsselt erfolgt, wird zunächst ein Zertifikat des AV Servers benötigt. Dazu logged sich ein AV Administrator in die AV Konsole ein. Unter dem Menupunkt EINSTELLUNGEN befindet sich in der Auswahl auf der linken Seite der Punkt ZERTIFIKAT. Durch Anklicken von ZERTIFIKAT öffnet sich die Bildschirmseite links.
Zertifikat des Audit Vault Servers in DBF einfügen Das Zertifikat wird kopiert und in der Konsole der Database Firewall unter SYSTEM und AUDIT VAULT SERVER eingefügt. Ausserdem wird die IP Adresse des AV Servers auf dieser Bildschirmseite eingegeben. Diese beiden Teilschritte sind im Bild rechts vollzogen. Zum Speichern der Einstellungen wird noch auf den Button ÜBERNEHMEN am Fuß der Seite geklickt.

Database Firewall im Audit Vault Server registrieren Erst jetzt kann die DBF auch im AV Server registriert werden. Dies geschieht im Menu FIREWALLS und nach Auswahl des Buttons REGISTRIEREN. Es wird ein möglichst aussagekräftiger Name für die DBF vergeben, für diesen Artikel soll sie CommunityDBF heissen. Ausserdem ist die Angabe ihrer IP Adresse gefordert, hier 192.168.56.177. Das Ergebnis ist im Bild rechts zu sehen (es ist eine weitere DBF eingerichtet, die jedoch für diesen Artikel keine Rolle spielt).

System zur Absicherung einer Datenbank einrichten
Zwar steht jetzt das System bestehend aus AV und DBF. Aber dieses System soll ja eine Datenbank mit DBF schützen. Diese Datenbank muss in AV registriert werden. Dazu muss zunächst der Server (host) angegeben werden, auf dem die zu schützende Datenbank läuft, und natürlich diese Datenbank selbst. Eine solche Datenbank wird in AV als zu sicherndes Ziel bezeichnet. Der Server soll für diesen Artikel RDBMS11204 und das Ziel HFABRY heissen. Die Einrichtung erfolgt wie im Januar Artikel bereits beschrieben. Die auditspezifischen Informationen, zum Beispiel zum Agenten oder zu den Datenbankbenutzern, sind zum Einrichten der DBF überflüssig und werden deshalb nicht vorgenommen.

Zertifikat des Audit Vault Servers einfügen Um das Ziel auf einem Server mit DBF schützen zu können, muss dieses zusätzlich als sogenannter ENFORCEMENT POINT eingerichtet werden. Dies geschieht in der AV Konsole unter GESICHERTE ZIELE -> ENFORCEMENT POINTS -> ERSTELLEN. Die Abbildung zeigt die tabellarische Übersicht zum eingerichteten ENFORCEMENT POINT EPrdbms11204. Einzig die Spalte MODUS ist zu erläutern: DBF kann in 2 Modi betrieben werden. Der erste, der sogenannte Data Activity Modus (DAM), erlaubt lediglich das Erfassen des Netzwerkverkehrs zur Datenbank und das Erzeugen von Alarmmeldungen (alerts). Der zweite Modus, das Data Policy Enforcement (DPE), erlaubt zusätzlich das Abblocken eines Zugriffs oder das Ersetzen des Zugriffs durch einen alternativen SQL Befehl. Hinweis: Das Ersetzen wird zum Beispiel benötigt, falls mit Anwendungen auf die Datenbank zugegriffen wird, die durch einen abgeblockten Zugriff - also ohne eine gültige Rückmeldung von der Datenbank - nicht mehr korrekt funktionieren oder sogar abstürzen würden. Für diesen Artikel wird der Modus DPE gewählt.

Als nächstes steht das Einrichten des Netzwerks im Zusammenhang mit dem Einsatz der DBF an. Für den produktiven Einsatz sind dabei zwei Entscheidungen zu treffen, die eng miteinander verbunden sind: Erstens ist zu entscheiden, in welchem Modus - DAM oder DPE - die DBF betrieben werden soll. Zweitens, wie das Netzwerk konfiguriert werden soll, um den gewählten Modus auch nutzen zu können.
  1. Die DBF kann als sogenannte transparent bridge in das Netzwerk integriert werden. Der gesamte Netzwerkverkehr zur Datenbank 'fliesst' durch die Firewall. Für diese Konfigurationsvariante werden 3 Netzwerkkarten benötigt: 1 für die Verbindung zu AV, 1 für den eingehenden Netzwerkverkehr und 1 für die Verbindung zur Datenbank. Dabei werden in der Regel Netzwerkkarten verwendet, die zum Beispiel auch bei einem Stromausfall den Datenfluss nicht unterbinden. Diese Eigenschaft wird als fail open oder bypass bezeichnet. Eine Liste solcher Netzwerkkarten, die DBF unterstützt, befindet sich im FAQ zu AVDF. Sollten weitere Netzwerkkarten hinzukommen, lohnt sich ein Blick auf die Seiten des Oracle Supports (zum Beispiel auf das Dokument mit der ID 1681384.1).

    In dieser ersten Variante kann die DBF sowohl im DAM als auch im DPE Modus betrieben werden.

  2. Die DBF kann auch mit einer Netzwerkkarte betrieben werden, die den Netzwerkverkehr ungehindert zur Datenbank weiterleitet, aber gleichzeitig über einen sogenannten span port diesen Netzwerkverkehr zur DBF spiegelt. Auch hier sollten in der Regel fail open / bypass Netzwerkkarten zum Einsatz kommen. Für diese Variante werden 2 Netzwerkkarten benötigt: 1 für die Verbindung zu AV und 1 weitere, die den Netzwerkverkehr zur Datenbank durchleitet und diesen Netzwerkverkehr zur DBF spiegelt.

    Es ist einleuchtend, dass zum Beispiel das Abblocken von Zugriffen auf die Datenbank so nicht möglich ist. Es kann also nur der DAM Modus zum Einsatz kommen, was wiederum bedeutet, dass lediglich Berichte über den Netzwerkverkehr und alerts erzeugt werden könen.

  3. In der dritten und letzten Variante, die auch für diesen Artikel zum Einsatz kommt, wird die DBF als Proxy eingesetzt. Eine einzige Netzwerkkarte ist ausreichend, um gleichzeitig die Verbindung zwischen AV und überwachter Datenbank herzustellen.

    In dieser Konfiguration kann die DBF nur im DPE Modus betrieben werden.
Seite MANAGEMENTSCHNITTSTELLE Die Konfiguration als Proxy findet über die Konsole der DBF statt. Dazu wird der Menupunkt Netzwerk aufgerufen und der Button ÄNDERN am Fuß der Seite betätigt. Es öffnet sich die Seite MANAGEMENTSCHNITTSTELLE, auf der die Angaben zum ersten Proxy hinzugefügt werden können. Nach dem Speichern erscheint die ergänzte Seite wie links zu sehen. Man beachte, dass als Port für diesen Proxy die Nummer 1522 vergeben wurde.

Testen der Basisfunktionalität
Testen mit SQL Developer Die DBF ist nun soweit eingerichtet, dass sie wie ein Sniffer den Netzwerkverkehr zur Datenbank mitliest. Das belegt die folgende Konstruktion: Als Benutzer SCOTT wird im SQL Developer eine Verbindung mit der IP Adresse 192.168.56.177 der DBF sowie dem Port 1522 aufgebaut.

Dann wird der SQL Befehl
SELECT ename, sal FROM emp WHERE deptno < 11
Testen mit SQL Developer ausgeführt (siehe Bild rechts). Da die DBF den Befehl über den Listener der Datenbank mit dem Standardport 1521 an die Datenbank weiterleitet, wird das korrekte Ergebnis im SQL Developer angezeigt.


Seite MANAGEMENTSCHNITTSTELLE Das Bild rechts belegt wiederum, dass der Datenbankzugriff über die DBF geleitet wird. In der DBF Konsole im Menubaum links wählt man den Punkt NETZWERKVERKEHR LIVE CAPTURE, stellt auf der Detailebene im oberen Bildschirmbereich PAKETCONTENT sowie einen ausreichend langen Zeitraum ein und erhält nach Anklicken von DATENVERKEHR ANZEIGEN alles angezeigt was im Beobachtungszeitraum über das Netzwerk der Datenbank fliesst: Im Anzeigefeld ist sowohl der abgesetzte Befehl als auch ein Teil des Ergebnisses, zum Beispiel die Namen KING, CLARK und MILLER, zu erkennen.

Resumé und Ausblick
Die Installation von DBF ist simpel. Bei der Konfiguration muss man allerdings konzentriert vorgehen, denn die eigentlich sehr einfachen Konfigurationsschritte sind in wechselnden Werkzeugen vorzunehmen.

Während in diesem Artikel die Administratoren gefordert waren, ist aus Gründen der Aufgabenverteilung und Funktionstrennung das Einrichten von Regeln, der sogenannten Firewall Policies, und Alarmmeldungen (alerts) sowie das Erstellen von Berichten über inhaltliche Informationen (im Gegensatz zu installations- und konfigurationsabhängigen Informationen) Benutzern mit dem Privileg des Auditor vorbehalten. Ein weiterer Tipp wird sich damit befassen.

Literaturangaben
Tipp zur Installation der Komponente AV
Handbücher zu Oracle Audit Vault and Database Firewall
Installation Guide von Oracle Audit Vault and Database Firewall
Administrator's Guide von Oracle Audit Vault and Database Firewall
OTN Seite von Oracle Audit Vault and Database Firewall
FAQ zu AVDF

Zurück zum Anfang des Artikels

Zurück zur Community-Seite