überraschend Exadata Security: Was ist möglich? DOAG 2017 Exaday, 20.05.2017 Borys Neselovskyi, Solution Architect © OPITZ CONSULTING 2016 mehr Möglichkeiten! Agenda 1 Einführung und Motivation 2 Ist Exadata mandantenfähig? 3 Härtung von Komponenten 4 Was gerne vergessen wird … 5 Fazit © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Seite 2 Einführung und Motivation © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? 1 Seite 3 Einführung „Wo du sicher bist, setze Fragezeichen“ Wieslaw Brudzinski (1920-1996), poln. Schriftsteller © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Überblick: Sicherheit • • • • • DMZ Firewall ACL Zugriffsrichtlinien PKI „Das einzig sichere System müsste ausgeschaltet, in einem versiegelten und von Stahlbeton ummantelten Raum und von bewaffneten Schutztruppen umstellt sein.“ Zitat von Sicherheitsexperte Gene Spafford Security • • • TDE SSL DBMS_CRYPTO © OPITZ CONSULTING 2016 • Anmeldung an System Exadata Security: Was ist möglich? Überblick: Sicherheit So wenig Rechte wie möglich für Benutzer und Programme Keine Admin-Rechte für Benutzer Kein Zugang zum Betriebssystem Exadata ist sicher Nur notwendige Pakete installiert Storage Servers: Auditing und Accounting auf unterschiedenen Ebenen Storage Server: Aktivierung Cell Attribut sysLogConf Datenbank Server: Standard BS Auditing Datenbank-Auditing Fine Grained Auditing (FGA) © OPITZ CONSULTING 2016 BS-Auditing: Auditing für Systembenutzer Passwortregeln: erlauben nur komplizierte Passwörter Erweiterte Sicherheitskonfiguration für Dienste starten, die notwendig sind Aktivieren der Firewall (iptables) Installation von Tools ist nicht erlaubt!!! SSH / NTP Verschlüsselung: Standard 140 of FIPS (Federal Information Processing Standards) Exadata Security: Was ist möglich? Exadata Sicherheit Security planen (vor OEDA): BS-Benutzer: Separation of duties: root grid oracle Storage Server: Exadata Standards (OEDA): Database Server: Database Server/Storage Server: Nur Minimum an Software installiert Account blockiert nach x fehlgeschlagenen Anmeldungen Limitierung „su“-Kommando Überflüssige Dienste sind deaktiviert Z. B. Internet Service Daemon: inetd/xinetd © OPITZ CONSULTING 2016 Software Firewall aktiviert Restriktive Dateiberechtigungen SSH-v2-Protokoll Unsichere SSH-Authentifizierung deaktiviert Unnötige Protokolle und Module sind deaktiviert Für root-Benutzer die SSH-Äquivalenz deaktiviert Passwort-Regeln (wird später erläutert) Exadata Security: Was ist möglich? Ist Exadata mandantenfähig? © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? 2 Seite 8 PCI DSS Standard PCI DSS Standard: Payment Card Industry Data Security Standard: 12 Regeln: Installation und Pflege einer Firewall zum Schutz der Daten Ändern von Kennwörtern und anderen Sicherheitseinstellungen nach der Werksauslieferung Schutz der gespeicherten Daten von Kreditkarteninhabern Verschlüsselte Übertragung sensibler Daten von Kreditkarteninhabern in öffentlichen Rechnernetzen Einsatz und regelmäßiges Update von Virenschutzprogrammen Entwicklung und Pflege sicherer Systeme und Anwendungen Einschränken von Datenzugriffen auf das Notwendige Zuteilen einer eindeutigen Benutzerkennung für jede Person mit Rechnerzugang Beschränkung des physikalischen Zugriffs auf Daten von Kreditkarteninhabern Protokollieren und Prüfen aller Zugriffe auf Daten von Kreditkarteninhabern Regelmäßige Prüfungen aller Sicherheitssysteme und -prozesse Einführen und Einhalten von Richtlinien in Bezug auf Informationssicherheit © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Exadata Umgebungen isolieren Public/Management Netzwerk: VLAN Tagging Interconnect: Cluster-Kommunikation Virtualisierung ermöglicht komplette Isolierung ASM-Sicherheitsmöglichkeiten: Open Mode ASM-scoped Mode Database-scoped Mode Isolierung Netzwerkverkehr: Getrennte Cluster Isolierung auf der ASM-Ebene Netzwerk-Isolierung Virtualisierung oder Bare Metall? VISA Kunden MasterCard Kunden Was ist möglich? Daten von verschiedenen Mandanten: Isolierung von Datenbanken: Getrennte Cluster Datenbank-Optionen: © OPITZ CONSULTING 2016 Infiniband: Partitionierung Kein Schutz für Infiniband Fabric Exadata Security: Was ist möglich? Database Vault/Virtual Private Database Label Security Blueprint: zwei RAC Cluster Exadata Datenbank Server 1 vnic1 Mandant 1 VLAN 1 vnic2 vnic1 Public/Client Netzwerk vnic2 DB_1 Instanz 1 DomU1_Knoten1 Mandant 1 Partition Mandant 1 Disks DB_2 Instanz 1 DomU2_Knoten1 IB Fabric Exadata Storage Server 1 - 3 Exadata Datenbank Server 2 vnic1 Mandant 2 VLAN 2 vnic2 vnic1 vnic2 © OPITZ CONSULTING 2016 DB_1 Instanz 2 DomU1_Knoten2 DB_2 Instanz 2 DomU2_Knoten2 Exadata Security: Was ist möglich? Mandant 2 Partition Mandant 2 Disks Client-Netzwerk-Partitionierung VLAN Tagging © OPITZ CONSULTING 2016 Basierend auf 802.1Q-Technologie Zusätzliche Netzwerke via Public Network Separate Cluster-Ressourcen: SCAN und VIP‘s Oracle Exadata Storage Server Software-Version >= 12.1.2.1.1 OEDA Integration Oracle Exadata Deployment Assistant Implementing Tagged VLAN Interfaces in Oracle VM Environments on Exadata (Doc ID 2018550.1) Enabling 802.1Q VLAN Tagging in Exadata Database Machine over client networks (Doc ID 1423676.1) Exadata Security: Was ist möglich? Infiniband-Netzwerk-Partitionierung Oracle Exadata Storage Server Software-Version 12.1.2.1.2 and later Infiniband partitioning is now available for Virtualized Exadata Environments and can be configured with the Oracle Exadata Deployment Assistant. Voraussetzungen: Implementing Infiniband Partitioning across OVM RAC clusters on Exadata (Doc ID 2075398.1) Exadata Virtualisierung Alle UserDomains und Storage Server nutzen default key partition: 0xFFFF SSH passwortloser root-Zugang von dom0-Server zu: Allen OVM RAC-Servern Allen Storage-Servern Allen Infiniband Switches Infiniband Switches Firmware 2.0.4 und höher Note that partitioning does not protect an Infiniband fabric. Partitioning only offers Infiniband traffic isolation between virtual machines on a host. © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? ASM Sicherheitsmodi Open Mode Jede Datenbank kann auf jede Griddisk zugreifen: ASM-scoped Security Mode Standard Test-/Entwicklungsumgebung Zugriff auf einzelne Disks von einem ASM Cluster Database-scoped Security Mode Zugriff auf einzelne Disks von einer Datenbank CDB-Ebene Klassische Datenbank © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? ASM-scoped Security Mode Konfiguration: Sicherheitsschlüssel erstellen (Storage Server): Schlüssel in die Datei cellkey.ora eintragen: Datei kopieren in das Verzeichnis /etc/oracle/cell/network-config: Alle Datenbank Server des ASM Clusters Alle Storage Server des Serverpools Zuweisen Sicherheitsschlüssel zu ASM Cluster (Storage Server): Grid Disks dem ASM Cluster zuweisen: Hinweis: Cluster Name ermitteln: SQL> SHOW PARAMETER db_unique_name © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Database-scoped Security Mode Storage Grid Discs Datenbanken Voraussetzung: ASM-scoped Security ist konfiguriert Konfiguration: Sicherheitsschlüssel für jede Datenbank erstellen: Schlüssel in die Datei cellkey.ora eintragen: Datei auf alle Datenbank-Server kopieren: DB1_DATA DB1 DB2_DATA DB1_RECO Verzeichnis $ORACLE_HOME/admin/<db_name>/pfile/cellkey.ora Auf allen Storage-Servern den Schlüssel zuweisen: Grid Disks dem ASM Cluster zuweisen: DB2 DB2_RECO © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Härtung vom Komponenten © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? 3 Seite 17 Härtung von Komponenten Netzwerk Infiniband Switches Client-Netzwerk Storage Server Datenbank-Server ILOM-Konsole Datenbank Infrastruktur Middleware Clients © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? ILOM-Konsole ILOM-Sicherheit: Weboberfläche: SSL Kommandozeile: Secure Shell IPMI v2.0 ILOM-Passwort setzen (wenn Zugang deaktiviert ist): Auditing von Operationen Benutzerverwaltung ILOM-Passwort ändern: Tipp: Kommunikation über: Von Datenbank-Server: ILOM CLI starten: ipmitool sunoem cli Anmelden an ILOM via SSH Kommando ausführen: Passwort setzen: set /SP/users/<user_name> <password> set /SP/users/<user_name> <password> © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Benutzerverwaltung Best Practices Direkte Anmeldung von Admin User deaktivieren: Passwort-Regeln: Datenbank Server: root / grid / oracle Nicht privilegierten Benutzer erstellen sudo konfigurieren root / celladmin / cellmonitor OEM Überwachung: cellmonitor ExaCLI von Datenbank-Server ausführen REST API © OPITZ CONSULTING 2016 Ziffern Kleinbuchstaben Großbuchstaben Sonderzeichen Passwortlänge: Storage Server: SSH-Zugriff deaktivieren: Laufzeit: 90 Tage Erlaubte Zeichen: Storage-Server-Benutzer: 3 Zeichenklassen: min. 12 Zeichen 4 Zeichenklassen: min. 8 Zeichen Neues Passwort <> altes Passwort Exadata Security: Was ist möglich? Verwaltung von Passwörtern Passwort setzen: BS-Benutzer: passwd username Grand Unified Bootloader (GRUB)-Passwort ändern: Information: How to change OS user password for Cell Node, Database Node, ILOM, KVM, Infiniband Switch, GigaBit Ethernet Switch and PDU on Exadata Database Machine (Doc ID 1291766.1) Kommando ausführen: grub-md5-crypt Password zwei Mal eingeben: es erscheint eine Zeichenkette Die Datei /boot/grub/grub.conf editieren: password --md5 hashed_string © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Benutzerverwaltung Anmeldung: 1 x fehlgeschlagener Login-Versuch: 10 Minuten Sperre 5 x fehlgeschlagener Login: Benutzer gesperrt Fehlgeschlagene Anmeldungen anzeigen: Benutzer entsperren: Skript ausführen: /opt/oracle.SupportTools/harden_passwords_rese t_root_ssh /sbin/pam_tally2 –user username –reset Datei /opt/oracle.cellos/RESECURED_NODE erstellen: Alle Dienste beenden: cellcli –e alter cell shutdown service all /sbin/pam_tally2 Sicherheitsregeln aktivieren: (nur) Datenbank-Server: Anpassung der Passwort-Regeln: Datei /etc/login.defs SSH Session inaktiv: nach 7200 Sekunden: beendet © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Netzwerk-Sicherheit Client Netzwerk/Management Netzwerk/ Infiniband Firewall Verschlüsselung ACLs verwenden Time-outs definieren Härtung von Netzwerk Switches: Netzwerkdienste: AAA (Authentifizierung/Autorisierung/Accounting) Port Mirroring aktivieren: Intrusion Detection System Auto-Trunking deaktivieren Starten nur notwendiger Dienste Dienste härten Logs sammeln und auswerten © OPITZ CONSULTING 2016 Bild Quelle: https://docs.oracle.com/cd/E50790_01/doc/doc.121/e50469/toc.htm Exadata Security: Was ist möglich? Datenzugriff steuern Datenbankzugriff: „Separation of duties“ fürs System: Eigene Accounts für: RDBMS ASM „Separation of duties“ für Daten: Oracle Database Vault Authentifizierung: Passwort RADIUS und Kerberos Oracle Enterprise User Security LDAP (z. B. Active Directory) Netzwerkzugriffe einschränken: Firewall: iptables/ACLs Verschlüsselung: SSH: Zugriff auf Systeme und ILOM SSL/TLS nach außen Datenbank: © OPITZ CONSULTING 2016 Transparent Date Encryption (TDE) Oracle Advanced Security Option DBMS_CRYPTO PL/SQL Package RMAN Backup-Verschlüsselung SSL-Verschlüsselung Oracle Net/JDBC SSL-Verschlüsselung Data Guard Verkehr Exadata Security: Was ist möglich? Datenbank-Sicherheit Oracle Database Optionen und Lösungen Oracle Advanced Security Data Masking Oracle Database Vault Oracle Label Security Oracle Secure Backup Oracle Total Recall Oracle Database Security Assessment Tool: Responses to common Exadata security scan findings (Doc ID 1405320.1) Database Security Assessment Tool User Guide Note: 2138254.1 - Oracle Database Security Assessment Tool (DBSAT) (Doc ID 2138254.1) Vortrag zu Security Optionen RDBMS 12c von Norman Sibbing: https://www.doag.org/formes/servlet/DocNavi?action=getFile&did=9099742&key= © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Was gerne vergessen wird … © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? 4 Seite 27 Organisatorische Maßnahmen „Die Organisationen stecken Millionen von Dollars in Firewalls und Sicherheitssysteme und verschwenden ihr Geld, da keine dieser Maßnahmen das schwächste Glied der Sicherheitskette berücksichtigt: Die Anwender und Systemadministratoren.“ Zitat des bekannten Hackers Kevin Mitnick Quelle der Abbildung: http://i.computerbild.de/imgs/5/6/1/7/7/8/4/Virenbefall-658x370a586cadb2e086090.jpg © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Organisatorische Maßnahmen Hardware schützen: Exadata: Eingeschränkter Zugang zum Serverraum Die Rack-Tür verriegeln Hardware-Aktivierungsschlüssel und Lizenzen gut aufbewahren Notieren von Serial Numbers von allen Komponenten: My Oracle Support Note 949614.1, "How To Obtain The Serial Number Associated With The System Board, Motherboard, Disk Controller, Disks, Infiniband HCA And More Contained In A Cell Or Compute Box (Exadata-Sun V2 or X2 / 11.2)? " My Oracle Support Note 1299791.1, "How to Determine the Serial Number of an Exadata Infiniband Switch“ Arbeitsplatz: Schutz vor einem Zugriff durch andere Personen Schutz vor Viren und Malware Passwörter und Zugangsdaten gut aufbewahren Zugriff auf USB Ports beschränken Sicherer Umgang mit E-Mails © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Patching und Health Check Diese Patches erscheinen viermal jährlich: Zentrales Patch Dokument: Infiniband Patches Storage Server Patches Datenbank Server Patches RDBMS und GRID Infrastruktur MOS Note 888828.1 Health Check: Tool ExaCheck MOS Note 1070954.1 © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Fazit © OPITZ CONSULTING 2016 5 Exadata Security: Was ist möglich? Seite 31 Fazit Exadata ist für den sicheren Betrieb geeignet. © OPITZ CONSULTING 2016 Konfiguration und Implementierung sind aufwendig. Exadata Security: Was ist möglich? Fragen © OPITZ CONSULTING 2016 Exadata Security: Was ist möglich? Seite 33 überraschend Kontaktdaten Borys Neselovskyi Solution Architect OPITZ CONSULTING Deutschland GmbH Lazarettstr. 15, 45127 Essen, Germany Phone: Mail: +49 173 7279029 [email protected] @bneselov https://borysneselovskyi.wordpress.com WWW.OPITZ-CONSULTING.COM © OPITZ CONSULTING 2016 @OC_WIRE OPITZCONSULTING Exadata Security: Was ist möglich? opitzconsulting mehr Möglichkeiten!