La seguridad es una de las principales preocupaciones de los propietarios de sitios WordPress, y con razón: cada hora se producen más de 7,5 millones de ciberataques contra sitios WordPress. Como era de esperar, la naturaleza de código abierto y la flexibilidad de WordPress lo hacen vulnerable a una gran variedad de ataques. Pero su núcleo es bastante seguro, ya que el equipo de WordPress se dedica a conservar la integridad estructural de la aplicación. Sin embargo, no se puede decir lo mismo de todos los temas y plugins de WordPress.
John Castro, de Sucuri, ha descubierto recientemente un ataque de malware. El malware coloca 10-12 líneas de código en la parte superior de los archivos header.php de los temas vulnerables de WordPress con el fin de redirigir a los visitantes a sitios maliciosos.
En este artículo se ofrecen detalles sobre el ataque, así como consejos para proteger su sitio de este tipo de ataques en el futuro.
Cómo funciona el ataque de malware
Como ya se ha mencionado, el malware coloca entre 10 y 12 líneas de código en la parte superior del archivo header.php de un tema activo de WordPress. El código es el siguiente:
El malware redirige a los visitantes a default7.com (no al destino final de la redirección) en su primera visita. A continuación, instala la cookie "896diC9OFnqeAcKGN7fW" para rastrear a los visitantes que regresan durante un año y comprueba si hay rastreadores de motores de búsqueda. Si no hay rastreadores, comprueba el encabezado del agente de usuario.
Las redirecciones son aleatorias para todos. Además, default7 .com es sólo el primer destino de redirección. Los visitantes son redirigidos además a los siguientes dominios (dependiendo de la dirección IP y el navegador):
- test246 .com
- test0 .com
- distinctfestive .com
- ableoccassion .com
Lo que resulta especialmente interesante es el comportamiento del malware en Internet Explorer. Cuando el visitante utiliza Internet Explorer, es redirigido a un sitio que proporciona una actualización maliciosa de Flash o Java.
Otro comportamiento interesante ocurre en Facebook. Cuando compartes el enlace de un sitio infectado en Facebook, es posible que veas el fragmento de la publicación de otro sitio, uno de los cinco sitios de redirección. Facebook seguirá redirigiendo a la gente al sitio malicioso, incluso después de que elimines el malware de tu sitio. Esto se debe a que la caché está compartida. Puedes restablecer la caché aquí.
Te sorprenderá saber que este tipo de infección es bastante común cuando los hackers consiguen acceder a la interfaz de administración de WordPress. Con las credenciales adecuadas, son capaces (con bastante facilidad) de editar un archivo de tema.
¿Qué sitios están infectados?
El reciente exploit no es en realidad la única amenaza de malware en los sitios infectados. En la mayoría de los casos, los sitios infectados presentaban varias vulnerabilidades de seguridad que daban lugar a otras infecciones. Solo en una minoría de sitios se detectó la infección únicamente en el archivo header.php del tema.
Cómo detectar el malware
El código del malware no está exento de fallos. Es decir, a menudo busca parámetros que no existen, lo que provoca un error PHP. Dado que algunos servidores tienen desactivados los avisos de PHP, el error no siempre se muestra; pero una búsqueda en Google de "Aviso: Índice indefinido: 6FoNxbvo73BHOjhxokW3" puede revelar el código malicioso en su servidor.
Sucuri compartió que algunos resultados de búsqueda de Google podrían revelar errores en el archivo de pie de página del tema. Esto se debe a que el malware infectó previamente los archivos footer.php y colocó un código de redirección similar en la parte superior de esos archivos. El ataque se trasladó a los archivos header.php y volvió a infectar los sitios que tenían el código malicioso en su archivo footer.php. Aunque el malware se ha actualizado, las redirecciones envían a los visitantes exactamente a las mismas páginas.
Cómo eliminar malware
La eliminación de malware es un proceso de varios pasos para el que es recomendable consultar a un experto en WordPress. Si no tienes experiencia en seguridad, lo más probable es que empeores las cosas. Las empresas especializadas en WordPress , como nuestro propio equipo de Semper Fi Web Design, pueden ocuparse de todos sus problemas de seguridad.
Pero de momento, veamos qué puede hacer en general para proteger su sitio de este tipo de ataques.
Cómo mantener seguro su sitio WordPress
Proteja su interfaz de administración de WordPress
El panel de administración de WordPress es una mina de oro para los delincuentes. Por lo tanto, es necesario restringir el acceso a él tanto como sea posible: sólo aquellos que necesitan acceder a él deben ser capaces de hacerlo. En cualquier caso, deberías restringir la capacidad de todo el mundo para realizar cambios en tu archivo header.php.
Como hemos visto con este reciente ataque de redirección, los hackers con credenciales de administrador de tu sitio pueden realizar cambios directa y fácilmente en el archivo header.php de tu tema. Puede desactivar fácilmente la capacidad de un usuario para editar archivos PHP en su interfaz de administración mediante el ajuste de su archivo wp-config.php. Simplemente copie y pegue el siguiente código en su archivo wp-config.php:
# Deshabilitar edición de temas define( 'DISALLOW_FILE_EDIT', true );
Otros consejos para mantener segura la interfaz de administración:
- Utilice contraseñas seguras
- Cambie periódicamente todas las contraseñas
- Limitar el número de intentos de inicio de sesión
- Compruebe que no se han creado cuentas de administrador falsas.
- No utilice "admin" como nombre de usuario de administrador
- Activar la autenticación de dos factores
Actualizar WordPress, temas y plugins a las últimas versiones
Es fundamental actualizar WordPress y todos sus temas y plugins a sus últimas versiones. Además de mejorar la funcionalidad, la mayoría de las actualizaciones se proporcionan para solucionar problemas de seguridad y vulnerabilidades, así que actualiza a las últimas versiones en cuanto estén disponibles.
Asegúrese de que su(s) ordenador(es) está(n) libre(s) de virus y malware
Todas las medidas de precaución que tome para proteger su sitio de programas maliciosos serán nulas si su ordenador contiene virus o programas maliciosos. Un pirata informático podría acceder a los datos de acceso de su sitio desde su ordenador y proceder rápidamente a infectarlo. Por lo tanto, es importante instalar un buen programa antivirus en todos los ordenadores que utilice para iniciar sesión en su sitio de WordPress.
A la mayoría de nosotros nos encanta WordPress por su flexibilidad, entre otras muchas razones. De hecho, es el sistema de gestión de contenidos (CMS) de código abierto más popular que existe. Sin embargo, las razones por las que nos gusta tanto son las mismas que lo hacen vulnerable a los ciberataques. Es importante ser consciente de ello y tomar las medidas necesarias para proteger su sitio.
Divulgación: Nuestro contenido está apoyado por los lectores. Esto significa que si hace clic en algunos de nuestros enlaces, es posible que ganemos una comisión. Sólo recomendamos productos que creemos que aportarán valor a nuestros lectores.
Wow, 7,5 millones cada hora, eso es inquietante, interesante post Arnaud, gracias por el aviso 🙂 Saludos Tracy
Un placer absoluto, Tracy. Gracias por los comentarios.
Artículo muy útil. Muchas gracias.
¿Cuál es su vector de ataque inicial? ¿Se trata simplemente de obtener acceso de administrador?
Me pregunto si hay alguna regla de modsecurity que se pueda crear para ayudar a prevenir esto.
Un conjunto de reglas modsecurity inteligente y bien configurado es una verdadera pesadilla para los hackers 😀 .
A través de algunas reglas inteligentes que he escrito ... si lo digo yo 😉 los golpes de hackers en mis sitios WP han disminuido significativamente en el último año.
Gracias de nuevo.
Hola Mike
En primer lugar, gracias por dejar un comentario.
El objetivo de los hackers es implementar unas 12 líneas de código para que los visitantes sean redirigidos a otros sitios (posiblemente maliciosos).
Esto, sin embargo, sólo es posible cuando ya han obtenido acceso a un inicio de sesión de WordPress que es capaz de editar los archivos PHP del tema.
Puede solucionar este problema deshabilitando los permisos de usuario para editar archivos PHP a través de wp-admin. Implementa el siguiente fragmento de código en el archivo wp-config.php para desactivar esta función:
# Deshabilitar edición de temas
define( 'DISALLOW_FILE_EDIT', true );
Y lo que es más importante, tienes que proteger tus credenciales de WordPress.
Si alguna vez sufres un ataque, es importante que cambies todas tus contraseñas, compruebes si se ha modificado algún archivo y busques cuentas de administrador fraudulentas si tienes varios administradores.
Algunos consejos más para proteger su inicio de sesión en WordPress:
- Cambiar el nombre de usuario "admin" por algo menos identificable
- Cambiar la URL de la página de inicio de sesión de la predeterminada wp-login-php
- Crear contraseñas complejas
- Limitar el número de intentos de inicio de sesión en un período de tiempo determinado
Saludos
Arnaud
Cambia también tus contraseñas FTP en caso de que el atacante haya accedido por esta vía.
¡Gran consejo!
Arnaud,
Gracias por esta valiosa información. Le agradezco que haya proporcionado una solución y consejos en su respuesta a Mike. Es una información muy valiosa para mí.
¡Feliz día! =)
¡De nada Diana!
Así que estás diciendo que tendrían que acceder por contraseña, ¿es correcto? No hay otra forma de entrar. ¿No pueden saltarse el paso de la contraseña?
Es el más común, pero también existen otros métodos para acceder a los archivos de tu sitio. El FTP es un buen ejemplo.
¿Qué plugin de seguridad recomendaría y no causará un conflicto con All in One SEO Pack?
WordFence es muy bueno y no tiene problemas de compatibilidad con All in One SEO Pack.
También recomendamos iTheme Security.
¡Mmmn! Muy útil. Me salvé por los pelos de un ataque la semana pasada.
¡Gracias por un post tan útil! Creo que debemos tener cuidado con el uso de temas o plugins nulled o libres.
Encontré este post porque hay un script que está siendo inyectado en el header.php de cada sitio en la cuenta del servidor. Cada pocos días tengo que comprobar header.php y eliminar el bloque de texto por encima , por lo general con una tonelada de espacios por encima de ella. ¡Es insoportable! Si el script no se elimina, Google y otros escáneres de seguridad ponen el sitio en la lista negra durante unos días hasta que se elimina y piden a Google que vuelva a escanear el sitio. Está afectando gravemente a la clasificación.
Hasta ahora:
1. Eliminado todos los archivos de núcleo WP y reuploaded archivos de núcleo versión más reciente.
2. Eliminado plugins no utilizados.
3. Comprobado cada directorio /uploads para los archivos .php (ya que sólo debe haber imágenes).
4. Cambiado el nombre de usuario admin.
5. Cambiadas las contraseñas.
6. Eliminados usuarios spam.
7. Cambio de contraseña FTP.
8. Instalado Sucuri plugin y endurecido todo, instalado Wordfence, instalado Mal Comportamiento.
Ninguno de los plugins de seguridad están bloqueando esto y ninguno de ellos es incluso alertando de que el header.php fue modificado. TODAVÍA ESTÁ SUCEDIENDO SOBRE UNA BASE SEMANAL.
Preguntas:
1. 1. ¿Cómo pueden inyectar este script en todos los sitios de la cuenta de alojamiento al mismo tiempo, incluso si esos sitios no utilizan los mismos plugins, etc.? Esto es lo más frustrante y molesto porque todos los sitios necesitan que se elimine el script y todos los sitios entran en la lista negra de Google, etc.
2. Si son capaces de entrar en tus archivos y pegar este script en el header.php y se dan cuenta de que sigues eliminándolo, ¿qué les impide trastear con todos los archivos o borrar cosas?
Para responder a sus preguntas:
1. No estoy muy seguro de que te estés enfrentando al mismo problema que se describe en este artículo. En cualquier caso, si tus artículos siguen siendo inyectados con código, probablemente te estés enfrentando a una infección de un script malicioso en tu servidor web. Es posible que desee hacer una copia de seguridad de todos sus sitios y limpiarlos uno por uno y hacer una limpieza completa de su servidor antes de restaurar sus sitios de nuevo.
2. No hay nada que se lo impida, pero la mayoría de los hackers no ganan nada destruyendo o infectando completamente un sitio. Todavía quieren que la gente visite y haga uso de la funcionalidad/información de su sitio.
Hola Arnaud,
Gracias por compartirlo. ¿Podría ser esta la razón por la que estoy recibiendo demasiados comentarios de spam?
No, los comentarios spam no son más que bots o bloggers que intentan aumentar su SEO creando backlinks desde otros sitios web hacia el suyo.
Este es un método que generalmente no funciona porque los motores de búsqueda ven a través de este engaño y pueden comprobar la calidad de los backlinks.
Si utilizas WordPress, te recomiendo que instales un plugin como Akismet para filtrar los comentarios válidos e inválidos.
Es difícil encontrar gente con experiencia en este tema,
pero parece que sabes de lo que hablas. Gracias
Hola, mi sitio web fue hackeado hace unos meses y lo hemos limpiado totalmente, pero cuando ik establecer un complemento en Facebook con enlace a mi sitio web, se redirige la primera vez a un sitio web malicioso. He oído de alguien que esta redirección es siempre 1 vez por IP. ¿Todavía debe haber archivos infectados que crea esta redirección?
Sí, parece que su sitio sigue infectado con malware. Ofrecemos un servicio de limpieza de malware, puede ponerse en contacto con nosotros aquí para obtener información - https://aioseo.com/contact/
Gran explicación.