
10/05/2010, 11:42
|
| | Fecha de Ingreso: marzo-2010
Mensajes: 7
Antigüedad: 15 años Puntos: 0 | |
Respuesta: Problema con Iframe Maliciosos! LuZBinG, gracias por tu respuesta, mi pc ya la limpie, el problema no vuelve a suceder porque en algunos files ya borre el iframe y no volvio a aparecer, lo que pasa es que tengo unos 200 index mas que limpiar, pero si lo hago a mano puedo estar unos 20 dias para hacerlo... Yo lo que necesito es algun codigo o script para ejecutar desde el servidor para que revise estos files y si encuentra la linea del iframe la borre!
Encontre este codigo en internet, pero no se como editarlo para buscar el iframe que quiero borrar! Cita: <?php
ob_implicit_flush();
set_time_limit(0);
//En la siguiente l�nea, $base, debe especificar la carpeta que desea analizar.
// En este caso va a analizar la carpeta vhosts que es donde tenemos nuestros sitios.
//Estas carpetas cambian dependiendo de la configuraci�n del hosting.
$base = "/var/www/vhosts/";
$omitir = array(
"Reemplazar.php",
);
echo "<pre>";
$totalencontrados = 0;
LeerDir("", 1, $totalencontrados, $total8080);
echo "\n\nTOTAL ENCONTRADOS: $totalencontrados ($total8080)\n";
echo "</pre>";
function LeerDir($directorio_actual, $nivel, &$totalencontrados, &$total8080)
{
global $omitir, $base;
$dh = opendir($base."/".$directorio_actual);
while (($file = readdir($dh)) != false)
{
if($file != "." && $file != ".." && $file != "" && !in_array($base."/".$directorio_actual."/".$file, $omitir))
{
if(is_dir($base."/".$directorio_actual."/".$file))
{
#Crear el directorio si no existe en destino
$destino_actual = $directorio_actual."/".$file;
echo "<b>$file</b>\n";
#Leer recursivamente el Directorio
LeerDir("$destino_actual", $nivel+1, $totalencontrados, $total8080);
}
else
{
if(ereg(".php|.html|.htm|.js|.inc|.xml", $file))
{
ReemplazarEnArchivo($base."".$directorio_actual."/".$file, $totalencontrados, $total8080);
}
}
}
}
}
function ReemplazarEnArchivo($archivo, &$totalencontrados, &$total8080)
{
$contenido = file_get_contents($archivo);
if(!$contenido)
{
echo "Archivo no leido ... $archivo \n";
return;
}
ereg(":8080", $contenido, $coincidencias);
if(is_array($coincidencias))
$total8080 += count($coincidencias);
$patrones = array(
5 => '#<iframe src=(.*) style="visibility: hidden"></iframe>#',
);
$cantidad = 0;
foreach($patrones as $patron)
{
$actual = 0;
ereg($patron, $contenido, $coincidencias);
$actual = @count($coincidencias);
$contenido = preg_replace($patron, "", $contenido);
$cantidad += $actual;
}
$totalencontrados += $cantidad;
if($cantidad>0)
{
if (is_writable($archivo))
{
if (!$handle = fopen($archivo, 'w+'))
{
echo "No se puede escribir en el archivo ($archivo)\n";
exit;
}
if (fwrite($handle, $contenido) === FALSE)
{
echo "No se puede escribir en el archivo ($archivo)\n";
exit;
}
echo "Procesado ($archivo)...$cantidad ocurrencias\n";
fclose($handle);
}
else
{
echo "$archivo Archivo no escribible ..\n";
}
}
else
{
echo "$archivo No encontradas coincidencias... \n";
}
}
?>
Alguien sabe como editarlo?
Gracias!
Última edición por pepe12124; 10/05/2010 a las 11:49 |