Sven Rautenberg: Sicherheitslücke mit mod Rewrite und Query-String Append

Beitrag lesen

Moin!

hi,

Den Bezug zum $_GET-Array, den du in deiner Einleitung herstellst, kann ich auch nicht nachvollziehen.

Oh, hier musst Du mal was tun, damit Du meinen Artikel verstehst. Was die Array-Bildung mit PHP betrifft, teste die Rules

RewriteRule ^(.*).html /index.php?page=$1 [QSA,L]
RewriteRule ^(.*).html /index.php?page[]=$1 [QSA,L]
RewriteRule ^(.*).html /index.php?page[secret]=$1 [QSA,L]
RewriteRule ^(.*).html /index.php?page[secret][strong]=$1 [QSA,L]

und Du wirst sehen, dass allesamt manipulierbar sind für einen, der die Rule kennt.

Und wo ist da das Problem? Es ist anerkannter Sicherheitsstandard, dass Skripte die Werte, die sie verwenden sollen, validieren auf gültigen Wertebereich.

Es ist irrelevant, dass der User dem PHP-Skript beliebige Werte im $_GET-Array ANBIETET. Relevant ist, dass der Programmierer diese Werte ungeprüft NUTZT!

PHP hat keine Sicherheitslücke, Apache hat keine Sicherheitslücke. Dein Skript hat eine Sicherheitslücke - und um die genauer zu analysieren, solltest du dein Skript im Quelltext vorlegen, dann kann man dir erklären, wo genau das Problem liegt, damit du es verstehst.

- Sven Rautenberg