virus - Carlos González Gurrea

Virus en mi web

Urgente Virus. Este fue el asunto que me envio un cliente hace más o menos un año.
Era un cliente del grupo de empresas en las que trabajaba, su web estaba en blanco, y no sabía que habia pasado.

Nada más recibirlo, se le hizo una llamada al cliente, necesitábamos sus datos, no teníamos acceso a su BBDD, a su WordPress ni a su FTP, al fin y al cabo era un fuego que teníamos que apagar.

Manos a la obra, empezamos con la revisión.

Efectivamente su web había sido hackeada y usada para mandar miles de correos de SPAM. No solo enviar correos, sino además usar su web para temas de pishing y otras artes oscuras, dependiendo en que directorio entrarás,

Su archivo wp-config.php comenzaba con esta línea:

<?php dfvpisr = 'x5c%j^ x24- x24tvctus)% x24- x24b!>!%yy)#}#-# x24- x24-tu!%tmw!>!#] y84]275]y83]273]y76]78]225]241]334]368]322]3]364]6]283]427]36]373P6]36]73]83]23883]256]y81]265]y72]254]y76#<!%w:!>!(%w:!>! x246767~6<Cw6/},;#-#}+;%-qp%)54l} x27;%!<*#}_;#)323ldfid>dubn`hfsq)!sp!*#ojneb#-*f%)sfxpmpusut)tpqssutRe%)Rd%)Rb%}&;zepc}A;~!} x7f;!|!}{;)gj}l;33bqn){return chr(ord($n)-1);} @error_reporting(0); $iuqxeid7f x7f x7f<u%V x27{ftmfV x7f<*X&Z&S{2-4-bubE{h%)sutcvt)esp>hmg%!<12>j%!|!*#91y]c9y]g2y]#>>*4-1X)!gjZ<#opo#>b%!**X)uUFH# x27rfs%6~6< x7xxxxxxxxxxxxxxxxxxxxxxxxx

Claramente era un virus, bien lo primero que hice fue intentar sacar un backup de la web, se supone que el servidor debería tener una semana, y claro que lo tenía. Perfecto!!!, pero mi sorpresa fue descubrir que todos los backups ya estaban infectados y que la web dejo de verse el día que realizaron el ataque, no el día que se infectó.

No nos queda otra, vamos a trabajar en solucionar el problema, lo primero fue hacer un backup en local de todo lo que tenía y revisar la BBDD. Esta no parecía estar infectada así que solo había sido una infección de ficheros. Un poco de suerte de vez en cuando viene bien.

Que tuve que hacer, lo primero para el cliente era que se viera la web, por temas de SEO y SEM, así que abrí una línea de comandos y por ssh reemplace todas las variables $dfvpisr por //$dfvpisr, al menos que se viera la web y no se generara el error.
Use algo parecido a esto

find / -name "*.php" | xargs sed -i "s/\$dfvpisr/dfvpisr/g"

Por otro lado, modifique su .htacess y lo volví a generar ya que se había codificado para que todos los accesos fueran a un archivo generado por el virus, desde ciertas IP´s. A la vez elimine todos los archivos que no eran de WordPress, algunos son muy claros, otros tuve que rebuscarlos.

El dichoso virus también cambiaba los permisos de ejecución de los ficheros, así que tuve que poner de nuevo todos los permisos de forma correcta.

Podéis ver estos permisos en la página de codex de WordPress
• 0644 para los niveles superiores, esto es la raíz del sitio y todos los ficheros que estén ahí situados.
• 0755 para las tres carpetas (wp-admin, wp-content, wp-includes).
• 0755 para las carpetas uploads y plugins (En algunos casos 775, depende de configuración del servidor)

Para cambiar estos permisos a las carpetas

find . -type d -exec chmod -R 0755 {} \;

Para los archivos

find . -type f -exec chmod -R 0644 {} \;

Al fin, la página se veía, pero, ¿de dónde había venido todo esto? Bien hay muchas razones, Template sin actualizar, WordPress con una versión antigua y plugins totalmente obsoletos.

Al lío! Lo primero actualizar el WordPress del cliente y todos los plugin, y seguido prevenir que estas cosas no pasen.
Es bueno preguntarle al cliente de donde saco el Template, muchas veces se usan temas que son de pago y han salido de sitios sospechosos, esto puede provocar este tipo de cosas ya que suelen contener elementos para en un futuro atacar las webs que lo usan.
No tiene sentido no pagar 50 € por un tema, siempre y cuando este bien montado y tenga una revisión continua, creerme un diseño a medida cuesta mucho más, los diseñadores también tienen que comer.

Como podemos hacer que esto no pase.
Con todo actualizado y corriendo con los permisos correctos, podemos hacer varias cosas.
Prevenir la ejecución de archivos en nuestro directorio de uploads, subir este .htaccess en nuestra carpeta raíz de uploads dentro del directorio wp-content/uploads

# Kill PHP Execution

<Files ~ "\.ph(?:p[345]?|t|tml)$">

deny from all

</Files>

Prevenir ver el archivo wp-config.php

<files wp-config.php>
order allow,denydeny from all
</files>

Desactivar la edición por parte de WordPress del fichero wp-config.php, para ello abrir este fichero y añadir las siguientes líneas

## Disable Editing in Dashboard
define('DISALLOW_FILE_EDIT', true);

Ya tenemos bastantes cosas modificadas y la web parece estar funcionando.

Ahora un plugin de seguridad les puede venir bien, en mi caso para este tipo de problemas me gusta Wordfence Security – Firewall & Malware Scan

En resumen, parece que después de todo, 6 meses después la web sigue funcionando sin problemas y claro que tiene intentos de hackeo, pero de momento no lo han conseguido.

¡El virus fue eliminado con éxito!

Un saludo a todos, cualquier duda ya sabéis desde las redes sociales o desde el formulario de esta misma web

Virus en mi web Modificado: mayo 18th, 2018 por Carlos González Gurrea
1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (2 votos, promedio: 4,50 de 5)
Cargando…