12.06.2007, 08:33 Uhr

Datenbankraub - Anschlag aufs Herz

Unternehmen speichern heute grosse Mengen von geschäftskritischen Informationen in Datenbanken. Sie sind daher besonders interessante Ziele für Angriffe aus dem Internet. So spionieren Cyber-Kriminelle beim sogenannten «Intelligence Lead Phishing» Datenbanken aus, um mit den erlangten Informationen stark personalisierte Phishing-Mails zu versenden.
Oliver Karow ist Security Consultant bei Symantec.
Die mitgelieferten Mittel einer Datenbanklösung sind ein unverzichtbares Element in der Datenbanksicherheit. Allerdings gibt es in diesem Bereich erhebliche Defizite: So wurden allein 168 Schwachstellen während des zweiten Halbjahres 2006 in den verbreiteten Oracle-Datenbanken dokumentiert. Ein wichtiger traditioneller Ansatz für die Sicherung von Datenbanken ist die Zugangskontrolle. Durch die Überprüfung der Autorisation eines Benutzers soll sichergestellt werden, dass nur Anwender mit entsprechenden Rechten bestimmte Datenbankabfragen ausführen können. Auf diese Weise wird eine Datenbank mit einem gewissen Basisschutz versehen - allerdings ist die Verteilung von Zugriffsrechten aus praktischen Gründen innerhalb eines Unternehmens oft durchlässiger, als aus Sicherheitsgründen wünschenswert wäre. CRM-Applikationen (Customer Relationship Management) beispielsweise greifen oft auf sensible Daten zu, müssen aber gleichzeitig für die Mitarbeiter schnell und effizient zugänglich sein.

Widersprüchliche Anforderungen

Diese Diskrepanz zwischen Anspruch und Wirklichkeit basiert auf einem einfachen, aber wichtigen Unterschied bei der Entwicklung von Datenbanken und Applikationen. Da Unternehmensapplikationen typischerweise eine grosse Zahl von Benutzern gleichzeitig verwalten müssen, greifen sie unter Einbeziehung unterschiedlicher Benutzerrechte mit hoher Geschwindigkeit auf die Datenbank zu. Die Applikation verwendet dabei meist ein hoch privilegiertes Verwaltungskonto, das den Zugriff auf die Datenbank für praktisch jeden Benutzer möglich macht. Dieser Kompromiss ist notwendig, um performant zu bleiben, allerdings unterwandert er die Zugangskontrolle für die Datenbank: Ein Angreifer kann eine Applikation kompromittieren, um der Datenbank über den Single Master Account Befehle zu erteilen. Ein typisches Beispiel für die Ausnutzung dieser Schwäche im Applikations-Datenbank-System sind SQL Injections. Dabei gibt ein Angreifer eine spezielle Zeichenfolge in ein Eingabefeld ein (etwa in das Feld «Benutzername» einer Login-Seite), die von der Applikation nicht erkannt und direkt an die Datenbank weitergeleitet wird. Da die Applikation direkt über den Single Master Account zugreift, kann sie der Datenbank direkte Befehle erteilen, ohne dabei Zugriffsrechte zu verletzen.

Auditing bleibt unvollständig

Um solche und ähnliche Vorgänge zu dokumentieren, verfügen die meisten Datenbanken über Auditing-Funktionen. Innerhalb von Logdateien werden sämtliche Vorgänge aufgezeichnet, die auf der Datenbank vorgenommen werden. Auch wenn auffällige Verhaltensweisen, wie Login-Versuche mit falschen Zugangsdaten oder der Missbrauch von Zugangsrechten, auf diese Weise dokumentiert werden, zeichnet das Auditing bestimmte interne Angriffe nicht auf. Ein Beispiel für einen solchen Vorgang ist der legitime Zugriff auf Daten, die dann einem nicht vorgesehenen Zweck zugeführt werden. Auditing-Logfiles werden ausserdem oft nicht in vollem Umfang aufgezeichnet oder überwacht, da die Kontrolle der Daten sehr aufwändig ist und nur von Experten vorgenommen werden kann. Umfangreiches Auditing kann ausserdem zu Schwierigkeiten mit der Performance des Datenbank-Servers führen - Leistungsabfälle von 30 Prozent sind hier keine Seltenheit.



Das könnte Sie auch interessieren