PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP Script: Sicherheitsproblem?


hyperterminal
2006-05-03, 20:41:55
Hallo!

Ich habe bei einem meiner Webprojekte mit PHP eine kleine selbstgeschriebene Fehlerberichterstattung im Einsatz, welche mich automatisch per E-Mail informiert, wenn es einen Fehler gibt (403, 404, 500).

Die Seite http://www.beispielurl.de/beispiel/> /dev/null & konnte nicht gefunden werden.

Zeitpunkt: 03.05.2006, 16:49
Ref-Link: N/A
Fehlercode: 404 - Not Found
IP-Adresse: 80.55.218.218 (80.55.218.218)
Browser: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Die Seite, die den Fehler verursacht hat existiert nicht und es fuehren auch keine Links dorthin. Der Besucher muss also bewusst diese URL angefordert haben. Dieses "/dev/null/" kommt mir bekannt vor - ab und zu sieht man das bei Linux Geeks. Nun meine Frage: Hat dieser Benutzer das nur gemacht, um die Fehlerberichterstattung zu testen oder ist das moeglicherweise ein Angriffsversuch eines Hackers? Normalerweise kann man eine Seite ja nicht ueber die URL hacken, aber vielleicht hat er darauf gehofft, dass man, da die eingegebene URL ja in dem PHP Script verwendet wird, daruber irgendwie eigenen Code einschleusen kann?

Damit ihr das besser beurteilen koennt lege ich hier den Code des PHP Scripts offen (keine tolle Leistung von mir aber hey - ich kann eigentlich kein PHP ;)):
<?php
$url = "http://" . "{$_SERVER["HTTP_HOST"]}" . "{$_SERVER['REQUEST_URI']}";
$timestamp = time();
$datum = date("d.m.Y",$timestamp);
$uhrzeit = date("H:i",$timestamp);
$referer = $HTTP_REFERER;
if (empty ($referer)) {$referer ="N/A";}
$ip = $REMOTE_ADDR . " (" . gethostbyaddr($REMOTE_ADDR) . ")";
$browser = $HTTP_USER_AGENT;
if (empty ($browser)) {$browser = "N/A";}
$message = "Die Seite " . $url . " konnte nicht gefunden werden.\n\n Zeitpunkt: " . $datum . ", " . $uhrzeit . "\n Ref-Link: " . $referer . "\n Fehlercode: 404 - Not Found\n IP-Adresse: " . $ip . "\n Browser: " . $browser;
mail ( "{$_SERVER['SERVER_ADMIN']}", "Fehler 404 auf beispielurl.de", $message, "From: fehler404@beispielurl.de");
?>

The_Invisible
2006-05-03, 21:50:20
naja, /dev/null ist sozusagen der "mülleimer" unter linux, der Pfeil bedeutet das er den http inhalt anscheinend auf das /dev/null device legen wollte, das "&" bedeutet das der befehl im hintergrund laufen soll.

kann mir nicht vorstellen was er damit bezwecken wollte, vielleicht war es auch nur so ein script kiddie was das irgendwo aufgeschnappt hat und deine website ins nirvana schicken wollte, was so natürlich net geht

mfg

MadMan2k
2006-05-03, 22:43:52
mit folgendem kann man schon viel freude machen

while[1]
do
wget http://www.foo.de/ > /dev/null &
done

es sei denn man vertippt sich...