Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Datenbank Verschlüsselung - Welcher Ansatz?

Frage Sicherheit Verschlüsselung & Zertifikate

Mitglied: homedom

homedom (Level 1) - Jetzt verbinden

08.12.2012 um 12:32 Uhr, 10129 Aufrufe, 5 Kommentare

Hallo,
ich befasse mich zur Zeit mit der Verschlüsselung von einer MySQL Datenbank. Dabei habe ich jetzt mehrere Ansätze gelesen und hätte noch ein paar Fragen dazu. Die Ansätze dich ich gelesen habe: Festplattenverschlüsselung (komplett), Verschlüsselung der Datenbankdateien, Verschlüsselung von Spalten mittels AES_ENCRYPT().
Das Ziel der Verschlüsselung ist doch, dass ein Angreifer der Zugriff auf die Datenbank / den PC hat, die Daten nicht lesen kann. So hätte ich das zumindest verstanden. Aber dann fallen die ersten beiden Ansätze doch flach oder? Denn zur Laufzeit des PCs, zu dem ein Angriff meist stattfindet, sind die Daten doch lesbar, oder nicht? Das heißt für mich, die ersten beiden Ansätze sind nur dann Interessant, wenn die Festplatte ausgebaut ist. Daher bleibt nur Ansatz 3, AES_ENCRYPT(). Aber gibt es da wirklich keine einfachere Möglichkeit um eine vergleichbare Sicherheit zu erzielen? Also dass nur die Anwendung selbst, die den Schlüssel kennt, die Daten lesen kann? Ist das überhaupt ein sinnvoller Ansatz? Immerhin macht das Schema-Änderungen und Wartungsarbeiten fast unmöglich oder zumindest schwer durchführbar.
Daher bleibt zum Schluss noch die Frage: wenn es heißt, Daten müssen verschlüsselt gespeichert werden (z.B. Gesundheitsdaten), reicht dann eine "einfache" Fesplattenverschlüsselung?
Danke, Gruß homedom
Mitglied: 108012
08.12.2012 um 14:18 Uhr
Hallo homedom,

vorerst eins, bitte nimm nicht die original Datenbank, bitte arbeite mit einer Kopie!
Zweitens mach ein Backup der Datenbank und zwar ein Vollbackup!

Mit dem Hinblick auf die Gesundheitsdaten gibt es zum Einen bestimmt Vorschriften oder aber zumindest
Hinweise darauf wie solche Daten zu handhaben sind! Und eben dort solltest Du zuerst ansetzen um heraus zu
finden was gegeben und vor allem was erfüllt sein muss, im Hinblick auf genau diese Gesundheitsdaten!

Man kann Zugriffe auf Datenbanken beschränken, so dass nicht jeder Benutzer alle Daten einsehen, drucken, auslesen oder abspeichern so wie exportieren kann.

Und man kann diese Daten auch noch zusätzlich verschlüsseln wenn sie abgespeichert werden, damit niemand (intern) einfach diese Datenbank stiehlt und die Daten verwerten kann!

Sollte nun jemand auch gewisse Daten zugreifen wird zum einen überprüft ob Sie/Er berechtigt ist diese einzusehen und zum anderen werden diese dann entschlüsselt und Sie/er kann damit arbeiten.

Dieses Vorgehen ist allerdings an eine gewissen Größe und Mitarbeiterzahl gebunden und nicht zu guter Letzt auch eine Implementationsfrage und hier liegt meist der wirkliche Fallstrick!

Was nützt Dir denn, sagen wir einmal der AES-256 Chipher wenn Du den jetzt falsch implementierst
und das ganze ist trotzdem zu umgehen oder zu entschlüsseln? Nichts, rein garnichts, ich meine wenn es um
die Kundendatenbank mit Margen, Tarifen und/oder Konditionen der Kunden geht ist das halt Pech für den
Betrieb und Dich, aber wenn es nun um Patientendaten oder Gesundheitsdaten geht, steht auch noch recht schnell der Landesbeauftragte für Datenschutz auf der Matte und stellt komische Fragen und dann ist es eben besser man kann sagen das es sich um eine zertifizierte Lösung der Firma x, y oder z handelt
um meist großen und teuren Ärger zu vermeiden!

Um sich aber gegen externe agierende Datendiebe zu schützen, wird Dir die Verschlüsselung alleine nicht ausreichen! Da kommt es wohl auch eher darauf an das Gesamtkonzept an.

Wo steht die Datenbank? (LAN, DMZ)
Wie ist diese geschützt, gesichert oder wird diese Verteidigt?
Sind das Geräte von einem namhaften Herstellern die nach einem bestimmten Standard zertifiziert sind?
z.B. die pfSense und auch mOnOwall sind tolle Firewall, aber nach was sind die zertifiziert worden und
wer bürgt oder haftet im Fall der Fälle dafür? Klar bei der normalen Firma und der o.g. Kundendatenbank
fragt danach keiner oder besser niemand, aber im Falle von Patientendaten oder Gesundheitsdaten
fragt der Landesbeauftragte des jeweiligen Bundeslandes danach und das dummer weise auch noch ziemlich energisch!

Da kann man halt nicht sagen das ist aber ne schicke Firewall und die Nehmen die Anderen Kumpels auch alle.
Mag ja alles richtig sein, nur in einem solchen Fall würde ich lieber sagen können, verhau wen anderes,
vor allem anderen aber wenn jemand klagt und die Versicherung dann nicht haften will, weil ja nichts
zertifiziert war und Standards nicht eingehalten wurden, dann wird es richtig ungemütlich, für Dich.

Zu guter Letzt falls Du vorhast die Festplatten alle am Feierabend zu verschlüsseln und dann
die Rechner und Server runter zu fahren, keine schlechte Idee vielleicht, aber bitte nimm das dann auch mit
in Deinen Backup Plan so auf und werde dem auch gerecht!

Wenn es wirklich um Gesundheitsdaten und/oder Patientendaten geht würde ich an Deiner Stelle da nicht selber etwas zusammen "schustern" und nachher sagt Dr. XYZ, das hat der EDV Dienstleister erledigt haut den und nicht mich!

Gruß und schönes WE
Dobby
Bitte warten ..
Mitglied: homedom
08.12.2012 um 16:30 Uhr
Hallo Dobby,
danke für deine ausführliche Antwort.
Leider hat das meine Frage nicht ganz beantwortet. Mir geht es mehr um die Datenbankverschlüsselung an sich.

Gruß, homedom
Bitte warten ..
Mitglied: 16568
09.12.2012, aktualisiert um 00:00 Uhr
Hallo Dobby,

Zitat von 108012:
Man kann Zugriffe auf Datenbanken beschränken, so dass nicht jeder Benutzer alle Daten einsehen, drucken, auslesen oder
abspeichern so wie exportieren kann.

Dann scheint mir, Du kennst MySQL nicht.
Grundsätzlich ist es so, daß die Datenbanken ja zum einen als Dateien vorliegen (bei MySQL kann man die sogar im laufenden Betrieb woandershinkopieren, und die Chancen stehen nicht schlecht, daß die dann auch werkeln...)
Und wie der Threadstarter gesagt hat, wenn die DB erst mal läuft, sind die Daten ohnehin unencrypted.


Grundsätzlich ist das aber bei ALLEN Datenbanken so:
ab dem Zeitpunkt, ab dem sie laufen, kann man durch sog. Injections an die Daten kommen, sofern man Fehler in der Drumherum-Applikation findet.

Daher lautet die wohl logischste Lösung für Dein Problem:
sauberer Code, prepared statements und mehrere Berechtigungsebenen


Lonesome Walker
Bitte warten ..
Mitglied: maretz
09.12.2012 um 12:04 Uhr
Moin,

ich denke du musst einfach klar sagen wogegen du dich schützen möchtest… Es gibt keine Methode "ProtectAnywhere".

Möchtest du dich dagegen schützen das jemand deinen Server klaut - dann wären die Platten zu verschlüsseln. Wenn man jetzt mal davon ausgeht das derjenige nicht das System erst mit Flüssigstickstoff behandelt und so wirklich das System einfriert sondern einfach ausschaltet und mitnimmt bist du dann schon auf dem richtigen Weg (natürlich nur wenn die nicht automatisch beim Start entschlüsselt werden - sondern hier irgendein Key/Token benötigt wird).

Möchtest du die Dateninhalte schützen (sei es SQL-Injection oder sei es einfach nen Physikalischer Zugriff auf die DB) dann musst du deine Daten dann selbst verschlüsseln. Dabei kannst du wählen ob du eine "Einweg-Verschlüsselung" wie MD5 nutzt (ja, ich weiss, ist keine Verschlüsselung!) - zum Beispiel für Passwörter die du ja nie wieder im Klartext zurück benötigst. Oder brauchst du die Entschlüsselung auch - dann musst du dir hier eines der bekannten Verfahren aussuchen…

Die dritte Stelle wäre die Datenübertragung. Es bringt ja wenig wenn du deine Daten mit 500000 Millionen Bits verschlüsselt hast und selbst in 1 Mrd. Jahren das keiner knacken kann - du aber die Daten dann im Klartext über die Leitung jagst so das jeder Sharki die einfach mal mitschneidet… Dagegen hilft dann natürlich auch keine Festplattenverschlüsselung usw…

Und dann hast du eben die schlimmste Stelle - das ist der Client. Denn alle 3 anderen Stellen kannst du beeinflussen. Aber: Wenn die Daten beim Client lokal zwischengespeichert werden, der Client nen Trojaner oder sonst was hat was da alle Daten mit weghaut dann guckst du dumm aus der Wäsche. Deine Platten verschlüsselt, deine DB alles verschlüsselt, beste SSL-Verschlüsselung für die Datenübertragung, saubere Keys das ein "Man in the middle" ausgeschlossen werden kann -> und auf dem Client sendet der Trojaner fröhlich munter alle deine Daten ins Web. HIER hilft dann eben nur ein vernünftiges Berechtigungskonzept -> so das der Client eben nur das sehen darf was er unbedingt muss und die anderen Daten gar nicht zum Client wandern…

Schönen Gruß,

Mike
Bitte warten ..
Mitglied: wolfgang2
17.11.2014 um 14:19 Uhr
Hallo,

AES ist gut und sicher. Ich weiß, Firmen sollen in Foren nichts reinschreiben, aber wir haben eine kostenfrei OpenSource Datenverschlüsselungs-Lösung: http://eperi.de/open-source/secrt/

Viele Grüße,
WOlfgang
Bitte warten ..
Ähnliche Inhalte
LAN, WAN, Wireless
Verschlüsselung SSL
Frage von eberhartIILAN, WAN, Wireless10 Kommentare

Hallo, es lief alles so schön, ich dachte so würde es bleiben. Aber dann wurde auf verschlüsselte E-Mails umgestellt ...

Verschlüsselung & Zertifikate
Verschlüsselung Laptop
gelöst Frage von ProRoxVerschlüsselung & Zertifikate11 Kommentare

Hallo liebe Gemeinde, Ich hab einen Laptop mit einer Verschlüsselung (vermutlich Festplattenverschlüsselung) erhalten (ja alles legal) und frage mich ...

PHP
Verschlüsselung PHP
Frage von gamerffPHP4 Kommentare

Hallo Forum, da ich noch nicht so gut im PHP Programmieren bin benötige ich bitte eure Hilfe. Ich brauch ...

Linux
Linux und Verschlüsselung
Frage von tantalosLinux1 Kommentar

Hallo, wir müssen zwei Typen von Servern verschlüsseln: Typ A: Systeme basierend auf CentOS 7 mit ein paar Applikationen, ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 35 MinutenViren und Trojaner

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 4 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Vmware
Installation Windows 10 VMware
Frage von Ghost108Vmware17 Kommentare

Hallo zusammen, versuche gerade mit Hilfe des vshpere clients eine virtuelle Windows 10 maschine aufzusetzen. 1. virtuelle Maschine erstellt ...

Exchange Server
SBS 2011 E-Mails können gesendet werden, aber nicht von extern empfangen
Frage von andreas1234Exchange Server14 Kommentare

Hallo Community, ich habe das Problem, dass seit knapp zwei Wochen die E-Mails von meinem SBS 2011 einwandfrei gesendet ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell8 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...