Si alguna vez has tenido que manejar un hosting con sitios wordpress es muy factible que te habrás encontrado este virus ya que es altamente contagioso, lo que provoca es una re-dirección a sitios de anuncios desde tu sitio web.
Una de las maneras definitivas de limpiarlo es borrar todos los archivos y volverlos a subir, esto puede ser tardado o costoso, ya que mientras se eliminan y vuelves a subir los archivos, todos tus sitios estarán caídos y esto puede afectarle a tu reputación web.
Así que veamos el sencillo proceso para evitar que se nos contagien nuestros sitios WordPress, que en general son cuestiones ajenas a nosotros, como pueden ser vulnerabilidades del wordpress o los plugins.
Pasos para proteger nuestro WordPress:
- Entre al dashboard de administrador del wordpress (wp-admin)
- Actualice el php
- Actualice el wordpress
- Actualice los plugins
- Revise la reputación y comentarios de los plugins que quiere integrar o tiene actualmente asegurándose de que no tengan vulnerabilidades.
Pero bueno puede ser que tu sitio ya este infectado así que en este caso si tienes acceso al hosting por medio de SSH puedes solucionarlo en pocos pasos sin necesidad de hacer una limpieza de todos los archivos, o indicarle al desarrollador acerca de estos.
Pasos para eliminar el virus de nuestro Servidor:
Lo primero que debemos hacer es ingresar al servidor a través del SSH.
Una vez ingresados necesitaremos buscar los archivos .ico y eliminarlos, ya que aunque estos usualmente son usados para mostrar imágenes pequeñas, se les puede inyectar código php malicioso, pero no se preocupen son muy sencillos de encontrar e identificarlos ya que usualmente no hay muchos archivos de este tipo en los servidores y el virus les pone un nombre aleatorio usualmente de 8 caracteres, con el siguiente comando nos listara la ubicación de todos estos archivos.
find . -name ‘*.ico’
Ya sea que inspeccionen todos los archivos o solo los sospechosos, tendrán que buscar si tienen código php, si lo tienen borren el archivo.
Sin embargo estos archivos no pueden hacer nada por si mismos así que aunque habrán sido eliminados, tendremos que ver en donde estaban siendo llamados, en este caso igual podemos listar todos los archivos posiblemente sospechosos, sin embargo en esta ocasión no es opcional inspeccionar algunos, tienen que ser todos los archivos así que puede ser mucho mas tardado, y la manera de encontrarlos es buscar algún archivo php que tenga la secuencia include a una imagen .ico sin embargo la ruta seguramente estará oculto.
e.g.
@include “[redacted]/\167p-\143on\164en\164/th\145mes\057\164we\156ty\164we\156ty\157ne/\05614\06356\342ke\056ic\157”;
@include “[redacted]/wp-content/themes/twentytwentyone/.14356ke.ico”;
Con el siguiente comando los listaremos.
find . -type f -name ‘*.php’ | xargs grep -l ” *@include *”
Como es muy posible que el código habrá sido agregado a código legitimo, tendrás que solo borrar esas lineas infectadas.
Una vez terminada la limpieza tenemos que buscar posibles Backdoors, que son accesos que dejo atrás el virus atacante, usaremos 2 maneras para asegurarnos que no dejemos ni uno solo, este virus en particular deja un código inyectado sobre código legitimo de una sola linea que puede ser identificado por un extracto del código que es “Array();global*“, usaremos esto en su contra con el siguiente comando.
find . -type f -name '*.php' | xargs grep -l " *Array();global*"
Eliminamos la linea inyectada y ahora hacemos una búsqueda Manual y exhaustiva, el virus también introduce archivos de código nuevo, que puede ser identificado gracias a que los nombres son nombres aleatorios de 8 caracteres, sin embargo puede ser que el tamaño varié, por la seguridad de su servidor también debería buscarlos en rangos de 6 a 9 caracteres, podemos los archivos que cumplan con este criterio de esta manera aunque también listara archivos legítimos.
find . -type f | egrep ‘./[a-z0-9]{8}\.php’
Si necesitas cambiar la búsqueda con otro tamaño de caracteres solo tiene que cambiar el “{8}” al numero que necesites.
Usualmente se puede ver a simple vista por su nombre que no es código legitimo, pero si lo duda, verifique que su contenido no este infectado.
Por ultimo para verificar que no se quede ninguna manera de que el virus siga funcionando, debemos checar los registros automáticos del Crontab, no debería existir ninguno que no ya conozca.
Si se le vuelve a infectar el sitio puede ser que sea porque no ha eliminado las vulnerabilidades de su sistema, como puede ser wordpress o plugins desactualizado, o el atacante creo nuevos usuarios Admin o Editor y creo publicaciones con el código infectado, o que el atacante robo sus contraseñas de acceso, así que asegura tu sitio después de limpiarlo y si es necesario cambia todas las llaves de acceso.
e.g. SSH, CPanel, wp-admin, wordpress, cuentas del wordpress, etc.