Web-Sicherheit

August 28, 2011

HTTP-Parameterverunreinigung, Teil 3

Filed under: Allgemein — sebastiankuebeck @ 06:24
Tags: , , , , , , , ,

Im ersten Teil dieser keinen Serie haben wir die Technik der HTTP-Parameterverunreinigung kennengelernt und im zweiten Teil neue Eigenheiten der HTTP-Parameterverarbeitung kennengelernt, die man unter anderem für das Umgehen von WAFs verwenden kann.

Im dritten Teil kommen wir nun endlich zu Dmitry Evteevs Blog-Post, über das ich eigentlich berichten wollte. Dmitry Evteev führt den Ansatz von Ivan Markovic noch ein Stück weiter. So erkannte er, dass ASP % (das Prozentzeichen) ignoriert, wenn die Zeichen danach keinen gültigen Zeichencode ergeben (wir erinnern uns, dass laut Spezifikation nach einem % der Zeichencode als Hexadezimalzahl kommen sollte).

  id=selec%t+@%@version--

…wird nach dieser Regel in der webanwendung wie folgt ankommen…

  Request.Params["id"] -> select @@version--

Und das ist wird in den Standardregeln von ModSecurity nicht abgefangen. Mit den erweiterten Regeln funktioniert dieser Trick nicht mehr, diese sind allerdings noch in einem experimentellen Stadium und produzieren zahlreiche False-Positives.

Ein weiteres interessantes „Feature“ von PHP ist, dass PHP Parameter, die die Zeichnkette [] beinhalten, als Array an die Anwendung übergibt.

  param[]=123 wird zu $_GET['param'] -> Array

Damit kann man unter Umständen die Logik von PHP-Skripten durcheinanderbringen und Fehlermeldungen Provozieren, die einem von aussen mehr einblick in die Webanwendung gewähren.
Angeblich hat Dmitry Evteevs bei seiner Arbeit auf den Spuren Ivan Markovics eine DoS-Schwachstelle bei der Verarbeitung von HTTP-Paremetern im Tomcat-Webserver gefunden, diese will er allerdings nicht verrarte.

1 Kommentar »

  1. […] nächsten Teil kommen wir nun endlich zu Dmitry Evteevs Blog-Post, über das ich eigentlich berichten wollte. […]

    Pingback von HTTP-Parameterverunreinigung, Teil 2 « Web-Sicherheit — Oktober 12, 2011 @ 13:27 | Antwort


RSS feed for comments on this post. TrackBack URI

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

Bloggen auf WordPress.com.

%d Bloggern gefällt das: