Adacor - News & Trends

Hashing schützt vor Manipulation von URL-Parametern

20. Oktober 2014 von Andreas Bachmann

Um sich gegen die Manipulation von URL-Parametern und die daraus möglicherweise resultierenden Hacking-Attacken zu wappnen, bietet der Adacor Cloudbase Proxy das passende Sicherheitsmodul: das Parameter-Hashing oder die Validierung.
Das Sicherheitsmodul „Parameter-Hashing“ wurde jüngst final abgeschlossen, seine Funktionalitäten werden gerade unter Live-Bedingungen getestet.

Hashing: Schutz vor Manipulation von URL-Parametern

Mittels URL-Parametern werden Daten vom Webbrowser an den Server übertragen, sodass dieser daraufhin die korrekten Seiten an den Browser zurückgegeben kann. Ebenso können Benutzerdaten über solche Parameter übergeben werden. Folglich lautet die oberste Priorität für Webanwendungen: Parameter und deren Werte müssen vor ihrer weiteren Verwendung geprüft werden, um Veränderungen durch Dritte wirksam abzufangen. Vergisst man nämlich diesen Schutzmechanismus, stehen einem Angreifer im wahrsten Sinne des Wortes alle Manipulationstüren offen.

Nehmen wir als fiktives Beispiel den Onlinebanking-Bereich eines Kreditinstituts. Dort sind im Adressfeld einer personalisierten Kundenseite bestimmte Parameter hinterlegt. Sollte die Kontonummer mit in der URL oder ID stehen, könnte man durch Ausprobieren versuchen, die Seite zu manipulieren. Man könnte die bestehende Kontonummer durch eine beliebige andere ersetzen, darauf hoffen, dass die Daten des anderen Kontoinhabers angezeigt werden, und vielleicht erfolgreich einen Angriff starten. Heutzutage sind die Onlinesysteme entsprechend geschützt, sodass sich ein derart simpler Trick nicht mehr so leicht umsetzen lässt. So steht in keiner URL mehr die Kontonummer, sondern ein Hash-Wert verbirgt die eigentlichen Daten. Aber was passiert, wenn der Entwickler vergisst, die URL-Parameter mittels Hashing zu schützen oder eine Sicherheitslücke durch einen Programmierfehler entsteht?

Hash-Wert schützt reale Daten

Beim Parameter-Hashing legt ein Generator über eine kryptologische Hash-Funktion einen Hash-Wert fest. Diese Buchstaben-Zahlen-Folge adressiert eine bestimmte Parameterkombination in einer Datenbank, in der die eigentlichen Daten hinterlegt sind. Mithilfe der Hash-Funktion lässt sich aus einer bestimmten gleichen Zeichenfolge immer wieder der gleiche Hashwert errechnen. Umgekehrt kann daraus aber nicht wieder der Ursprungswert ermittelt werden. Man spricht hier von einer sogenannten Einwegfunktion. In der Folge kann der „echte“ URL-Parameter nicht mehr manipuliert werden, denn bei einer Veränderung des Hash-Werts würde kein passender Datenbankeintrag gefunden werden. Vielmehr landet man auf der Startseite oder auf einer speziellen Fehlerseite, da die URL so interpretiert wird, als wären gar keine Parameter übertragen worden.

Das Parameter-Hashing-Modul soll eine große Bandbreite an individuellen Webapplikationen unterstützen. Deshalb mussten unsere Entwickler viel Feintuning betreiben. Wir wussten von Anfang an, dass wir fachlich bestens gerüstet sind, das Modul aber so seine Tücken hat. Der tatsächliche Umfang stellte sich erst im Verlauf der Modulentwicklung heraus. Die letzten Tests haben aber gezeigt, dass die Entwickler die Aufgabe mit Bravour gelöst haben.

Cloud Journey für den Mittelstand

Die Grundlagen einer erfolgreichen Cloud Journey

  • - Antworten auf Ihre wichtigsten Fragen der Cloud Migration.
  • - Handfeste Beispiele für unterschiedliche Szenarien
  • - In drei Stufen ein digital erfolgreiches Unternehmen werden


Jetzt mehr wissen

Testing unter Live-Bedingungen

Nach der Fertigstellung wird das Hashing-Modul jetzt im Live-Einsatz intensiv auf seine Funktionstüchtigkeit geprüft. Eine Maßnahme ist die interne Auslieferung von realen Internetseiten über den Proxy. Dabei wurde das Parameter-Hashing für zwei Webseiten (ibash.de, golem.de) aktiviert. D. h., die Softwareentwickler surfen über den Proxy im Internet und testen das Tool dort unter realen Bedingungen, indem sie vorgeben, dass z. B. Golem ein Kunde des Cloudbase Proxy ist. Durch dieses Vorgehen kann das Modul ausgiebig getestet werden. Sollte die Auslieferung einer Seite fehlschlagen, bemerken die Entwickler das sofort und können die Ursache schnell ermitteln.

Grafikoptimierung: kurze Ladezeiten und hohe Internet-Performance

Parallel zum Testing des Parameter-Hashing steht die Vollendung des Moduls zur Grafikoptimierung an. Dabei erwarten die Entwickler ebenso wie beim Parameter-Hashing einige spezielle Herausforderungen. Diese liegen nicht wie man annehmen möchte bei der Programmierung selbst, sondern es gilt hier einige Sonderfälle zu beachten, damit das Modul für die meisten Webseiten funktioniert. Zudem sind diese Besonderheiten unserem Anspruch geschuldet, bei der Grafikoptimierung ein Ergebnis zu liefern, was nah an dem ist, was ein Webdesigner bei der individuellen Gestaltung einer Internetseite erreichen kann. Wir befinden uns mit den Cloud-Proxy-Modulen oft nicht auf den komfortablen Netzwerk- oder HTTP-Ebenen, wo alles strukturiert und genormt ist. Vielmehr schalten wir uns vor die sehr individuelle Ebene der Oberflächen-Implementierung, wo die Module auf die verschiedenen Herangehensweisen der Applikations-Entwickler reagieren müssen.

Modulübersicht Cloudbase

Sicherheit

  • IPS/IDS (Intrusion Prevention System/Intrusion Detection System)
  • Code Filtering
  • Parameter Hashing/Validation

Performance

  • Hochverfügbarkeit
  • Automatische CDN-Anbindung
  • Caching

Optimierung

  • Grafikoptimierung
  • Minify
  • Kompression

Verwandte Artikel