Ver Mensaje Individual
  #28 (permalink)  
Antiguo 20/10/2009, 12:11
Avatar de el_javi
el_javi
 
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años, 8 meses
Puntos: 10
Respuesta: Reemplazar texto en múltiples archivos

Hola alejoxd

Bienvenido al mundo de los "virus"

Te comento.

El código que ejecutaste es SOLO para reemplazo de iframes.

Mira a ver ejecutando el siguiente código:

Código:
#!/bin/bash
DIRECTORIO_CON_ARCHIVOS=/home/sitio/www/archivos/prueba

find $DIRECTORIO_CON_ARCHIVOS -exec grep "<body>*<script" '{}' \; -print | grep -v "<body>" > archivos_para_modificar

for PATH_ARCHIVO in $(cat archivos_para_modificar); do
     NOMBRE_ARCHIVO=$(basename $PATH_ARCHIVO)
     DIRECTORIO_ARCHIVO=$(dirname $PATH_ARCHIVO)
     cd $DIRECTORIO_ARCHIVO

     sed -e 's/<body>.*<script>.*<\/script>/<body>/g' $NOMBRE_ARCHIVO > tmp_archivo.blah
     rm -rf $NOMBRE_ARCHIVO
     mv tmp_archivo.blah $NOMBRE_ARCHIVO
     rm -rf tmp_archivo.blah
done
Eso si, te digo algo...

si en tus páginas PHP o html tienes scripts después del body que sean necesarios, estos reemplazos pueden hacerte perdelos.

IMPORTANTE: Antes de ejecutar ningún script que te digamos nadie, HAZ UNA COPIA DE SEGURIDAD para que no pierdas ni se te rompa nada.

Como elemento final a mencionarte, hay una variable dentro del código que te he pasado 8y dentro del que tú has probado) DIRECTORIO_CON_ARCHIVOS que tienes que poner la ruta dentro del servidor linux donde están tus archivos.

Imagino que entiendes que esto tienes que:
- Conectarte al servidor como Root desde la Shell de linux
- Crear un archivo para ejecución
- Poner este parámetro o variable de programación (DIRECTORIO_CON_ARCHIVOS) en el valor que corresponde a tu servidor.

Espero haberte podido ayudar.

Un saludo.

Javier