blog webempresa

Seguridad en WordPress: Scanner de Exploits

por | May 27, 2012 | Seguridad WordPress

Porcetange migraciónHablar de inseguridades en WordPress se está convirtiendo en un clásico en los últimos tiempos que está afectando a la confianza de los usuarios hacia esta excelente plataforma de blogging afectada por vulnerabilidades casi siempre causadas por plugins de terceros mal programados, desactualizados o carentes de las más elementales medidas de seguridad.

Analizar los vectores de ataque de un sitio web basado en WordPress es fundamental para garantizar unos mínimos que permitan salvaguardar la información alojada en el CMS y a su vez evitar que una simple vulnerabilidad derivada de un plugin acabe afectando al funcionamiento de todo el sitio o sirva de puerta de entrada hacia el servidor donde se aloja.

Para esta tarea vamos a utilizar el plugin Exploit Scanner 1.2.1, compatible con WordPress 3.3.2, que busca en los archivos de su sitio web, en los post y en las tablas de comentarios de su base de datos para localizar cualquier cosa sospechosa. También examina la lista de plugins activos con nombres de archivo inusuales.

El plugin no eliminada ninguna cadena localizada sospechosa, delegando esa tarea al usuario o mantenedor del Blog de WordPress ayudándole a localizar archivos subidos que sean peligrosos para el sitio web.

Cuando un sitio web se ve comprometido, los atacantes dejan atrás scripts y contenido modificado que se pueden encontrar mediante una búsqueda manual a través de todos los archivos de un sitio, tarea compleja que consume un elevado tiempo. Algunos de los métodos utilizados para ocultar este código modificado o malicioso o enlaces de spam son obvios, como el uso de CSS para ocultar el texto.

La base de datos también se puede utilizar para ocultar el contenido o ser utilizada para ejecutar código. Las entradas de comentarios son uno de los métodos utilizados para insertar spam principalmente si estos formularios no están protegidos por CAPTCHA o reCAPTCHA.

El plugin Exploit Scanner realiza búsquedas en su sitio e intenta encontrar los archivos modificados y los registros de la base de datos.

Métodos de búsqueda:

  • Archivos y bases de datos.
  • Sólo en archivos.
  • Solo en la base de datos.
  • Buscar archivos por palabra clave personalizada.

La búsqueda por palabra clave personalizada permite buscar en los archivos lo que se quiera. Hay que tener cuidado con los que se busca pues la búsqueda de palabras comunes como “php” pueden llevar mucho tiempo, y generar una lista muy larga de archivos y un aumento en el consumo de recursos del servidor donde se aloje el sitio web de WordPress.

Descarga:


Descargar el plugin Exploit Scanner desde la web oficial de WordPress.org.


Instalación:

  • Descargar y descomprimir el plugin.
  • Copiar el plugin en el directorio exploit-scanner dentro de la carpeta de plugins.
  • Ir a la página de plugins y activar el plugin.
  • Encontraremos un nuevo elemento de menú llamado “Exploit Scanner” en el menú Herramientas.

¿Cómo puedo solucionar el error de memoria?

Analizar un sitio web basado en WordPress puede consumir un poco de memoria. El plugin intenta asignar 128 MB, pero a veces eso no es suficiente o está limitado sobre todo si nos encontramos alojados en servidores CloudLinux, por ejemplo, que limitan los recursos por cuentas para salvaguardar la integridad del servidor.

Se puede modificar la cantidad de memoria de PHP desde la página de administración del plugin. También se puede limitar el tamaño máximo de los archivos escaneados. Reducir este número para ignorar más archivos, pero siendo conscientes de que se pueden pasar por alto archivos hackeados. Todos los archivos omitidos aparecen después de la exploración.

Es recomendable limpiar los directorios de caché (wp-content/cache/ por ejemplo) antes de escanear para reducir el tiempo de escaneo y el consumo de memoria.

Interpretación de los resultados:

Es probable que este escáner encuentre falsos positivos (es decir, archivos que no contienen código malicioso pero si cadenas que contengan parte de una cadena que habitualmente suele estar catalogada como sospechosa, siendo esta legitima).

Sin embargo, es mejor errar por el lado de la precaución, y si no está seguro, preguntar en el foro de soporte, descargar una copia nueva del plugin afectado, buscar en Internet situaciones similares para documentarse, etc. Es importante prestar atención a:

  • Enlaces externos desconocidos.
  • Texto codificado en base64 en archivos del core modificados o en el archivo wp-config.php.
  • Cuentas de administrador adicionales.
  • Mensajes de spam en comentarios.
Entendiendo los tres niveles de resultados:

  • Grave: resultados que a menudo son fuertes indicadores de un hack (aunque no son la prueba definitiva) por lo que conviene profundizar.
  • Advertencia: resultados más comunes en circunstancias normales que pueden parecer resultados inocentes, pero aún así deben ser tratados con precaución.
  • Nota: Es la prioridad más baja, que muestra resultados comúnmente utilizadas en el código legítimo o notificaciones sobre eventos tales como archivos omitidos.
Seguridad:

La seguridad es un tema importante, por supuesto y más si analizamos que durante 2011 y lo que llevamos de 2012, WordPress acumula una ingente cantidad de vulnerabilidades detectadas y publicadas por los sitios de seguridad más importantes en Internet.

Aviso: Este plugin, de alguna manera, puede ser escribible en el servidor pudiendo ser modificado de forma maliciosa. Por este motivo, es importante disponer de una suma de comprobación MD5 del mismo contra la que poder contrastarlo en caso de que nuestro sitio se haya visto comprometido y modificado el plugin Exploit Scanner para alterar sus resultados.

  • exploit-scanner.php (1.2.1): 5694f1d0ecde8cd2560eae7355b966b1
  • hashes-3.3.2.php: f05540186b993c70faa91e8da5dfbdd8
  • hashes-3.3.1.php: 3afac26032f45a07aed960445e0d3e8f
  • hashes-3.3.php: ac46723d79de84e6f364c893f7a0ecd9

Esta suma la indicamos a continuación, estando también disponible en el archivo README dentro del archivo .zip del plugin. Debemos comparar las sumas de comprobación si tenemos la sospecha de que el sitio ha sido comprometido, antes de efectuar un scanner con el plugin o si somos muy paranoicos con la seguridad. Las nuevas versiones de WordPress puede crear falsos positivos en sus resultados.

¿Nuestro sitio de WordPress ha sido hackeado?

En estos casos lo más importante es asegurarse de cambiar todas las contraseñas relacionadas con WordPress (sitio web, FTP, MySQL, etc.). Mantener una rutina de copias de seguridad periódica (ya sea manual o mediante un plugin) es extremadamente útil, y si alguna vez encontramos que el sitio ha sido hackeado siempre podremos restaurarlo fácilmente a partir de una copia de seguridad limpia.


¿Te ha resultado útil este artículo?

Promo abril