Ver Mensaje Individual
  #10 (permalink)  
Antiguo 10/05/2010, 11:42
pepe12124
 
Fecha de Ingreso: marzo-2010
Mensajes: 7
Antigüedad: 14 años, 1 mes
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