Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Anpassung einer Rewrite-Regel (https://www.delphipraxis.net/122442-%5Bphp%5D-anpassung-einer-rewrite-regel.html)

MathiasSimmack 16. Okt 2008 08:26


[PHP] Anpassung einer Rewrite-Regel
 
Hallo Leute, ich brauche mal ein bisschen Hilfe. Ich habe bisher folgende Regel in meiner ".htaccess" stehen:
Code:
RewriteCond %{QUERY_STRING} ^(.*)?(.*)=(http|ftp)(.*)?$ [NC]
RewriteRule . textdatei.txt [L]
Damit blocke ich recht zuverlässig Versuche ab, an irgendwelche Dateien auf meiner Seite fremde Seiten und Skripte anzuhängen. Kennt man ja aus den Logs, dass versucht wird, die Sicherheitslücken von Joomla, phpBB u.ä. Software auszunutzen
Code:
meine-domain.tld/ordner/file.php?script=http://böse-andere-seite/skript.txt
Die Regel blockt das recht gut, reduziert nebenbei den Traffic (weil nichts auf die Start- oder 404-Seite umgeleitet wird), und ein Bot bekommt in meinem Fall nur 3 Fragezeichen als Ergebnis. :lol:

Jetzt habe ich aber das Problem, dass WordPress verstärkt mit Redirects arbeitet, die sich mit dieser Regel beißen. Ist man bspw. angemeldet und liest einen Beitrag, stellen die meisten Themes einen Logout-Link zur Verfügung, der einen dann wieder zum gelesenen Beitrag zurückleitet. Durch das Vorkommen des Wortes "http" wird aber nun die o.g. Regel wirksam, und ich sehe auch bloß noch die 3 Fragezeichen.

(Lassen wir das FTP mal weg.) Ich hatte das jetzt so versucht:
Code:
RewriteCond %{QUERY_STRING} ^(.*)?(.*)=http!((%3A%2F%2F|:\/\/)(www\.)?meine-domain)(.*)?$ [NC]
Aber wenn ich nun manuell als Parameter eine "böse-seite.tld" ergänze (also etwas anderes als meinen eigenen Domainnamen), dann sehe ich trotzdem die jeweilige Seite. Ich prüfe aber vorab, ob :// (oder auch kodiert) vorkommt, das www. ist optional, und das ganze ist via Ausrufungszeichen negiert. :gruebel:


Irgendwas habe ich falsch gemacht. Aber was?


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz