Herramientas para analizar la seguridad de WordPress

WordPress sigue siendo uno de los gestores de contenido más populares en internet, su uso se extiende a casi un 30% del total de paginas web del mundo, lo que se resume en unas 19.500.000 páginas webs a lo largo y ancho de todo internet.

Pese a ser uno de los más famosos CMS, no goza de la mejor fama en lo que a seguridad se refiere, aunque sus actualizaciones sean constantes, se siguen descubriendo cada cierto tiempo nuevas vulnerabilidades que comprometen la seguridad de este gestor de contenido. Las debilidades de WordPress vienen por norma general de la mano de los plugins que podamos tener instalados (aunque también salen vulnerabilidades del core). Estos plugins son software de terceros, por tanto se delega la seguridad de estas piezas de código php a sus autores, lo que nos lleva a una dependencia de nuestro WordPress a varios terceros (en función de cuántos plugins tengamos instalados).

A todo esto hay que añadir la necesidad de ciertas configuraciones, tanto a nivel de servidor web, php y configuraciones propias de WordPress para tener lo más seguro posible nuestro gestor de contenido (y aun así nunca estaremos seguros al 100%).

Herramientas orientadas a WordPress

Actualmente existen varias herramientas para escanear nuestro WordPress, con las que podremos tener una primera visión de configuraciones inseguras, plugins desactualizados y demás pormenores que pueden hacer nuestro WordPress un poco más “amigable” para los malos. A continuación enumeramos algunas:

WPSCan:
– Lenguaje: Ruby
– GIT: https://github.com/wpscanteam/wpscan

Plecost:
– Lenguaje: Python
– GIT: https://github.com/iniqua/plecost

WPSeku:
– Lenguaje: Python
– GIT: https://github.com/m4ll0k/WPSeku

Wordstress:
– Lenguaje: Ruby
– GIT: https://github.com/thesp0nge/wordstress

Vane:
– Lenguaje: Ruby
– GIT: https://github.com/delvelabs/vane

WordPress Exploit Framework:
– Lenguaje: Ruby
– GIT: https://github.com/rastating/wordpress-exploit-framework

WordPresscan:
– Lenguaje: Python
– GIT: https://github.com/swisskyrepo/Wordpresscan

Herramientas orientadas a webs en general

Además de estas herramientas especialmente destinadas a WordPress, podemos usar otras herramientas destinadas a aplicaciones web en general:

Acunetix: es una herramienta de pago para auditar nuestro website, multiplataforma (Windows, Linux, Online), ofrece comprobaciones para SQL Injection, XSS, XXE, SSRF, Host Header Injection y otras 4500 vulnerabilidades para web.
Web: https://www.acunetix.com/

Arachni: Es un framework basado en Ruby gratuito para analizar nuestro sitio web, necesitaremos una buena máquina para hacerlo funcionar ya que consume bastantes recursos. Es multiplataforma (Windows, Linux y MacOS). Podemos comprobar todo tipo de vulnerabilidades orientadas a web e incluso vulnerabilidades que se puedan ejecutar a través de AJAX, Javascript, HTML5…
Web: https://www.arachni-scanner.com/

Nikto: Es un software escrito en perl bajo licencia GPL, está disponible en la mayoría de repositorios de las distintas distribuciones de Linux, aunque está algo anticuado, nos sirve para detectar algunas configuraciones inseguras de nuestro servidor e información sensible acerca de directorios, versiones del servidor web, etc.

Openvas: Es un framework programado en C, distribuido bajo licencia GPL. Este software surgió después de que Nessus dejara de desarrollar bajo licencias open source, actualmente es mantenido por la empresa Greenbone Networks (desde 2009) y forma parte de un sistema de gestión de vulnerabilidades llamado Greenbone Security Management (GSM).
Web: http://www.openvas.org/

Herramientas para analizar el código PHP de tu WordPress

Existen varias herramientas para detectar código malicioso en PHP, algunos son plugins que corren en nuestro wordpress o incluso herramientas que tendremos que ejecutar a nivel de servidor, en resumidas cuentas, esta clase de software tiende a analizar las funciones vulnerables de PHP que haya en nuestro código, realizar comparativas de nuestros ficheros con los originales, detectar código ofuscado…

Wordfence Scan: Es un plugin de WordPress es capaz de escanearnos el sitio web en busca de malware y ficheros modificados comparando los archivos de nuestro CMS con los de su versión original, en el caso que algún fichero haya sido modificado wordfence nos lo indicará. Además es capaz de detectar webshells y demás códigos maliciosos.

WPSeku: Ya hemos mencionado en este post la herramienta WPSeku, pero no sólo nos sirve para analizar el sitio desde fuera, sino que también podemos ejecutarla en el servidor y analizar el código php en busca de funciones sospechosas, suele dar algún que otro falso positivo, pero es un buen punto de partida para analizar nuestro sitio.

PHP Malware Finder: Este software utiliza reglas Yara para encontrar código malicioso en PHP, es simple y pese a que no detecta las amenazas más avanzadas, nos puede servir para detectar código malicioso PHP sencillo y ofuscado con herramientas conocidas.
Web: https://github.com/nbs-system/php-malware-finder

En siguientes posts vamos a hablar sobre cómo configurar algunos aspectos para hacer nuestro CMS un sitio más seguro (aunque nunca 100%).