SlideShare ist ein Scribd-Unternehmen logo
Sensitive Daten in der Oracle Datenbank
DSAT und mehr
DOAG Regio München 2018
Ulrike Schwinn
E-mail: ulrike.schwinn@oracle.com
Oracle Deutschland B.V. & Co KG
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Agenda
Database Security Assessment Tool
Sensitive Spalten ermitteln - weitere Möglichkeit
1
2
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
• Überprüfung der Datenbanksicherheit
– Datenbank-Konfiguration
– Risiken durch privilegierte Benutzer
– Sensible Daten
• Ergebnis: Sicherheits-Empfehlungen
– Zusammenfassung und detaillierte Berichte
– Priorisierte Empfehlungen
Datenbank
gehärtet?
Benutzer?
Berechtigungen?
Sensitive Daten?
Database Security Assessment Tool (kurz DBSAT)
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Database Security Assessment Tool
• Ist ein eigenständiges Kommandozeilen-Tool
• Sammelt relevante Konfigurationsinformationen und bewertet aktuellen
Sicherheitsstatus
• Gibt Empfehlungen zur Minderung von identifizierten Risiken
• Seit Ende Januar in Version 2.0.1
• Für On-Premise und Cloud Installationen der Version 10g, 11g, 12c, 18c
• Download über My Oracle Support Document 2138254.1
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
DBSAT: Neue Funktionen in 2.0.1
• Ermittlung von sensitiven Daten
– Beispiele für PII: Gesundheitsdaten, Finanzdaten, Mitarbeiter-Daten
einschließlich GDPR (Religion, politische Zugehörigkeit, Gewerkschaftszugehörigkeit,
Strafrecht usw.)
– Sensible Daten-Typen und Kategorien sind anpassbar
• Identifizierung von Risiken durch fehlerhafte Datenbankkonfigurationen
und Betriebssystem-Implementierungen
– Zuordnung zu GDPR und CIS bezogenen Empfehlungen
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Was überprüft DBSAT?
• Benutzerkonten, Berechtigungen und Rollen
• Berechtigungssteuerung
• Datenverschlüsselung
• Zugriffssteuerung
• Audit-Richtlinien
• Datenbank-Konfiguration
• Listener-Konfiguration
• Datei-Berechtigungen
• Sensitive Daten
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Übersicht
Database Security Assessment Tool
• Collector
– führt SQL Abfragen (auf DD) und OS Kommandos aus
– schreibt gesammelte Daten in Datei
• Reporter
– analysiert die gesammelten Daten
– generiert einen DBSAT Report in HTML, Excel, JSON
und Text Format
• Discoverer
– führt SQL Abfragen (auf DD) aus und sammelt Daten
basierend auf Konfig-Files
– generiert einen “Sensitive Data” Report in HTML und
CSV Format
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Installation und erste Schritte
• Download und entpacken
• Separater User mit folgenden
Privilegien (optional)
create user dbs1 identified by dbs1;
grant create session to dbs1;
grant select_catalog_role to dbs1;
grant select on sys.registry$history to dbs1;
grant select on sys.dba_users_with_defpwd to dbs1;
grant select on audsys.aud$unified to dbs1;
grant audit_viewer to dbs1;
grant capture_admin to dbs1;
grant DV_SECANALYST to dbs1;
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Beispiel 1: Fehlkonfigurationen finden
DBSAT Collector und Reporter
Datenbankverbindung
JSON-Datei mit
Ergebnissen
Starten des
Collectors
(Sammeln)
Starten des
Reporters
(Analyse)
Ergebnis-Bericht
Berichtserstellung
Ausgabedatei ist verschlüsselt
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Collector
Konfigurationsdaten sammeln
• Aufruf über ./dbsat <db_connection> <ausgabedatei>
– Beispiel:./dbsat dbs1@pdb122 collect1
– Ergebnis als JSON Datei in collect1.zip (Passwort geschützt)
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Reporter
• Voraussetzungen
– Python Version >= 2.6
– zip/unzip in /usr/bin
– JSON Datei Passwort
• Aufruf über ./dbsat report <ausgabedatei>
– Beispiel: ./dbsat report collect1
• Ergebnisse in collect1_report.zip
– Enthält Dateien im Format txt, json, xlxs, html
– Passwort geschützt
Report erstellen
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Reporter: Übersicht
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Verwendete Sicherheits-Features (Basic Information)
Privilegierte Benutzer?
Datenverschlüsselung?
Fine-Grained Access Control?
Überwachung?
Benutzerauthentifizierung?
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Beispiel Security Findings
Finding
Tags-Übersicht
CIS/GDPR
Umfangreiche
Begründungen
und Hinweise
CIS Mapping &
GDPR Empfehlung
Diverse Status: Evaluate, Advisory, Pass,
Low Risk, Medium Risk, High Risk
Finding ID
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
XLS & Text Format
Real Application Security Yes
Label Security Yes
Transparent Sensitive Data Protection Yes
AUDITING
Traditional Audit Yes
Fine Grained Audit Yes
Unified Audit Yes
USER AUTHENTICATION
External Authentication Yes
Global Authentication Yes
•Patch Check *
Status: Severe Risk
Summary:
Latest Oracle Database PSU not found.
Details:
No patches have been applied.
•Remarks:
It is vital to keep the database software up-to-date with security
fixes as they are released. Oracle issues Patch Set Updates (PSU) and
Critical Patch Updates (CPU) on a regular quarterly schedule. These
updates should be applied as soon as they are available.
### User Accounts ###
Note: Predefined Oracle accounts which are locked are not included in
this report. To include all user accounts, run the report with the –a
option.
* User Accounts *
User Name Status Profile Default Tablespace Predefined
------------------ ---------------- ---------- ------------------ ----------
ABHIK OPEN DEFAULT SYSTEM No
ADAMS OPEN DEFAULT SYSTEM Yes
ANITA OPEN DEFAULT SYSTEM No
ANTHONY OPEN DEFAULT SYSTEM No
APP1_DATA OPEN DEFAULT SYSAUX No
BIZAPP OPEN DEFAULT SYSTEM No
BIZAPP_PROXY OPEN DEFAULT SYSTEM No
BLAKE OPEN DEFAULT SYSTEM Yes
CLARK OPEN DEFAULT SYSTEM Yes
CTXSYS OPEN DEFAULT SYSTEM Yes
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
JSON Format
• Für 3rd Party Tools oder eigenen Report innerhalb der Datenbank
• Beispielspeicherung in der Datenbank
– Tabelle für JSON Dateien
create table dbsat_result
(docname varchar2(32), doc clob check (doc is json));
– Laden der JSON Datei(en)
insert into dbsat_result values ('collect1_report.json',
bfilename('DBSAT_DIR','collect1_report.json'))
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
JSON Format
select severity , title, remarks
from dbsat_result
,JSON_TABLE(doc, '$[*].items[*]'
columns
TYPE VARCHAR2(32) PATH '$.type',
SEVERITY NUMBER PATH '$.severity',
TITLE VARCHAR2(128) PATH '$.title',
REMARKS VARCHAR2(4000)PATH '$.remarks' )
where TYPE = 'finding' order by docname, severity
Report in der Datenbank
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
JSON Format - Ausgabe
SEVERITY TITLE REMARKS
---------- -------------------------------------------------- ------------------------------------------------------------
5 Directory Objects Directory objects allow access to the server's file system f
rom PL/SQL code within the database. Access to files that ar
e used by the database kernel itself should not be permitted,
as this may alter the operation of the database and bypass
its access controls.
5 Users with Default Passwords Default account passwords for predefined Oracle accounts are
well known. Open accounts with default passwords provide a
trivial means of entry for attackers, but well-known passwor
ds should be changed for locked accounts as well.
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Beispiel 2: Sensible Daten finden
DBSAT Discoverer
Datenbankverbindung
Sensitive Kategorie
Risiko-Level
Ausschlusslisten
Einstellung
der DBSAT
Konfiguration
Suchmuster
vorgeben
Discovery
durchführen
Ergebnis-
Bericht
analysieren
Out-of-the-box
Sensitive Typen
und Kategorien
oder eigener
#U.S. Social Security Number (US SSN)
[SOCIAL_SECURITY_NUMBER]
COL_NAME_PATTERN = SOC.*SEC|^SSN$|NATIONAL.*ID|SSID
COL_COMMENT_PATTERN = Social Security Number
SENSITIVE_CATEGORY = PII – IDs
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Konfiguration I dbsat.config
• /Discover/conf/sample_dbsat.config kopieren und Zugriffsrechte erteilen
• Konfiguration durchführen
– Connection: Host, Port, Service
DB_HOSTNAME = bumuxxxxx.de.oracle.com
DB_PORT = 1521
DB_SERVICE_NAME = db122
– Pattern Datei(en):SENSITIVE_PATTERN_FILES = sensitive_en.ini, sensitive_de.in
– Schemas: SCHEMAS_SCOPE = ALL
– Exclusion Liste: EXCLUSION_LIST_FILE =
– Minimale Anzahl Zeilen: Minrows=1
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Konfiguration II dbsat.config
– Kategorien [Sensitive Categories]
PII = High Risk
PII - Address = High Risk
PII - IDs = High Risk
PII - IT Data = High Risk
PII-Linked = Medium Risk
PII-Linked - Birth Details = Medium Risk
Job Data = Medium Risk
Financial Data - PCI = High Risk
Financial Data - Banking = Medium Risk
Health Data = Medium Risk
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Konfiguration und Ausführung
• Sensitive Informationen/Pattern in /Discover/conf/sensitive_en.ini
– Reguläre Ausdrücke für Spaltennamen wie z.B.
[FULL_NAME]
COL_NAME_PATTERN = ^(PERSON|FULL).*NAME$
COL_COMMENT_PATTERN = (Full|Person).*Name
SENSITIVE_CATEGORY = PII
• Ausführung: ./dbsat discover –c <konfig datei> <ausgabe>
– Beispiel: ./dbsat discover -c dbsat.config ausgabe
– Ergebnis (csv, html) in ausgabe_report.zip
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Beispiel: Discovery Datei für Deutsch
[DE_FULL_NAME]
COL_NAME_PATTERN = ^VOLLST.*NAME$
COL_COMMENT_PATTERN = Vollst(ä|ae)ndiger Name
SENSITIVE_CATEGORY = PII
[DE_FIRST_NAME]^M
COL_NAME_PATTERN = (^VOR|^RUF)NAME$^M
COL_COMMENT_PATTERN = Vorname|Rufname^M
SENSITIVE_CATEGORY = PII^M
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Discovery: Ergebnisbericht
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Pro Kategorie
z.B. PII
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Schema Sicht
Überblick der Spalten mit sensiblen Daten
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Database Security Assessment Tool
• Nutzen:
– Sensible Daten in der Datenbank finden
– Identifizierung von Risiken durch Fehlkonfigurationen
– Datenbankbenutzer und deren Berechtigungen hinterfragen
• Informationen:
– http://www.oracle.com/technetwork/database/security/dbsat/overview/index.html
– https://blogs.oracle.com/coretec/security-13 (Kategorie Security)
– Youtube (Features des Monats)
https://www.youtube.com/watch?v=q8vCRk_cgUU&list=PLHA__TOeNI7PYtnDhAy186sI-C3LjjrZX
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Weitere Möglichkeit: Oracle Masking und Subsetting
• Funktionen:
– Automatisches Auffinden oder manuelle Definition von sensitive Spalten
– Berücksichtigung von Parent/Child Beziehungen
– Zusätzlich Data Masking und Subsetting
• Voraussetzung:
– Erfordert Enterprise Manager Infrastruktur
– Oracle Data Masking and Subsetting Pack
– Hinweis: Cloud Pricing: Enterprise Edition includes the Oracle Database Enterprise
Edition, Data Masking and Subsetting Pack, Diagnostics and Tuning Packs, and Real
Application Testing (https://cloud.oracle.com/en_US/database/pricing)
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Application Data Model: Eigenschaften
• Einheitliches Repository zur
Beschreibung von Schema-Objekten
• Enthält ein oder mehrere Schemas
• Kann sensitive Daten definieren
• Basis und Voraussetzung für Test Data
Management Operationen
• Erschließt Datenbeziehungen und
Charakteristiken für Data Subsetting,
Masking usw.
• Kann exportiert und importiert werden
Employees
Job History
Regions
Countries
Locations
Departments
Jobs
region_id
job_id
country_id
locn_id
dept_id
mgr_id
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Beispiel für Automatisches Data Discovery (ADM)
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
31
Sensitive Spalte
über Muster
• Definiere sensitiven
Spaltentyp über
reguläre Ausdrücke
• Spezieller Discovery
Job scannt die
Datenbank um
sensitive Spalten zu
finden
Import über
Masking Templates
• Importiere Masking
Templates für Oracle
Applications wie
EBS, PeopleSoft etc
• Sensitive Spalten
werden automatisch
markiert
Lege manuell Spalte
als sensitiv fest
• Direktes Hinzufügen
von sensitiven
Spalten
Sensitive Spalten auffinden
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Sensitive Spalten im ADM
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Discovery Job im ADM
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Sensitive Spaltentypen
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Informationen
• White Paper
– http://www.oracle.com/us/products/database/data-masking-best-practices-161213.pdf
• Postings auf http://blogs.oracle.com/coretec
– Anonymisierung von Daten in der Oracle Datenbank: wie funktioniert das?
• https://blogs.oracle.com/coretec/anonymisierung-von-daten-in-der-oracle-datenbank%3a-wie-funktioniert-das
• Handbuch Data Masking and Subsetting
– http://docs.oracle.com/database/122/DMKSB/toc.htm

Weitere ähnliche Inhalte

PDF
DOAG SIG Security Vortrag 2013: Wann haben Sie das letzte Mal Ihre Datenbank ...
PDF
Überblick zu Oracle Database 12c Release 2
PDF
Oracle Database 12c Release 2
PPTX
Oracle Security Übersicht
PDF
20181120_DOAG_OracleNoSQLDB_KPatenge
PDF
DBSAT – Die Oracle DATENBANK bzgl. PII Daten analysieren
PDF
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
PDF
Roadshow Oracle Database 12c: News & Features
DOAG SIG Security Vortrag 2013: Wann haben Sie das letzte Mal Ihre Datenbank ...
Überblick zu Oracle Database 12c Release 2
Oracle Database 12c Release 2
Oracle Security Übersicht
20181120_DOAG_OracleNoSQLDB_KPatenge
DBSAT – Die Oracle DATENBANK bzgl. PII Daten analysieren
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Roadshow Oracle Database 12c: News & Features

Ähnlich wie Sensitive Daten in der Oracle Datenbank (20)

PDF
DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbas
PPTX
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...
PDF
Secure Technical Implementation Guide for databases by Martin Obst
PDF
Implementierbare Sicherheitsregeln im Enterprise Manager
PPTX
Oracle Database Security Assessment Tool (DBSAT)
PDF
Überblick Oracle Datenbank 12c
PDF
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AG
PDF
Oracle Datenbank Manageability
PDF
Zeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und Recovery
PDF
DOAG 2014 - Enterprise User Security Von der Business Rolle bis in die Datenbank
PDF
cynapspro endpoint data protection 2010 - Bedienungsleitfaden
PPTX
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
PDF
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
PPTX
Oracle Text 12c New Features
PDF
Eine geniale Lösung für das Benutzermanagement by Suvad Sahovic
PDF
Oracle Database Backup Service
PDF
Oracle Database Backup Service Martin Berger
PDF
cynapspro data endpoint protection 2010 - Installationsleitfaden
PDF
Big Data Konnektivität
PDF
Tipps und Skripts aus dem Leben eines Connections Admins
DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbas
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...
Secure Technical Implementation Guide for databases by Martin Obst
Implementierbare Sicherheitsregeln im Enterprise Manager
Oracle Database Security Assessment Tool (DBSAT)
Überblick Oracle Datenbank 12c
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AG
Oracle Datenbank Manageability
Zeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und Recovery
DOAG 2014 - Enterprise User Security Von der Business Rolle bis in die Datenbank
cynapspro endpoint data protection 2010 - Bedienungsleitfaden
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Oracle Text 12c New Features
Eine geniale Lösung für das Benutzermanagement by Suvad Sahovic
Oracle Database Backup Service
Oracle Database Backup Service Martin Berger
cynapspro data endpoint protection 2010 - Installationsleitfaden
Big Data Konnektivität
Tipps und Skripts aus dem Leben eines Connections Admins
Anzeige

Mehr von Ulrike Schwinn (10)

PPTX
Hybrid Partitioned Tables in Oracle Database 19c
PPTX
JSON in der Oracle Datenbank
PDF
18c: private temporary tables
PPTX
What's new in SQL und PL/SQL in 12.2
PPTX
Heterogene Daten(-strukturen) in der Oracle Datenbank
PPTX
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
PDF
Komprimierung in der Oracle Datenbank (Stand 11gR2, 12c)
PDF
Ausgewählte PL/SQL Packages (3)
PDF
Ausgewählte PL/SQL Packages (2)
PDF
Ausgewählte PL/SQL Packages (1)
Hybrid Partitioned Tables in Oracle Database 19c
JSON in der Oracle Datenbank
18c: private temporary tables
What's new in SQL und PL/SQL in 12.2
Heterogene Daten(-strukturen) in der Oracle Datenbank
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
Komprimierung in der Oracle Datenbank (Stand 11gR2, 12c)
Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (1)
Anzeige

Sensitive Daten in der Oracle Datenbank

  • 1. Sensitive Daten in der Oracle Datenbank DSAT und mehr DOAG Regio München 2018 Ulrike Schwinn E-mail: ulrike.schwinn@oracle.com Oracle Deutschland B.V. & Co KG
  • 2. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Agenda Database Security Assessment Tool Sensitive Spalten ermitteln - weitere Möglichkeit 1 2
  • 3. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. • Überprüfung der Datenbanksicherheit – Datenbank-Konfiguration – Risiken durch privilegierte Benutzer – Sensible Daten • Ergebnis: Sicherheits-Empfehlungen – Zusammenfassung und detaillierte Berichte – Priorisierte Empfehlungen Datenbank gehärtet? Benutzer? Berechtigungen? Sensitive Daten? Database Security Assessment Tool (kurz DBSAT)
  • 4. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Database Security Assessment Tool • Ist ein eigenständiges Kommandozeilen-Tool • Sammelt relevante Konfigurationsinformationen und bewertet aktuellen Sicherheitsstatus • Gibt Empfehlungen zur Minderung von identifizierten Risiken • Seit Ende Januar in Version 2.0.1 • Für On-Premise und Cloud Installationen der Version 10g, 11g, 12c, 18c • Download über My Oracle Support Document 2138254.1
  • 5. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. DBSAT: Neue Funktionen in 2.0.1 • Ermittlung von sensitiven Daten – Beispiele für PII: Gesundheitsdaten, Finanzdaten, Mitarbeiter-Daten einschließlich GDPR (Religion, politische Zugehörigkeit, Gewerkschaftszugehörigkeit, Strafrecht usw.) – Sensible Daten-Typen und Kategorien sind anpassbar • Identifizierung von Risiken durch fehlerhafte Datenbankkonfigurationen und Betriebssystem-Implementierungen – Zuordnung zu GDPR und CIS bezogenen Empfehlungen
  • 6. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Was überprüft DBSAT? • Benutzerkonten, Berechtigungen und Rollen • Berechtigungssteuerung • Datenverschlüsselung • Zugriffssteuerung • Audit-Richtlinien • Datenbank-Konfiguration • Listener-Konfiguration • Datei-Berechtigungen • Sensitive Daten
  • 7. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Übersicht Database Security Assessment Tool • Collector – führt SQL Abfragen (auf DD) und OS Kommandos aus – schreibt gesammelte Daten in Datei • Reporter – analysiert die gesammelten Daten – generiert einen DBSAT Report in HTML, Excel, JSON und Text Format • Discoverer – führt SQL Abfragen (auf DD) aus und sammelt Daten basierend auf Konfig-Files – generiert einen “Sensitive Data” Report in HTML und CSV Format
  • 8. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Installation und erste Schritte • Download und entpacken • Separater User mit folgenden Privilegien (optional) create user dbs1 identified by dbs1; grant create session to dbs1; grant select_catalog_role to dbs1; grant select on sys.registry$history to dbs1; grant select on sys.dba_users_with_defpwd to dbs1; grant select on audsys.aud$unified to dbs1; grant audit_viewer to dbs1; grant capture_admin to dbs1; grant DV_SECANALYST to dbs1;
  • 9. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Beispiel 1: Fehlkonfigurationen finden DBSAT Collector und Reporter Datenbankverbindung JSON-Datei mit Ergebnissen Starten des Collectors (Sammeln) Starten des Reporters (Analyse) Ergebnis-Bericht Berichtserstellung Ausgabedatei ist verschlüsselt
  • 10. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Collector Konfigurationsdaten sammeln • Aufruf über ./dbsat <db_connection> <ausgabedatei> – Beispiel:./dbsat dbs1@pdb122 collect1 – Ergebnis als JSON Datei in collect1.zip (Passwort geschützt)
  • 11. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Reporter • Voraussetzungen – Python Version >= 2.6 – zip/unzip in /usr/bin – JSON Datei Passwort • Aufruf über ./dbsat report <ausgabedatei> – Beispiel: ./dbsat report collect1 • Ergebnisse in collect1_report.zip – Enthält Dateien im Format txt, json, xlxs, html – Passwort geschützt Report erstellen
  • 12. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Reporter: Übersicht
  • 13. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Verwendete Sicherheits-Features (Basic Information) Privilegierte Benutzer? Datenverschlüsselung? Fine-Grained Access Control? Überwachung? Benutzerauthentifizierung?
  • 14. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Beispiel Security Findings Finding Tags-Übersicht CIS/GDPR Umfangreiche Begründungen und Hinweise CIS Mapping & GDPR Empfehlung Diverse Status: Evaluate, Advisory, Pass, Low Risk, Medium Risk, High Risk Finding ID
  • 15. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. XLS & Text Format Real Application Security Yes Label Security Yes Transparent Sensitive Data Protection Yes AUDITING Traditional Audit Yes Fine Grained Audit Yes Unified Audit Yes USER AUTHENTICATION External Authentication Yes Global Authentication Yes •Patch Check * Status: Severe Risk Summary: Latest Oracle Database PSU not found. Details: No patches have been applied. •Remarks: It is vital to keep the database software up-to-date with security fixes as they are released. Oracle issues Patch Set Updates (PSU) and Critical Patch Updates (CPU) on a regular quarterly schedule. These updates should be applied as soon as they are available. ### User Accounts ### Note: Predefined Oracle accounts which are locked are not included in this report. To include all user accounts, run the report with the –a option. * User Accounts * User Name Status Profile Default Tablespace Predefined ------------------ ---------------- ---------- ------------------ ---------- ABHIK OPEN DEFAULT SYSTEM No ADAMS OPEN DEFAULT SYSTEM Yes ANITA OPEN DEFAULT SYSTEM No ANTHONY OPEN DEFAULT SYSTEM No APP1_DATA OPEN DEFAULT SYSAUX No BIZAPP OPEN DEFAULT SYSTEM No BIZAPP_PROXY OPEN DEFAULT SYSTEM No BLAKE OPEN DEFAULT SYSTEM Yes CLARK OPEN DEFAULT SYSTEM Yes CTXSYS OPEN DEFAULT SYSTEM Yes
  • 16. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. JSON Format • Für 3rd Party Tools oder eigenen Report innerhalb der Datenbank • Beispielspeicherung in der Datenbank – Tabelle für JSON Dateien create table dbsat_result (docname varchar2(32), doc clob check (doc is json)); – Laden der JSON Datei(en) insert into dbsat_result values ('collect1_report.json', bfilename('DBSAT_DIR','collect1_report.json'))
  • 17. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. JSON Format select severity , title, remarks from dbsat_result ,JSON_TABLE(doc, '$[*].items[*]' columns TYPE VARCHAR2(32) PATH '$.type', SEVERITY NUMBER PATH '$.severity', TITLE VARCHAR2(128) PATH '$.title', REMARKS VARCHAR2(4000)PATH '$.remarks' ) where TYPE = 'finding' order by docname, severity Report in der Datenbank
  • 18. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. JSON Format - Ausgabe SEVERITY TITLE REMARKS ---------- -------------------------------------------------- ------------------------------------------------------------ 5 Directory Objects Directory objects allow access to the server's file system f rom PL/SQL code within the database. Access to files that ar e used by the database kernel itself should not be permitted, as this may alter the operation of the database and bypass its access controls. 5 Users with Default Passwords Default account passwords for predefined Oracle accounts are well known. Open accounts with default passwords provide a trivial means of entry for attackers, but well-known passwor ds should be changed for locked accounts as well.
  • 19. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Beispiel 2: Sensible Daten finden DBSAT Discoverer Datenbankverbindung Sensitive Kategorie Risiko-Level Ausschlusslisten Einstellung der DBSAT Konfiguration Suchmuster vorgeben Discovery durchführen Ergebnis- Bericht analysieren Out-of-the-box Sensitive Typen und Kategorien oder eigener #U.S. Social Security Number (US SSN) [SOCIAL_SECURITY_NUMBER] COL_NAME_PATTERN = SOC.*SEC|^SSN$|NATIONAL.*ID|SSID COL_COMMENT_PATTERN = Social Security Number SENSITIVE_CATEGORY = PII – IDs
  • 20. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Konfiguration I dbsat.config • /Discover/conf/sample_dbsat.config kopieren und Zugriffsrechte erteilen • Konfiguration durchführen – Connection: Host, Port, Service DB_HOSTNAME = bumuxxxxx.de.oracle.com DB_PORT = 1521 DB_SERVICE_NAME = db122 – Pattern Datei(en):SENSITIVE_PATTERN_FILES = sensitive_en.ini, sensitive_de.in – Schemas: SCHEMAS_SCOPE = ALL – Exclusion Liste: EXCLUSION_LIST_FILE = – Minimale Anzahl Zeilen: Minrows=1
  • 21. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Konfiguration II dbsat.config – Kategorien [Sensitive Categories] PII = High Risk PII - Address = High Risk PII - IDs = High Risk PII - IT Data = High Risk PII-Linked = Medium Risk PII-Linked - Birth Details = Medium Risk Job Data = Medium Risk Financial Data - PCI = High Risk Financial Data - Banking = Medium Risk Health Data = Medium Risk
  • 22. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Konfiguration und Ausführung • Sensitive Informationen/Pattern in /Discover/conf/sensitive_en.ini – Reguläre Ausdrücke für Spaltennamen wie z.B. [FULL_NAME] COL_NAME_PATTERN = ^(PERSON|FULL).*NAME$ COL_COMMENT_PATTERN = (Full|Person).*Name SENSITIVE_CATEGORY = PII • Ausführung: ./dbsat discover –c <konfig datei> <ausgabe> – Beispiel: ./dbsat discover -c dbsat.config ausgabe – Ergebnis (csv, html) in ausgabe_report.zip
  • 23. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Beispiel: Discovery Datei für Deutsch [DE_FULL_NAME] COL_NAME_PATTERN = ^VOLLST.*NAME$ COL_COMMENT_PATTERN = Vollst(ä|ae)ndiger Name SENSITIVE_CATEGORY = PII [DE_FIRST_NAME]^M COL_NAME_PATTERN = (^VOR|^RUF)NAME$^M COL_COMMENT_PATTERN = Vorname|Rufname^M SENSITIVE_CATEGORY = PII^M
  • 24. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Discovery: Ergebnisbericht
  • 25. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Pro Kategorie z.B. PII
  • 26. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Schema Sicht Überblick der Spalten mit sensiblen Daten
  • 27. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Database Security Assessment Tool • Nutzen: – Sensible Daten in der Datenbank finden – Identifizierung von Risiken durch Fehlkonfigurationen – Datenbankbenutzer und deren Berechtigungen hinterfragen • Informationen: – http://www.oracle.com/technetwork/database/security/dbsat/overview/index.html – https://blogs.oracle.com/coretec/security-13 (Kategorie Security) – Youtube (Features des Monats) https://www.youtube.com/watch?v=q8vCRk_cgUU&list=PLHA__TOeNI7PYtnDhAy186sI-C3LjjrZX
  • 28. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Weitere Möglichkeit: Oracle Masking und Subsetting • Funktionen: – Automatisches Auffinden oder manuelle Definition von sensitive Spalten – Berücksichtigung von Parent/Child Beziehungen – Zusätzlich Data Masking und Subsetting • Voraussetzung: – Erfordert Enterprise Manager Infrastruktur – Oracle Data Masking and Subsetting Pack – Hinweis: Cloud Pricing: Enterprise Edition includes the Oracle Database Enterprise Edition, Data Masking and Subsetting Pack, Diagnostics and Tuning Packs, and Real Application Testing (https://cloud.oracle.com/en_US/database/pricing)
  • 29. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Application Data Model: Eigenschaften • Einheitliches Repository zur Beschreibung von Schema-Objekten • Enthält ein oder mehrere Schemas • Kann sensitive Daten definieren • Basis und Voraussetzung für Test Data Management Operationen • Erschließt Datenbeziehungen und Charakteristiken für Data Subsetting, Masking usw. • Kann exportiert und importiert werden Employees Job History Regions Countries Locations Departments Jobs region_id job_id country_id locn_id dept_id mgr_id
  • 30. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Beispiel für Automatisches Data Discovery (ADM)
  • 31. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. 31 Sensitive Spalte über Muster • Definiere sensitiven Spaltentyp über reguläre Ausdrücke • Spezieller Discovery Job scannt die Datenbank um sensitive Spalten zu finden Import über Masking Templates • Importiere Masking Templates für Oracle Applications wie EBS, PeopleSoft etc • Sensitive Spalten werden automatisch markiert Lege manuell Spalte als sensitiv fest • Direktes Hinzufügen von sensitiven Spalten Sensitive Spalten auffinden
  • 32. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Sensitive Spalten im ADM
  • 33. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Discovery Job im ADM
  • 34. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Sensitive Spaltentypen
  • 35. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Informationen • White Paper – http://www.oracle.com/us/products/database/data-masking-best-practices-161213.pdf • Postings auf http://blogs.oracle.com/coretec – Anonymisierung von Daten in der Oracle Datenbank: wie funktioniert das? • https://blogs.oracle.com/coretec/anonymisierung-von-daten-in-der-oracle-datenbank%3a-wie-funktioniert-das • Handbuch Data Masking and Subsetting – http://docs.oracle.com/database/122/DMKSB/toc.htm

Hinweis der Redaktion

  • #4: Personas: DPO, DBA, Auditor Quickly evaluate risks to your Oracle databases Promptly identify security misconfigurations Reduce the attack surface and exposure to risk Safeguard your sensitive data by following recommendations Raise security posture for your Oracle Databases Downloadable free tool from MOS
  • #7: Put it in boxes (related) Highlight Findings related to: Oracle Best Practices CIS Oracle Database Benchmark EU GDPR Basic Information: Instance name, CDB/PDB, Patches User Accounts: User accounts, Users with Expired Passwords, Sample schemas, default passwords, password verifiers, Privileges and Roles: Users and Roles with Administrative and System Privileges, Users with DBA roles, etc. Security Feature Usage section includes rules about each of our features: Audit, DV, TDE, Redaction, RAS, etc. Database Configuration: Security related initialization parameters, Triggers, disabled constraints, java permissions, network acls Network Configuration: Network Encryption, Listener log and status, client nodes (invited/excluded), etc. OS level checks: OS authentication, pmon processes, agent processes, listener processes and OS permissions in ORACLE_HOME Both DBSAT Collector and Reporter run on Windows platforms. The DBSAT Collector OS specific rules won’t run, so some of the Reporter rules are skipped The skipped rules are appended to the end of the text and html report.
  • #8: The Collector by default generates a password protected zip file containing the collected data in JSON format The Reporter will take as an input the file (either JSON / Zip), analyze it and produce the output reports Collector and Reporter do not need to be run on the same server. Collector should be executed at the database server but then the data can be transferred to the customer laptop (or other server) for analysis.
  • #10: Oracle Databases or non-oracle on prem, cloud Add commands + step 1,2 ,3
  • #13: Show a severe risk and significant risk example This is not just a vulnerability tool – entitlements as a differentiator Describe that the reports are comprised of Summary table; Informational Tables; the Findings[next slide]
  • #15: A Finding is the result of the analysis by the DBSAT Reporter. Findings give recommendations to improve the security posture of the database or provide information for further analysis. Each finding consists of the following: Status – This indicates the level of risk associated with the finding (Pass, Some, Significant, Severe) or indicates that the finding is an Opportunity for improvement, such as information about an optional security feature that is not currently in use. In cases where it’s not possible to automate the finding and further analysis is needed, the status is shown as Evaluate. Summary – Presents one-line summary of the finding. Details – Presents the details of the results, followed by any recommendations for changes. Remarks – Explains the reason for the rule and recommended actions for remediation if a risk is reported.
  • #20: Edit or Update Bigger fonts Animation on SSN
  • #25: Drop first table