MySQL Datenbank verschlüsseln

02/05/2014 20:23 IchVerabschiedeMich#1
Hey Leute,

ich habe demnächst ein Projekt vor und will die Benutzer-Daten so sicher wie möglich verschlüsseln.

Alle wichtigen Datensätze wie Passwörter werden von mir AES-128 Encrypted oder MD5 mit Salt Hashed (was genau ich nutzen werde, überleg ich mir noch).

Mein Problem ist jedoch folgendes:

Stellen wir uns vor ein Hacker bricht in das Host-System ein hat aber nicht die MySQL Benutzer Daten, kann aber jetzt trotzdem einfach die Daten aus den Datenbanken einfach kopieren indem er sich die .MYD und .MYI Daten raus kopiert und bei sich aufspielt.

Meine Idee war es ein System zu nutzen was die Tabellen in dem data Ordner noch einmal so verschlüsselt das sie wo anders nicht mehr laufen würden.

Ich weiß das ein "ähnliches" Prinzip für SQLite Datenbanken (SQLCipher) existiert bei denen die gesamte Datenbank AES Encrypted wird.

Was ich also will:
Das selbst wenn jemand an meinen MySQL-Data Ordner kommt, er diese Daten nicht einfach verwenden kann.
Wichtig dabei ist, das die Querys & die Art des Verbindungsaufbaus sich nicht ändern.

Ich entschuldige mich an der stelle noch einmal für mein Deutsch - ich hab es mit der Sprache leider nicht so :)

Ich hoffe einer von euch kann mir jetzt weiter helfen.

Gruß,
Padrio
02/05/2014 23:55 'Heaven.#2
[Only registered and activated users can see links. Click Here To Register...]


Könnte dir evtl. helfen
02/06/2014 00:28 マルコ#3
ähm... nunja. Wenn dieser Einbrecher deine Daten klaut... und merkt, dass sie verschlüssselt sind... was denkst du, wird er tun? RICHTIG! Er holt sich den Schlüssel, den du beilegen musst, damit du die Daten für deine Zwecke nutzen kannst.
Einbrecher, die was mit deinen Daten anfangen können, kennen idR. auch Tools zur Verschlüsselung - und wie man sie kontert.
Somit hast du 0 Effekt bei der Sache. Es ist schlauer, den Server entsprechend gut zu schützen (Firewall, Virenscanner, Log Monitore, Hilfstools (z.B. Fail2Ban), Honeypots, sichere Passwörter,...)
02/06/2014 00:36 IchVerabschiedeMich#4
Quote:
Originally Posted by マルコ View Post
Es ist schlauer, den Server entsprechend gut zu schützen (Firewall, Virenscanner, Log Monitore, Hilfstools (z.B. Fail2Ban), Honeypots, sichere Passwörter,...)
Wäre es nicht noch schlauer neben den ganzen Sachen eben die Daten noch zusätzlich zu verschlüsseln und den Zugang noch einmal zu erschweren? :)
02/06/2014 17:00 tolio#5
durchaus, da ich kA was genau du auf dem server laufen hast, gehe mal im bsp von nem system mit php aus.
Also wenn deine Daten in der Datenbank jetzt nochmal verschlüsselt sind muss php auf den Schlüssel zugreifen können um sie darstellen zu können, wenn nun tatsächlich jemand auf den server kommt um sich dort direkt die datenbank zu holen kann er sich auch noch schnell die php dateien mit einsammeln.
Somit hast du außer Rechen- und Wartungsaufwand nichts gewonnen
02/11/2014 12:19 Der-Eddy#6
Quote:
Originally Posted by Padrio View Post
Wäre es nicht noch schlauer neben den ganzen Sachen eben die Daten noch zusätzlich zu verschlüsseln und den Zugang noch einmal zu erschweren? :)
Bei einer Menge Datensätzen die verschlüsselt sind muss dein Webserver dann jedesmall die Daten ver- und entschlüsseln wenn er sie abfrägt oder einträgt => Rechenleistung

was aber auf jedenfall hilft ist das hashen von Daten von dennen du nur wissen willst ob sie übereinstimmen (Passwörter, PINs), diese können dann halt Einwegverschlüsselt werden
dann aber bitte etwas zeitgemäßeres als MD5: [Only registered and activated users can see links. Click Here To Register...]
02/11/2014 16:59 IchVerabschiedeMich#7
Quote:
Originally Posted by Der-Eddy View Post
Bei einer Menge Datensätzen die verschlüsselt sind muss dein Webserver dann jedesmall die Daten ver- und entschlüsseln wenn er sie abfrägt oder einträgt => Rechenleistung

was aber auf jedenfall hilft ist das hashen von Daten von dennen du nur wissen willst ob sie übereinstimmen (Passwörter, PINs), diese können dann halt Einwegverschlüsselt werden
dann aber bitte etwas zeitgemäßeres als MD5: [Only registered and activated users can see links. Click Here To Register...]
Danke es handelt sich aber um eine PHP / c++ Anwendung.