Hace unos meses, Dreamhost sufrió un ataque en sus servidores. Semanas mas tarde, recibí un correo de un administrador de sistemas, advirtiendo que mi web enlazaba a la suya, y que posiblemente fuese debido a un malware. Revisando la instalación de mi web, comprobé que se habían introducido multitud de ficheros html. Estos ficheros introducían multitud de enlaces y palabras claves de spam. ¿Como localizar la infección? Como se puede ver en la "Herramientas webmaster" de Google, en "Optimización" > "Palabras clave de contenido", el código del malware modifica las palabras clave de nuestro sitio: Limpiando el código Debido a que habia pasado mucho tiempo desde el origen de la infección y no tener acceso a los logs del servidor ftp no era posible localizar que ficheros habían sido modificados. Un primer filtro es determinar que partes del wordpress se habian modificado. Como al explorar la web en "Herramientas webmaster" de Google, simulando ser el bot de google, nos muestra un texto con enlaces "extraños", debemos saber si se trata una modificacion de codigo en el tema, o en los propios ficheros del wordpress. Una vez modificado el tema utilizado, comprobamos que sigue mostrandose el malware, por lo que deberemos revisar los ficheros de wordpress. Para realizar una primera limpieza, nos bajamos la web mediante ftp, siendo escaneados los ficheros por nuestro antivirus. En esta primera fase, se han encontrando los siguientes malwares: En \wp-admin\includes, existe un fichero class-wp-theme-edit.php infectado por el malware PHP/Shell.AT. En realidad se trata del script PhpSpy, que permite a un atacante externo acceder al servidor mediante una puerta trasera: Ademas en \wp-content\plugins\UltimateTagWarrior hay otro php llamado dsplugin.php, que es un script malicioso en php que es en realidad otra puerta trasera para el atacante de nuestro sitio denominada PHP/IRCBOT.DW Para evitar que el atacante siga teniendo acceso a nuestro servidor, y poder volver a infectar el wordpress, ambos ficheros deberán ser eliminados de nuestro servidor web. También se han incluido nuevos ficheros al wordpress repartidos por varios directorios, donde incluye el código necesario para modificar nuestra web e inyectar su código. Son los siguientes: \wp-admin\css\class-ziplibs.php \wp-admin\css\options-meta.php |wp-admin\includes\edit-form-header.php \wp-admin\includes\options-foot.php Estos ficheros pueden ser eliminados, ya que solo contienen el código malicioso del malware. Un caso especial fue el caso del fichero \wp-includes\post.template.php. Este fichero fue modificado para incluir una función que nos añade asl contenido del primer post de la pagina inicial de wordpress un texto malicioso para posicionar la pagina en determinadas palabras claves y varios enlaces. Este código se encuentra en la linea 167, en la función the_content: Y cambiarla por: Ademas, eliminar las lineas 698 y 699: y la funcion maliciosa applyfilter Con esto espero haber eliminado todo rastro de malware en la web, así como las puertas traseras encontradas. De todas maneras, habrá que revisar el servidor cada cierto tiempo y comprobar que no se repiten los síntomas.