SlideShare uma empresa Scribd logo
1 de 35
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

Mais conteúdo relacionado

Semelhante a Sensitive Daten in der Oracle Datenbank

DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbas
DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbasDOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbas
DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbasCarsten Muetzlitz
 
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...Markus Flechtner
 
Secure Technical Implementation Guide for databases by Martin Obst
Secure Technical Implementation Guide for databases by Martin ObstSecure Technical Implementation Guide for databases by Martin Obst
Secure Technical Implementation Guide for databases by Martin ObstCarsten Muetzlitz
 
Implementierbare Sicherheitsregeln im Enterprise Manager
Implementierbare Sicherheitsregeln im Enterprise ManagerImplementierbare Sicherheitsregeln im Enterprise Manager
Implementierbare Sicherheitsregeln im Enterprise ManagerMartin Obst
 
Überblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12cÜberblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12cIleana Somesan
 
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AG
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AGQualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AG
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AGTorsten Kleiber
 
Oracle Datenbank Manageability
Oracle Datenbank ManageabilityOracle Datenbank Manageability
Oracle Datenbank Manageabilityoraclebudb
 
Zeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und Recovery
Zeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und RecoveryZeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und Recovery
Zeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und Recoveryoraclebudb
 
DOAG 2014 - Enterprise User Security Von der Business Rolle bis in die Datenbank
DOAG 2014 - Enterprise User Security Von der Business Rolle bis in die DatenbankDOAG 2014 - Enterprise User Security Von der Business Rolle bis in die Datenbank
DOAG 2014 - Enterprise User Security Von der Business Rolle bis in die DatenbankMarcel Pils
 
cynapspro endpoint data protection 2010 - Bedienungsleitfaden
cynapspro endpoint data protection 2010 - Bedienungsleitfadencynapspro endpoint data protection 2010 - Bedienungsleitfaden
cynapspro endpoint data protection 2010 - Bedienungsleitfadencynapspro GmbH
 
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzenAWS Germany
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickKarin Patenge
 
Oracle Text 12c New Features
Oracle Text 12c New FeaturesOracle Text 12c New Features
Oracle Text 12c New FeaturesUlrike Schwinn
 
Eine geniale Lösung für das Benutzermanagement by Suvad Sahovic
Eine geniale Lösung für das Benutzermanagement by Suvad SahovicEine geniale Lösung für das Benutzermanagement by Suvad Sahovic
Eine geniale Lösung für das Benutzermanagement by Suvad SahovicCarsten Muetzlitz
 
Oracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin BergerOracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin BergerDésirée Pfister
 
Oracle Database Backup Service
Oracle Database Backup ServiceOracle Database Backup Service
Oracle Database Backup ServiceTrivadis
 
cynapspro data endpoint protection 2010 - Installationsleitfaden
cynapspro data endpoint protection 2010 - Installationsleitfadencynapspro data endpoint protection 2010 - Installationsleitfaden
cynapspro data endpoint protection 2010 - Installationsleitfadencynapspro GmbH
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data KonnektivitätTrivadis
 
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-adminsbccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-adminsICS User Group
 

Semelhante a Sensitive Daten in der Oracle Datenbank (20)

DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbas
DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbasDOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbas
DOAG SIG Security 2014 in Hamburg: Enterprise User Security for DBAs #eus4dbas
 
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...
Die Datenbank ist nicht immer Schuld - Gründe warum Datenbank-Migration schei...
 
Secure Technical Implementation Guide for databases by Martin Obst
Secure Technical Implementation Guide for databases by Martin ObstSecure Technical Implementation Guide for databases by Martin Obst
Secure Technical Implementation Guide for databases by Martin Obst
 
Implementierbare Sicherheitsregeln im Enterprise Manager
Implementierbare Sicherheitsregeln im Enterprise ManagerImplementierbare Sicherheitsregeln im Enterprise Manager
Implementierbare Sicherheitsregeln im Enterprise Manager
 
Oracle Database Security Assessment Tool (DBSAT)
Oracle Database Security Assessment Tool (DBSAT)Oracle Database Security Assessment Tool (DBSAT)
Oracle Database Security Assessment Tool (DBSAT)
 
Überblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12cÜberblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12c
 
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AG
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AGQualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AG
Qualitätssicherung in ADF Projekten der IKB Deutschen Industriebank AG
 
Oracle Datenbank Manageability
Oracle Datenbank ManageabilityOracle Datenbank Manageability
Oracle Datenbank Manageability
 
Zeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und Recovery
Zeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und RecoveryZeros Data Loss Recovery Appliance (ZDLRA) - Neue Wege für Backup und Recovery
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
DOAG 2014 - Enterprise User Security Von der Business Rolle bis in die DatenbankDOAG 2014 - Enterprise User Security Von der Business Rolle bis in die Datenbank
DOAG 2014 - Enterprise User Security Von der Business Rolle bis in die Datenbank
 
cynapspro endpoint data protection 2010 - Bedienungsleitfaden
cynapspro endpoint data protection 2010 - Bedienungsleitfadencynapspro endpoint data protection 2010 - Bedienungsleitfaden
cynapspro endpoint data protection 2010 - Bedienungsleitfaden
 
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
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
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
 
Oracle Text 12c New Features
Oracle Text 12c New FeaturesOracle Text 12c New Features
Oracle Text 12c New Features
 
Eine geniale Lösung für das Benutzermanagement by Suvad Sahovic
Eine geniale Lösung für das Benutzermanagement by Suvad SahovicEine geniale Lösung für das Benutzermanagement by Suvad Sahovic
Eine geniale Lösung für das Benutzermanagement by Suvad Sahovic
 
Oracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin BergerOracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin Berger
 
Oracle Database Backup Service
Oracle Database Backup ServiceOracle Database Backup Service
Oracle Database Backup Service
 
cynapspro data endpoint protection 2010 - Installationsleitfaden
cynapspro data endpoint protection 2010 - Installationsleitfadencynapspro data endpoint protection 2010 - Installationsleitfaden
cynapspro data endpoint protection 2010 - Installationsleitfaden
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data Konnektivität
 
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-adminsbccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
 

Mais de Ulrike Schwinn

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

Mais de Ulrike Schwinn (10)

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

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

Notas do Editor

  1. 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
  2. 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.
  3. 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.
  4. Oracle Databases or non-oracle on prem, cloud Add commands + step 1,2 ,3
  5. 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]
  6. 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.
  7. Edit or Update Bigger fonts Animation on SSN
  8. Drop first table