cómo limpiar WordPress hackeado

Cómo limpiar un sitio web de WordPress hackeado

  • Categoría de la entrada:➤ Web
  • Comentarios de la entrada:Sin comentarios

Cómo limpiar un sitio web de WordPress hackeado

Independientemente de si su sitio de WordPress ha sido hackeado y está actualmente en control de daños o preparándose para lo peor, este artículo le guiará a través del proceso de limpieza de un sitio de WordPress comprometido. El proceso está documentado en un formato paso a paso fácil de entender para ayudarle a completar las siguientes tareas:

  • Tome el control de su sitio de WordPress
  • Identificar la fuente probable de infección
  • Encontrar la infección y el código malicioso
  • Eliminar todo el malware, backdoors y web shells
  • Elimine su dominio de todas las listas de malware, como la base de datos de navegación segura de Google
  • Prevenir las reincidencias

¿Está su sitio web WordPress hackeado realmente?

A veces es bastante claro que un sitio web de WordPress ha sido hackeado, por ejemplo cuando su sitio ha sido degradado. En otros casos, puede no estar tan claro. Antes de iniciar un proceso de limpieza de WordPress, asegúrese de que su sitio web de WordPress ha sido hackeado y que no se trata de un problema técnico independiente.

Recuperar el control

La recuperación del control comienza en función del acceso que haya podido perder debido a un ataque. Por ejemplo, al acceder a un servidor, un usuario malintencionado puede rotar las credenciales para impedir que los usuarios legítimos accedan al servidor, o puede cambiar la contraseña del administrador de WordPress para impedir que un administrador de WordPress inicie sesión.

Aunque esto depende mucho de su configuración, lo más probable es que su proveedor de alojamiento pueda ayudarle a recuperar el acceso a un entorno de alojamiento compartido o a un servidor virtual privado (VPS) que ejecute su sitio web. Si ha perdido el acceso de administrador de WordPress, siga la guía oficial de WordPress para restablecer la contraseña de administrador.

Hacer una copia de seguridad

Incluso si tiene una solución de copia de seguridad de WordPress, haga una copia de seguridad de su sitio web actual de WordPress. Crear una copia de seguridad de WordPress en este momento es muy importante por varias razones, entre ellas las siguientes.

  • Una copia de seguridad permite el análisis posterior de la infección,
  • Algunos proveedores de alojamiento pueden tomar medidas de precaución para eliminar los sitios web comprometidos con el fin de evitar la propagación de malware o spam – dependiendo del proveedor de alojamiento, esto puede hacerse sin previo aviso.
  • Si no tiene actualmente una estrategia de copia de seguridad, es posible que pueda restaurar parte del contenido del sitio web a partir de esa copia de seguridad antes de que las cosas empeoren.

Además, si está ejecutando WordPress en un servidor virtual privado (VPS), debería tomar una instantánea de toda la máquina virtual siempre que sea posible (tenga en cuenta que esto suele suponer un coste adicional). Ten en cuenta que si utilizas volúmenes externos para alojar tu instalación de WordPress (por ejemplo, así como cualquier acceso al servidor web y registros de error).

cómo limpiar WordPress hackeado
cómo limpiar WordPress hackeado

Restaurar desde una copia de seguridad

Si tienes una estrategia de respaldo, es hora de aplicarla. Si tienes acceso a una copia de seguridad actualizada, restaurarla puede ser la forma más rápida de volver a estar en línea. No solucionará el problema porque primero te hackearon a ti.

Si su sitio web de WordPress ha sido hackeado debido a una vulnerabilidad explotada o a un fallo de seguridad, averiguar el motivo (si es posible) es un paso importante.

¿Qué pasa si no tengo una copia de seguridad o no puedo restaurar mi copia de seguridad correctamente?

Si no tienes una copia de seguridad, puedes restaurarla correctamente. Dependiendo de la gravedad de la situación, es posible que desee poner su sitio web de WordPress en modo de mantenimiento para que pueda trabajar en la restauración del sitio web, mientras que informa a los visitantes que deben comprobar más tarde. Mientras tanto, siga el resto de esta guía. Si pone su sitio web en modo de mantenimiento con wp_maintenance WordPress devolverá un código de estado HTTP de 503. El estado 503 indica a Google y a otros bots que algo va mal en la página y que deben revisarla más tarde.

La respuesta HTTP 503 es importante para el SEO, ya que evita que los rankings de búsqueda se degraden en caso de que su sitio web no esté disponible temporalmente. Para obtener más información sobre el código de estado HTTP 503 y su importancia para el SEO, consulte el artículo de Yoast sobre el tema.

Identificar cómo ha sido hackeado WordPress

Cómo limpiar WordPress hackeado

Una vez que su sitio es seguro, lo siguiente que necesita saber que ha ocurrido: qué vulnerabilidad ha utilizado el atacante para acceder a su instalación de WordPress.

Examinar los registros de actividad, los registros del servidor web y los registros del servidor FTP

Si tiene un registro de actividad de WordPress, éste puede ser el mejor lugar para comenzar su análisis. Vea si puede detectar algún comportamiento sospechoso. Busque eventos de usuarios recién creados o cambios en las contraseñas de los usuarios. Comprueba también si hay cambios en los archivos, plugins o temas de WordPress.

También debe comprobar los archivos de registro de su servidor web, el servidor FTP y el sistema operativo en busca de comportamientos inusuales o sospechosos. Aunque esto puede ser un proceso algo difícil, le recomendamos que primero compruebe si hay tráfico extraño desde una sola dirección IP. GoAccess puede ser útil para ver en tiempo real los registros del servidor web.

Plugins y temas de WordPress no utilizados y obsoletos

Compruebe la lista de plugins instalados tanto en el panel de control de WordPress como en el directorio /wp-content/plugins/. ¿Se utilizan todos los plugins de WordPress? ¿Están todos al día? Compruebe también los temas y el directorio /wp-content/themes/. Sólo debe tener instalado un tema que esté utilizando. Si está utilizando un tema hijo, tiene dos directorios.

Código e instalaciones de WordPress no utilizadas

Cómo limpiar WordPress hackeado

Otro problema común son los restos y el código no utilizado. A veces, los desarrolladores y administradores de sistemas actualizan los archivos directamente en el servidor y hacen una copia de seguridad del archivo fuente con una extensión .old, .orig o .bak. Los atacantes suelen aprovecharse de esta mala práctica, y las herramientas para encontrar esos archivos de copia de seguridad están muy extendidas y son fáciles de conseguir.

La forma en que esto funciona es que un atacante intenta acceder a archivos como index.php.old. Normalmente, los archivos .php están configurados para ser ejecutados por el intérprete de PHP, pero si se añade la extensión .old (u otra) al final del archivo, el servidor web servirá el archivo al usuario. Sólo con adivinar el nombre del archivo de copia de seguridad, un atacante puede descargar el código fuente, que contiene información sensible, o darle consejos sobre qué utilizar para sus propios fines.

Un problema similar está asociado con el mantenimiento de instalaciones de WordPress más antiguas. Cuando los administradores de sistemas reconstruyen sus sitios, a veces dejan copias de antiguas instalaciones de WordPress en el subdirectorio /old/. Estas antiguas instalaciones de WordPress suelen estar todavía disponibles en línea y, por lo tanto, pueden ser un objetivo útil para que los atacantes exploten las vulnerabilidades conocidas de las versiones y los plugins más antiguos de WordPress.

Recomendamos eliminar el código no utilizado, las instalaciones de WordPress, los plugins de WordPress, los temas de WordPress y cualquier otro archivo antiguo o que no se utilice (recuerde que siempre puede consultar una copia de seguridad si necesita restaurar algo que se haya eliminado accidentalmente). Su sitio debe contener sólo los archivos que necesita. Todo lo que sobra o no se utiliza debe ser tratado como un objetivo adicional.

Usuarios y roles de WordPress

Asegúrese de que todos los usuarios de WordPress están siendo utilizados. ¿Hay nuevos sospechosos? Asegúrese de que todos los rollos están intactos. Si sigue las directrices para el uso de usuarios y roles de WordPress, sólo debería tener un usuario con el rol de administrador de WordPress.

Anfitriones compartidos

Si su WordPress es de alojamiento compartido, el origen del hackeo podría ser otro sitio que se ejecuta en el mismo servidor que el suyo. En este caso, lo más probable es que el atacante haya conseguido elevar sus privilegios. Entonces tendría que acceder a todo el servidor y, por tanto, a su sitio de WordPress. Si sospecha que se ha producido un ataque de este tipo, lo mejor es que se ponga en contacto con su anfitrión inmediatamente después de asegurar su sitio.

Archivos .htaccess

Los archivos .htaccess (archivos de configuración a nivel de directorio para el servidor HTTP Apache) también son un objetivo común para los hackers. Se suelen utilizar para redirigir a los usuarios a sitios de spam, phishing o maliciosos. Compruebe todos los archivos .htaccess de su servidor, incluidos los que no utiliza WordPress. Algunas de las redirecciones pueden ser difíciles de detectar.

Preste especial atención a las configuraciones que redirigen las peticiones HTTP en función de cadenas específicas del agente de usuario: los atacantes pueden dirigirse a dispositivos específicos (por ejemplo)

Siempre que sea posible, utilice una configuración global en lugar de confiar en los archivos .htaccess del servidor HTTP Apache. Los archivos .htaccess no sólo reducen el rendimiento, sino que también abren su sitio de WordPress a una amplia gama de vulnerabilidades de seguridad si un atacante puede leer o, peor aún, escribir el contenido de estos archivos. Según la documentación de Apache HTTP Server2, el uso de los archivos .htaccess puede deshabilitarse por completo estableciendo la directiva AllowOverride a none en el archivo principal httpd.conf.

Control de otros puntos de entrada

Hay muchos otros puntos de acceso en un servidor web. Asegúrese de comprobar todos ellos como el servidor FTP, SSH, servidor web, etc.

Encontrar la infección de WordPress y el código malicioso

Antes de empezar: un hack de WordPress normalmente implica poner código en un tema, plugin o archivo base de WordPress. Para realizar una limpieza, debe estar familiarizado con la modificación del código. De lo contrario, contrate a expertos en seguridad de WordPress.

Una vez identificado el punto de entrada del hacker, suele ser relativamente fácil encontrar la infección. Si aún no ha encontrado la infección, hay varios métodos que puede utilizar para encontrarla. Aquí están algunos de ellos.

Compruebe qué archivos han cambiado en los últimos días

Lo ideal es utilizar un plugin de monitorización de archivos de WordPress que supervise los archivos de su instalación de WordPress en busca de cambios y le notifique inmediatamente. Si no tiene un plugin de monitorización de la integridad de los archivos (FIM), tendrá que comprobar manualmente si hay cambios en los archivos.

Si tiene acceso SSH a su servidor, compruebe qué archivos de su sitio WordPress han cambiado recientemente. En general, es una buena idea empezar a buscar cambios en los cinco días siguientes a descubrir el hackeo y ampliar la búsqueda si es necesario. Para ello, vaya al directorio donde se encuentra su sitio de WordPress y utilice el comando find.

1 find .mtime -5 -ls

El comando anterior lista (-ls) todos los archivos que han sido modificados en los últimos cinco días (-5) (.mtime). Si la lista es demasiado larga, utilice menos localizadores para facilitar la navegación y la búsqueda en la lista.

1 find .mtime -5 -ls | minus

Si ha actualizado recientemente un plugin o un tema, los cambios en los archivos asociados aparecerán en los resultados de la búsqueda. Los registros y archivos de depuración también se actualizan con frecuencia para que aparezcan en los resultados. Por lo tanto, es posible que tenga que filtrar más los resultados para encontrar los cambios en los archivos que le interesan. Tenga en cuenta que los plugins especiales como el plugin WordPress File Change Monitor para WordPress están diseñados específicamente para eliminar automáticamente estos falsos positivos. El plugin fue creado específicamente para WordPress y puede detectar un cambio de archivo desde una actualización, instalación o desinstalación del núcleo de WordPress, del plugin o del tema.

Escanear todos los archivos HTML

Hay muy pocos archivos HTML en WordPress y a los hackers les encanta aprovecharse de esto. Escanee su sitio web en busca de todos los archivos HTML y analice su contenido. Asegúrese de que todos los archivos HTML de su sitio web son legítimos y que sabe para qué sirven.

Una forma sencilla de listar todos los archivos HTML de su directorio de WordPress (y sus subdirectorios) es utilizar el siguiente comando.

find . -type f -name ‘*.html’

Buscar el texto de la infección

Si su sitio web ha sido degradado o si el texto aparece en su sitio web debido a una infección, utilice la herramienta grep para encontrarlo. Por ejemplo, si ha visto el texto «hackeado por», vaya al directorio raíz del sitio web e introduzca el siguiente comando.

grep –Ril «hacked by»

El comando anterior devuelve una lista de archivos con contenido «comprometido por». Una vez que tenga la lista de archivos infectados, puede analizar el código y eliminar la infección.

¿Qué significan los interruptores grep?

  • La opción -R especifica que grep busque recursivamente (en toda la estructura de directorios, incluyendo todos los subdirectorios y enlaces simbólicos).
  • La opción -i especifica a grep que la búsqueda no distingue entre mayúsculas y minúsculas (es decir, ignora las mayúsculas en la palabra buscada). Esto es muy importante en entornos Linux/Unix, ya que los sistemas de archivos de Linux, a diferencia de Windows, distinguen entre mayúsculas y minúsculas.
  • La opción -l indica a grep que devuelva el nombre del archivo, no el contenido del mismo. Si su sitio de WordPress es hackeado, esta es otra pieza de código malicioso a buscar.

Además de la cadena obvia «hackeado por», a continuación hay una lista de códigos y frases de texto que se utilizan comúnmente en los sitios web de WordPress comprometidos. Puedes usar la herramienta grep para encontrar:

  • base64_decode
  • is_admin
  • eval
  • gzuncompress
  • passthru
  • exec
  • shell_exec
  • assert
  • str_rot13
  • system
  • phpinfo
  • chmod
  • mkdir
  • fopen
  • fclose
  • readfile

Una forma rápida de hacerlo con grep es utilizar el siguiente comando grep, que busca recursivamente archivos (todos los enlaces de caracteres), busca cadenas que coincidan con la expresión regular especificada PCRE3, y coincide con los retornos de texto y el número de línea en que se produjo la reproducción.

1grep -RPn "(base64_decode|is_admin|eval|gzuncompress|passthru|exec|shell_exec|assert|str_rot13|system|phpinfo|chmod|mkdir|fopen|fclose|readfile) *\("

NOTA: Parte de este código puede utilizarse en código legítimo. Por lo tanto, analice el código cuidadosamente y comprenda cómo se utiliza antes de informar sobre una infección o un ataque de hacking

Compare los archivos con la instalación original de WordPress

Esta es la forma antigua, y aunque lleva un poco de tiempo, funciona de maravilla. Compare los archivos de su sitio web con los del sitio web infractor. Así que si tiene una copia de seguridad de su sitio web, compare el sitio web falso. Si no, instala una nueva copia de WordPress y los plugins que tienes en el sitio web infectado en otro host y compáralos.

Hay varias herramientas que puedes utilizar para comparar archivos. En este ejemplo utilizamos una herramienta comercial llamada Beyond Compare, aunque hay varias alternativas gratuitas. A continuación se muestran algunas capturas de pantalla de un ejemplo de comparación.

Al comparar los directorios raíz de dos sitios de WordPress, la herramienta destaca la diferencia en el contenido del archivo index.php, los nuevos archivos .htaccess y wp-config.php, y las diferencias en los subdirectorios.

¿A qué hay que prestar atención cuando se comparan los archivos de WordPress?

Busque archivos que no formen parte del núcleo de WordPress. La mayoría de las infecciones añaden archivos al directorio raíz de la instalación de WordPress o al directorio wp-content. Si el hackeo es el resultado de un plugin vulnerable, los archivos del plugin pueden haber sido modificados.

Limpieza del hack de WordPress

Es hora de empezar a limpiar siguiendo los siguientes pasos una vez que sepas de dónde viene el hack de WordPress y encuentres la infección.

Encuentre la infección automáticamente mediante un servicio de WordPress

Si lo anterior le parece demasiado, no desespere. Existen varios servicios y plugins de seguridad para WordPress que puedes utilizar para buscar malware y otras infecciones en tu sitio.

Sin embargo, tenga en cuenta que estos complementos tienen una lista limitada de firmas de malware que pueden analizar. Si el ataque a su sitio de WordPress no es tan común, es posible que estos complementos no puedan detectar la infección. No es raro que recibamos comentarios de administradores de WordPress cuyos sitios web han sido atacados y que los plugins de malware de WordPress no han detectado ningún error.

El punto aquí es que los controles de seguridad eficaces implican diferentes niveles de defensa y detección. El escaneo manual es casi siempre el mejor camino a seguir si se puede, pero incluso estos plugins no deben ser subestimados: todavía se pueden utilizar y resultarán útiles en algún momento.

Restaurar WordPress desde una copia de seguridad

Si tienes una copia de seguridad de tu sitio o blog de WordPress, deberías restaurarla. Esto es siempre mucho más fácil que borrar el código manualmente.

Cambie todas las contraseñas, elimine los usuarios no utilizados y compruebe los roles de los usuarios de WordPress.

Cambia todas las contraseñas de todos tus usuarios y servicios, incluyendo WordPress, CPanel, MySQL, FTP y tu ordenador. Compruebe la lista de usuarios en su FTP, WordPress, MySQL y otros servicios para asegurarse de que todos los usuarios son legítimos. Si hay usuarios que ya no se utilizan, elimínelos. Asegúrese de que todos los usuarios de WordPress tienen los roles y permisos correctos.

Actualizar el núcleo de WordPress, los plugins, los temas y otros programas

Asegúrese de que está utilizando la última versión de todo el software que necesita para hacer funcionar su sitio de WordPress. Esto no se limita al propio WordPress, sino que también se aplica a todos los complementos, temas, parches del sistema operativo, PHP, MySQL y servidores web (por ejemplo, Apache HTTP Server o Nginx), así como a cualquier servidor FTP que se esté ejecutando.

Asegurar su sitio de WordPress

Antes de eliminar el código infectado, debe hacer una copia de seguridad de su sitio web de WordPress.

Eliminar el aviso de malware de Google Safe Browsing

Si su sitio ha sido rechazado por Google Safe Browsing, puede solicitar una revisión de seguridad para eliminar la advertencia.

Una vez eliminado el hack de WordPress. Enhorabuena, has recuperado tu sitio WordPress de un hackeo. Ahora tienes que asegurarte de que no vuelva a ocurrir. Aquí tienes algunos consejos sobre lo que puedes hacer:

  • Instale un plugin de registro de actividad de WordPress para llevar un registro de todo lo que ocurre en su sitio de WordPress.
  • Si no tienes una copia de seguridad, compra una.
  • Utilice un servicio de análisis de seguridad de WordPress.
  • Rote las contraseñas de la base de datos y del administrador y aplique la seguridad de las contraseñas de WordPress.
  • Mantenga actualizados WordPress, los plugins de WordPress, los temas y cualquier otro software que utilice.
  • Elimine todos los archivos no utilizados, como instalaciones antiguas de WordPress, plugins de WordPress y temas no utilizados (incluidos los temas estándar de WordPress no utilizados). Los componentes y el software que no se utilizan añaden una superficie de ataque innecesaria y lo ideal sería eliminarlos.

En Estrategia Creativa tenemos toda la información que necesitas sobre el mundo de digital y en especial para tus emprendimiento Si quieres seguir leyendo información útil  ¡echa un vistazo a nuestros artículos!

Cómo limpiar WordPress hackeado

¡Haz clic para puntuar esta entrada!
(Votos: 6 Promedio: 4.7)

Deja una respuesta