[TYPO3-german] Wie sicher ist Typo3
Patrick Rodacker
patrick.rodacker at the-reflection.de
Tue Dec 23 02:32:28 CET 2008
Hallo Markus,
Markus Deckmann schrieb:
> Am besten erscheint es mir kurz zu beschreiben was für einen Kontext ich
> bei meiner Frage im Kopf hatte. Nehmen wir an ich wolle etwas in der
> Datenbank speichern, bspw. einen tt_news-Datensatz. Der Text dieses
> Datensatzes wird derzeit ja unverschlüsselt in der Datenbank gespeichert
> und bei Bedarf der Extension daraus wieder gelesen und ausgegeben. Jetzt
> ist mein Bedenken das bei einem unberechtigten Zugriff auf die
> entsprechenden Datenbanktabellen solche Inhalte ausgelesen werden können
> ohne über Typo3 gehen zu müssen, da die Inhalte ja dann komplett über
> den komprimitierten Zugang der Datenbank ausgelesen werden können. Meine
> Idee hierzu war jetzt beim speichern eines Datensatzes diesen bspw. mit
> etwas wie PGP zu verschlüsseln und dann diesen Wert in der Datenbank zu
> speichern. Beim auslesen dieses Wertes befindet er sich solange im
> PGP-Zustand bis es zur tatsächlichen Ausgabe kommt, d.h. so spät wie
> möglich im Quelltext soll eine Rückwandlung (u.a. durch Eingabe eines
> extra Passwortes des jeweiligen Benutzers) des Reintextes passieren der
> dann über die Webseite ausgegeben wird.
>
> Meine Frage nach der Sicherheit war daher eher in die Richtung gemünzt
> zu erfahren wie es hier dann aussieht mit unberechtigtem Abfangen dieses
> beispielhaften Textes von oben.
>
> Da bei dieser Anforderung die Sicherheit und Verschlossenheit der
> gespeicherten Daten oberste Priorität besitzt stellen bspw.
> Laufzeiten-Verlängerungen aufgrund der Verschlüsselung das kleinste
> Problem dar. Mein Bedenken ist nur das trotz der Verschlüsselung bspw.
> ein einfaches einhaken über bspw. einen Hook im Core möglich ist und ein<
> abfangen der dort evtl. bereits entschlüsselten Inhalte.
auch wenn du keine weiteren Informationen liefern kannst, so finde ich
den bis dato beschriebenen Ansatz doch schon arg paranoid. Du gehst von
dem Szenario aus, dass du deinen Datenbankserver nicht sichern kannst,
bzw. dieser kompromittiert wird und du willst auf der aufsetzenden
Schicht die Sicherheit / Verschlüsselung implementieren, die du auf der
untergeordneten Schicht nicht gewährleisten kannst. Da hakt meiner
Meinung nach das Konzept schon komplett.
Angenommen, du legst wirklich alle Inhalte in der Datenbank mit einem
verschlüsselt ab, dann hast du immer noch das Problem, dass du für die
öffntlichen, bzw. nicht personenbezogenen Inhalte nur ein Schlüsselpaar
hast. Wenn du dann den privaten Schlüssel durch eine Benutzereingabe
verifizieren willst, dann musst du hierfür auf jeden fall diesen
Schlüssel auf einem zweiten Server ablegen, damit das ansich überhaupt
Sinn macht.
Grundsätzlich wäre das sicherlich machbar und du musst dir dann mal den
Frontend Rendering Prozess von TYPO3 [1] ansehen und schauen, dass du
die Entschlüsselung zu einem so späten Zeitpunkt integrierst, so dass
keine Hooks danach folgen, die die entschlüsselten Daten da dann
abfangen. Ganz ehrlich denke ich aber, dass du da keine Chance haben
wirst, da du dann entscheidende Konzepte von TYPO3 wie z.B das Caching
über Bord werfen musst.
Auch wenn ich deinem Ansatz eher skeptisch gegenüber stehe, bin ich
interessiert daran, was du für eine Lösung für dein Problem entwickelst,
also halt uns auf dem laufenden ;-)
Besten Gruß
Patrick
[1]
http://buzz.typo3.org/uploads/media/TYPO3_Frontend_Rendering_Process_v1.5.pdf
--
The Reflection - Webentwicklung
Patrick Rodacker
Parkallee 19
28209 Bremen
Telefon: +49 (0) 421 / 620 24 57
Mobil: +49 (0) 175 / 543 87 00
E-Mail: patrick.rodacker at the-reflection.de
Internet: http://the-reflection.de
More information about the TYPO3-german
mailing list