Verschlüsseln als Überlebensstrategie



Ähnliche Dokumente
<Insert Picture Here> Verschlüsselung in der Datenbank

<Insert Picture Here> Security in der Oracle Datenbank

<Insert Picture Here> Transparent Data Encryption in Oracle 11gR2

DOAG 2009 Konferenz Nürnberg. Klaus Reimers ORDIX AG, Köln

TDE und DV für hostingfähige Datenbanken mit sicherheitssensiblen Daten. Heinz-Wilhelm Fabry Senior Leitender Systemberater

Oracle Datenbank Verschlüsselung allgemein und Oracle Key Vault

Oracle Transparent Data Encryption

Verschlüsselung. Klaus Reimers ORDIX AG Köln. Verschlüsselung, encrypt, decrypt, dbms_obfuscation_toolkit, dbms_crypto, wallet, datapump, rman

Verschlüsseln, auf jeden Fall verschlüsseln!

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum:

SQL (Structured Query Language) Schemata Datentypen

Oracle Backup und Recovery

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und combit GmbH Untere Laube Konstanz

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Die Idee der Recovery Area: Sie enthält bei Beschädiging der Database Area alles, was für ein erfolgreiches Recovery gebraucht wird

Darüber hinaus wird das Training dazu beitragen, das Verständnis für die neuen Möglichkeiten zu erlangen.

LDAP Konfiguration nach einem Update auf Version 6.3 Version 1.2 Stand: 23. Januar 2012 Copyright MATESO GmbH

Prozedurale Datenbank- Anwendungsprogrammierung


Datenbanken für Online Untersuchungen

2. Einrichtung der Verbindung zum Novell-NetStorage-Server

Ein neues Outlook Konto können Sie im Control Panel über den Eintrag Mail erstellen.

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Oracle Database Backup Service - DR mit der Cloud

Naxtron GmbH Schlosstalstrasse Winterthur. Subject. New Features Oracle 9i Architecture

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

SMARTtill Server mit Manager

DB2 Codepage Umstellung

Enigmail Konfiguration

... Kontrolldatei administrieren

Kopplung von Datenbanken

Auto-Provisionierung tiptel 31x0 mit Yeastar MyPBX

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

Datenbanken und Oracle, Teil 2

f Link Datenbank installieren und einrichten

Installationsanweisung editit

Safexpert Oracle Datenbank Konnektor. Stand: IBF-Automatisierungs-und Sicherheitstechnik GmbH A-6682 Vils Bahnhofstraße 8

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Urs Meier Art der Info Technical Info (Februar 2002) Aus unserer Projekterfahrung und Forschung

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung

Geschäftslogik in die Datenbank Umstellung eines Kernbanksystems

NetMan Desktop Manager Vorbereitung und Konfiguration des Terminalservers

a.sign Client Lotus Notes Konfiguration

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein:

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick Parameterübergabe...

Anleitung. Lesezugriff auf die App CHARLY Termine unter Android Stand:

Sichere Anwendung und Administration von Verschlüsselung in Oracle Datenbanken. Trennung von Schlüssel- und Datenbankadministration

KeePass Anleitung. 1.0Allgemeine Informationen zu Keepass. KeePass unter Windows7

eurovat Magento Extension Magento - Extension Extension V1.4.2 Dokumentation Version 1.0 SNM-Portal UG (haftungsbeschränkt) & Co. KG Vorherstraße 17

Oracle Real Application Clusters: Requirements

MaxDB Einführung in die Installation und Nutzung von MaxDB (Version )

Anleitung zum Prüfen von WebDAV

Höhere Sicherheit für SAP-Daten durch Oracle Database Vault und Transparente Datenverschlüsselung

<Insert Picture Here> T4 and the Red Crypto Stack

PayPal PLUS für Shopware

Aktualisierung zum Buch Windows und PostgreSQL

SharePoint Security. Dr. Bruno Quint CORISECIO - Open Source Security Solutions CORISECIO

Behebung des sog. Heartbleed-Bugs (CVE ) in der Krypto-Bibliothek OpenSSL.

Nikon Message Center

Verschlüsselte Daten in der Datenbank Von 8i bis 10g Release 2

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Dokumentation für das Web-basierte Abkürzungsverzeichnis (Oracle mod_plsql / Apache)

Entwicklung einer Informix- Administrationsdatenbank mit ERwin

DATENSCHUTZ. Konzernweite Mailverschlüsselung. sselung

Ora Education GmbH. Lehrgang: Oracle Application Server 10g R3: Administration

Löschen eines erkannten aber noch nicht konfigurierten Laufwerks

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

teamsync Kurzanleitung

Matrix42. Matrix42 Cloud Trial Erste Schritte. Version

Systemvoraussetzungen

SQL für Trolle. mag.e. Dienstag, Qt-Seminar

Funktionsübersicht. Beschreibung der zentralen Funktionen von PLOX

Die Backup-Voreinstellungen finden Sie in M-System Server unter dem Reiter "Wartung".

Java Application 1 Java Application 2. JDBC DriverManager. JDBC-ODBC Br idge. ODBC Driver Manager. Dr iver C. Dr iver D.

Benutzerhandbuch - Elterliche Kontrolle

Administrator-Anleitung

Technische Beschreibung: EPOD Server

Datenbanksysteme 2 Frühjahr-/Sommersemester Mai 2014

SSH Authentifizierung über Public Key

Installationsleitfaden kabelsafe backup professional unter MS Windows

Dokumentation QuickHMI-Schnittstelle für Oracle Datenbanken

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration


TERRA Kasse Backup Service

1. Zugriff auf das Lonza Netzwerk von ihrem privaten PC oder von einem Internet Café

Das neue Volume-Flag S (Scannen erforderlich)

EINSATZ VON MICROSOFT TERMINAL-SERVICES ODER CITRIX METAFRAME

Datenmanagement in Android-Apps. 16. Mai 2013

<Insert Picture Here> Security-Basics. Privilegien, Rollen, SQL und PL/SQL - inkl. 12c-Update. Carsten Czarski, ORACLE Deutschland B.V. Co.

Achung! User müssen unter Linux schon erstellt sein!

Release Notes. NCP Local License Server (Win32/64) 1. Neue Leistungsmerkmale und Erweiterungen. 3. Bekannte Einschränkungen

Lokales Netzwerk Probleme beim Verbinden eines Linux-Clients mit einem Windows 2003 Server Frage:

Freiberuflicher IT-Berater Schwerpunkte: Unix, Oracle, Netzwerk. IT-Berater. Dipl.-Inform.

Oracle Secure External Password Store

Wie mache ich eine Datensicherung vom SQL Server Express

Gezieltes Kontakt- und Kundenmanagement. Die Software für Ihren Erfolg 2,8 Millionen Anwender weltweit! Installationsleitfaden

MIN oder MAX Bildung per B*Tree Index Hint

Transkript:

<Insert Picture Here> Verschlüsseln als Überlebensstrategie Netzwerk- und Datenverschlüsselung in Oracle Datenbanken Heinz-Wilhelm Fabry ORACLE Deutschland GmbH 1

Agenda Datentransfer über das Netzwerk Daten in der Datenbank Backups Dump-/Exportdateien Agenda Datentransfer über das Netzwerk Daten in der Datenbank Backups Dump-/Exportdateien 2

Daten verschlüsselt übertragen x#!s%u3 Nur verfügbar mit Advanced Security Option Schutz vor Informationsverlust und vor Veränderung von Daten im Transfer Verschlüsseln der Übertragung von Oracle-Daten Vom Server zum Client Vom Client zum Server Von Server zu Server Unterstützt gängige Verfahren RC4, DES, Triple-DES, AES, MD5, SHA-1 Informationsquelle Netzwerk Login (Benutzername / Password) SQL Abfragen Ergebnisdaten ALTER USER IDENTIFIED BY pwort SQL*Plus: password Verschlüsselt Klartext Klartext Klartext Verschlüsselt 3

Daten verschlüsselt übertragen - Wie? SQLNET.ORA sqlnet.encryption_server sqlnet.encryption_types_server sqlnet.crypto_seed sqlnet.crypto_checksum_server sqlnet.crypto_checksum_types_server sqlnet.encryption_client sqlnet.encryption_types_client sqlnet.crypto_checksum_client sqlnet.crypto_checksum_types_client = required = AES192 = 'abcdefg1234567' = required = MD5 = required = AES192 = required = MD5 Verschlüsselung einschalten Client REJECTED ACCEPTED REQUESTED REQUIRED REJECTED aus aus aus Keine V.* Server ACCEPTED aus aus** ein ein REQUESTED aus ein ein ein REQUIRED Keine V.* ein ein ein * Keine Verbindung ** Default ist Accepted (Verschlüsselung und Prüfsummenverfahren sind ausgeschaltet) 4

Konfiguration mit Oracle Net Manager Daten verschlüsselt übertragen - Ergebnis Vorher... Nachher... 5

Agenda Datentransfer über das Netzwerk Daten in der Datenbank Backups Dump-/Exportdateien Verschlüsselt speichern Schutz vor unbefugtem Lesen der Daten Es geht NICHT darum, das Lesen oder Ändern über die SQL-Schnittstelle zu unterbinden Es geht um Verschlüsselung auf der Platte, im Backup, im Dump-File-Set Schutz vor Insidern Schutz z.b. bei entsorgten Platten Schutz z.b. beim Verlust auf dem Transport ins Schließfach 6

Daten verschlüsselt speichern Seit Oracle8i mittels PL/SQL-API Verfügbar in der Standard und der Enterprise Edition DBMS_OBFUSCATION_TOOLKIT Unterstützt ausschließlich den DES- bzw. 3DES- Algorithmus und wird nicht mehr empfohlen DBMS_CRYPTO ab Oracle Database 10g Seit Oracle Database 10g verfügbar innerhalb von Advanced Security (Option) Transparent Data Encryption (TDE) Verschlüsselung von Tabellenspalten Seit Oracle Database 11g Verschlüsselung von Tablespaces Arbeiten mit DBMS_CRYPTO Anwendungen / Trigger rufen das API auf Kein automatisches Schlüsselmanagement Package stellt Prozeduren und Funktionen zur Verfügung Zum Verschlüsseln und Entschlüsseln Zum Arbeiten mit Prüfsummen 7

Verschlüsseln mit DBMS_CRYPTO CREATE OR REPLACE FUNCTION crypt (eingabe IN VARCHAR2) RETURN RAW IS v_rohdaten RAW(200); v_schluessel RAW(32); -- 256-bit v_verschluesselung PLS_INTEGER := DBMS_CRYPTO.ENCRYPT_AES256 + DBMS_CRYPTO.CHAIN_CBC + DBMS_CRYPTO.PAD_ZERO; BEGIN SELECT schluessel INTO v_schluessel FROM schluesseltabelle WHERE sysdate BETWEEN startdatum AND nvl(enddatum, sysdate); v_rohdaten := DBMS_CRYPTO.ENCRYPT( src => UTL_I18N.STRING_TO_RAW (eingabe, 'AL32UTF8'), typ => v_verschluesselung, key => v_schluessel); RETURN v_rohdaten; END; Transparent Data Encryption (TDE) Anwendung SQL-Schnittstelle entschlüsselt Daten ASO Netzwerk- Verschlüsselung Daten werden verschlüsselt auf die Platte geschrieben Daten sind verschlüsselt im Backup Verschlüsseln von Tabellenspalten Unterstützte Datentypen CHAR NCHAR VARCHAR2 NVARCHAR2 NUMBER BINARY_DOUBLE BINARY_FLOAT DATE TIMESTAMP RAW Übernimmt das Key Management 8

TDE - Nicht unterstützte Features Foreign Keys LOBs Logical Standby Transportable Tablespace Oracle Streams Synchrones / asynchrones Change Data Capture (CDC) LogMiner Direct Path Insert Materialized View Logs Master Key und Tabellenschlüssel Master Key im PKCS#12 Wallet Tabellenschlüssel verschlüsselt durch Master Key (Wallet kann auch für Secure Backup genutzt werden) Tabellenschlüssel verschlüsselt Daten 9

TDE einsetzen - Vorbereitung In sqlnet.ora WALLET-Speicherort angeben (ENCRYPTION_)WALLET_LOCATION = (SOURCE = (METHOD=FILE) (METHOD_DATA= (DIRECTORY= $ORACLE_BASE/admin/<SID>/wallet))) Kein Speicherort in SQLNET.ORA angegeben Wallet (ewallet.p12) in $ORACLE_BASE/admin/<SID>/wallet Verzeichnis muß existieren Initialisieren des Master Key durch ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "einpasswort" einpasswort ist das Wallet-Passwort, nicht der Master Key TDE - Ändern des Master Key Zwingend nach Kompromittiertem Master Key Spezifischen Compliance-Regeln ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "einpasswort" Alle Tabellen-Schlüssel werden neu verschlüsselt KEINE erneute Verschlüsselung der Spalten Passwort und Master Key sind unabhängig voneinander Ändern des Passwortes über Oracle Wallet Manager (owm) 10

Funktionstrennung & Aufgabenverteilung DBA startet Datenbank Security-DBA öffnet Wallet Nach jedem STARTUP ALTER SYSTEM SET WALLET OPEN IDENTIFIED BY "einpasswort" Alternativ: Erzeugen eines Auto Open Wallet mit dem Oracle Wallet Manager (owm) TDE nutzen CREATE TABLE kunden (name VARCHAR2(30), id NUMBER ENCRYPT USING 'AES192' IDENTIFIED BY einpasswort NO SALT); ALTER TABLE produkte MODIFY (...); Verschlüsselungsalgorithmus muß für alle Spalten einer Tabelle identisch sein TDE und Indexe Gleichheitssuche über B*Tree-Index nur mit NO SALT LIKE-Vergleiche oder Range-Scans über eine verschlüsselte Indexspalte sind nicht möglich Es ist nicht möglich, Spalten in Tabellen von SYS zu verschlüsseln 11

TDE - Verschlüsselung ändern Verschiedene Algorithmen Standard ist AES192 Wechsel von Schlüsseln möglich (Master Key s.o.) Auf Tabellenebene ALTER TABLE kunden REKEY Wechsel des Algorithmus möglich ALTER TABLE kunden REKEY USING 'AES256' Durchgeführt als UPDATE auf alle Zeilen Nur lesender Zugriff auf die Tabelle Kein DML Alternativ mit DBMS_REDEFINITION TDE - Verschlüsselung aufheben ALTER TABLE produkte MODIFY (preis decrypt) 12

TDE - Tablespace-Verschlüsselung Tablespaces beim ersten Anlegen als verschlüsselt deklarieren Tablespaces nicht nachträglich zu ver- oder entschlüsseln TDE-Wallet muß vorhanden und geöffnet sein Transport vorhandener Daten in verschlüsselte Tablespaces mit DATA PUMP, CTAS, ALTER TABLE... MOVE CREATE TABLESPACE sicheristsicher DATAFILE '$ORACLE_BASE/dbdata/orcl/tdedatei.dbf' SIZE 20G ENCRYPTION USING 'AES128' DEFAULT STORAGE (encrypt); Hinweise: Tablespace-Verschlüsselung KEINERLEI funktionale Einschränkungen Unterstützt z.b. sämtliche Segment-Typen Bei LOBs alternativ über Secure Files CREATE TABLE tabelle (region VARCHAR2(20), a BLOB) LOB(a) STORE AS SECUREFILE (ENCRYPT USING 'AES128') Unterstützt z.b. INDEX RANGE SCANs und FOREIGN KEYs Verwendet immer SALT Verschlüsselung wirksam auch für REDO-Einträge, UNDO und TEMPORARY SEGMENTE Schlüssel ist in 11.1 NICHT änderbar 13

Hardware Security Module (HSM) Speichern des Schlüssels für die Spaltenverschlüsselung in einem HSM in der Datenbank ab Version 11.1.0.6 Ab 11.1.0.7 auch für Tablespace-Verschlüsselung Erleichtert das Schlüsselmanagement in verteilten Umgebungen z.b. mit Data Guard und RAC Standard PKCS #11-API erlaubt Rückgriff auf Module unterschiedlicher Anbieter Oracle-Zertifizierungen beachten (AYFSC*) Ver- / Entschlüsseln findet nach wie vor auf dem Server statt *Ask Your Friendly Sales Consultant HSM implementieren Vorgehensweise zum Einsatz eines HSM ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "benutzerid:passwort" * Vorgehensweise beim Wechsel von Wallet zu HSM ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "benutzerid:passwort" MIGRATE USING "walletpasswort" Eventuell verwendete Public Key-Verschlüsselung wird umgesetzt auf symmetrische Verschlüsselung (AES) Nachträglicher Einsatz eines HSM für die Tablespace- Verschlüsselung NICHT möglich * Aus der Management-Umgebung des HSM 14

LOB-Verschlüsselung mit TDE Ausschließlich mit SecureFiles CREATE TABLE tabelle (region VARCHAR2(20), a BLOB) LOB(a) STORE AS SECUREFILE ( ENCRYPT USING 'AES128') TDE einsetzen: Vorbereitung im EM 15

TDE einsetzen: Vorbereitung im EM TDE einsetzen: Vorbereitung im EM 16

TDE einsetzen: Vorbereitung im EM TDE einsetzen: Implementieren im EM 17

Agenda Datentransfer über das Netzwerk Daten in der Datenbank Backups Dump-/Exportdateien Backups verschlüsseln mit RMAN Nur verfügbar mit Advanced Security Option Hintergrund Unverschlüsseltes Backup kann in die falschen Hände geraten RMAN> SET ENCRYPTION IDENTIFIED BY <password> ON FOR ALL TABLESPACES; RMAN> BACKUP DATABASE; Nutzt TDE wallet Automatisches Entschlüsseln bei Restore Restore benötigt Backup Wallet Passwort für Wallet 18

Oracle Secure Backup File Systeme Setzt ASO nicht voraus Verfügbar für SE und EE Ist vollständig RMAN kompatibel Kostengünstig Vollständig in Enterprise Manager integriert Sichert auf Band Unterstützt alle gängigen Tape Libraries und Laufwerke Sichert Datenbanken Dateisysteme aller Art (einschließlich OCFS) Oracle Homes, Oracle Application Server,... Linux, Unix Win., OCFS, Filer Datenbanken RMAN Oracle Backup Agenda Datentransfer über das Netzwerk Daten in der Datenbank Backups Dump-/Exportdateien 19

Data Pump-Verschlüsselung Nur verfügbar mit Advanced Security Option Steuerung über Parameter ENCRYPTION ALL / DATA_ONLY / ENCRYPTED_COLUMNS_ONLY / METADATA_ONLY / NONE ENCRYPTION_ALGORITHM AES128 / AES192 / AES256 ENCRYPTION_MODE DUAL / PASSWORD / TRANSPARENT ENCRYPTION_PASSWORD expdp scott/tiger encryption=all... directory=dmpdir... 20