Sponsor-Board.de
Antwort schreiben  Thema schreiben 

Zweiweg-Verschlüsselung - Absicherung des Datenverkehrs in Webapplikationen

Verfasser Nachricht

Beiträge: 1.306
Bewertung: 6
Registriert seit: May 2009
Status: offline


Beitrag: #1
Zweiweg-Verschlüsselung - Absicherung des Datenverkehrs in Webapplikationen

Hallo liebe Sponsor-Board Mitglieder,

im letzten Thema "Einwegverschlüsselung - Absicherung des Datenverkehrs in Webapplikationen" ([Link: Registrierung erforderlich]) ging es um das persistieren von Daten, deren Inhalt nicht wieder entschlüsselbar sein muss, wie z.B. bei Passwörtern.

Das heutige Thema behandelt nun die Daten, bei denen man um eine Entschlüsselung nicht drumherum kommt. Passwörter sind eine Seite der Daten, aber was passiert mit Daten wie z.B. sensible Kontaktdaten von Kunden?
Diese einfach im Klartext abzulegen macht es dem Angreifer einfach, diese zu verwenden und zu missbrauchen. Emailadressen können so Ziel von Spammails werden, in Kombination mit "gecrackten" Passwörtern evtl. sogar
dazu führen, dass man die Kontrolle über Accounts auf anderen Seite verliert, aber im ganz simplen Fall einfach sehr sensible Daten wie z.B. Kreditkartendaten, welche in den meisten Fällen missbraucht werden.

Wie sichert man als Webmaster, Webentwickler nun diese Daten ab, sodass diese nicht im Klartext in der Datenbank sind, somit für den Angreifer unbrauchbar sind, aber auch gleichzeitig wiederverwendbar, um damit
Anzeigen von Daten auf der Homepage zu realisieren?


Eine Einwegverschlüsselung ist ein Weg hierzu, sofern man alle Daten doch irgendwie im Klartext irgendwo ablegt und sozusagen seine eigenen Daten immer wieder selbst "crackt".
Dies ist jedoch nicht mit dem Streben vereinbar, eine schnelle Applikation zu entwickeln, weshalb andere Methodiken herangezogen werden müssen.

Wo eine Einwegverschlüsselung existiert, gibt es auch Zwei-Weg-Verschlüsselungen, also Verschlüsselungen, die zum Einen, klar, verschlüsseln, mit dem richtigen "Key" jedoch wieder entschlüsselt werden können.
Es gibt mehrere dieser Zwei-Weg-Verschlüsselungen, die bekanntesten unter ihnen: AES (Advanced Encryption Standard) und RSA.

Diese erlauben, mithilfe eines geeigneten Passwortes, die Daten so zu verschlüsseln, dass diese nur mit enormen Aufwand, zumindest für einen Angreifer, entschlüsselt werden können.

Da der einzige Schwachpunkt dieser Verschlüsselungen der verwendete Key ist, welcher mithilfe einer Brute-Force-Attacke herausgefunden werden muss, sollte dieser Key entsprechend stark gewählt sein,
womit die zu persistierenden Datensätze ausreichenden Schutz vor einer Entschlüsselung bietet.


"Ende 2009 wurde mit einer Verbesserung des Angriffs eine Komplexität von nur noch 2 hoch 99,5 erreicht. Für die Praxis hat dieser Angriff jedoch wenig Relevanz, denn AES bleibt weiterhin praktisch berechnungssicher."
(Quelle siehe: [Link: Registrierung erforderlich])



Als Abschluss dieser Serie der Verschlüsselungen möchte ich euch auch aus Sicht des Angreifers darstellen, mit welchen Hürden er speziell zu kämpfen hat. Dies enthält viel Mathematik, speziell der Kombinatorik, die z.B. die Anzahl an Kombinationen eines Passworts beschreibt.

Beispiel MD5:
Wenn man ein Passwort mithilfe des MD5-Algorithmus verschlüsselt, erhält man eine Zeichenkette von 32 Zeichen. Diese bestehen aus den Zeichen [a-z] und [0-9]. Insgesamt ergibt dies also 36 mögliche Zeichen pro Stelle, also sind es insgesamt 36 hoch 32 mögliche Kombinationen.

Beispiel SHA1:
Dieser Algorithmus erzeugt Hash-Werte mit 40 Zeichen, die den gleichen Zeichensatz wie bei der MD5-Algorithmik verwenden. Dies entspricht also 36 hoch 40 möglichen Kombinationen.


Wenn man nun davon ausgeht, dass ein heutiger, auf der modernen Technik basierenden PC, pro Sekunde 20 Passwörter schafft, dann schafft er pro Tag 1.728.000 Kombinationen. Aus der naiven Sichtweise heraus, der Angreifer müsste nun so viele Passwort-Kombinationen durchprobieren, wie Kombinationen der Verschlüsselung existieren, so wäre er lange Zeit beschäftigt, bis das Passwort entschlüsselt wäre.

Wenn der Angreifer jedoch das Wissen darüber hat, wie viele Stellen z.B. eine Webseite für ein Passwort erlaubt, kann man die Anzahl der Kombinationen weitaus veringern. Erlaubt die Seite z.B. nur Passwörter mit einer Länge von 8 Zeichen, Zahlen oder Buchstaben, dann erhalten wir als mögliche Kombinationen maximal 32^8, womit er eine überschaubare Dauer von 4472 Jahren benötigt, bis alle Kombinationen durchlaufen sind und er ein Ergebnis erhalten könnte. Dies ist jedoch abhängig des zu findenden Passwortes und der Vorgehensweise des Crack-Algorithmus.

Da 20 Passwörter pro Sekunde sehr naiv gewählt sind, der heutige Stand der Technik viel weiter ist (siehe hierzu folgenden Link [Link: Registrierung erforderlich]) ist damit zu rechnen, dass ein Passwort, nur mit MD5 oder SHA1 verschlüsselt, relativ schnell geknackt werden kann. Man sollte dementsprechend seine Daten ausreichend "salzen" und "pfeffern", sodass die Kombinationenzahl hoch genug ist, um auch solchen "Clustern" Einhalt zu gebieten. Ebenfalls sollte man schon aus dem Programmcode heraus, seinen Nutzern nur erlauben, Passwörter mit geeigneter Länge und auch, wie von vielen Seiten bereits praktiziert, Sonderzeichen mit einzubinden.

12.01.2016 15:56
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Antwort schreiben  Thema schreiben 

Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Einwegverschlüsselung - Absicherung des Datenverkehrs in Webapplikationen Dennis 5 1.648 11.01.2016 13:51
Letzter Beitrag: alcazar

 Druckversion anzeigen
 Thema einem Freund senden
 Thema abonnieren
 Thema zu den Favoriten hinzufügen

Sponsor-Board.de

Community
Über uns
Partner
Powered by Mybb: Copyright 2002-2024 by MyBB Group - Deutsche-Übersetzung von Mybb.de
 
© 2007-2024 Sponsor-Board.de - Hosted by OVH

Willkommen auf SB!   Sie benötigen ein Sponsoring?   1. Anmelden   2. Sponsoring-Anfrage erstellen   3. Nachrichten von Sponsoren erhalten   Kostenlos!   Jetzt registrieren