1 ago 2012

Auditando un Wordpress (Parte I)

Buenas a todos, en la vida del auditor cada día de trabajo puede ser diferente, será normal que nos encontremos con cosas raras que nunca antes habíamos visto, portales con lenguajes usados de pascuas a ramos, etc. pero también en otras muchas ocasiones nos cansaremos de ver siempre los mismos portales, gestores de contenidos, gestores documentales, wikis... Creo que el que más veces me he encontrado en auditorías ha sido Wordpress, y es normal, porque lo que empezó siendo como un sistema de blogs ha crecido para convertirse en uno de los mayores motores de desarrollo de portales web, cada vez más avanzados.

En Flu Project hemos dedicado varias entradas ya a auditar Wordpress, pero nos ha parecido interesante publicar una serie de artículos enumerando algunos pasos lógicos útiles que haría un pentester para auditar estos CMS, al igual que hicimos ya con la Biblia del Footprinting (en la que por cierto acabamos de superar las 20.000 descargas de la versión en libro PDF, sin contar las versiones que circulan por la red tanto en PDF como en otros formatos como epub, etc. ¡gracias!)

Si os fijáis a esta cadena no le he puesto fin (parte I de X...), porque poco a poco iremos aprendiendo nuevas posibles vulnerabilidades que será interesante analizar desde aquí. 

Después de la parrafada... vamos al lio :)

Cuando realizamos un Test de Intrusión (recordando principios básicos), lo primero que realizaremos será la fase de Footprint, es decir, la recoleción de información pública. Y otra cosa no, pero información pública un Wordpress deja... ¡y mucha!

Lo primero que deberemos hacer en una auditoría de Wordpress es comprobar la versión. La instalación por defecto de Wordpress deja un fichero en la carpeta raíz, llamado "readme.html". Este archivo tiene la siguiente pinta:

 

 

Como véis, se trata de un fichero html que podréis visitar sin problemas desde el navegador, y que muestra la información sobre la versión de Wordpress que se encuentra instalada (obviamente será uno de los primeros archivos a eliminar tras instalar un Wordpress, pero la inmensa mayoría no lo hace...).

Sabiendo la versión ya podréis googlear en busca de exploits que afecten a dicha versión de Wordpress, pero eso lo dejaremos para la fase de explotación de vulnerabilidades, por ahora seguimos footprinteando :)

El siguiente paso será analizar el código fuente de algunas de las páginas del Wordpress y buscar parámetros o comentarios que nos puedan dar más datos de la versión de Wordpress para contrastarlos con el obtenido del readme.html (que podrían haber modificado a propósito para engañarnos)

 

 

Cómo veis en este caso nos encontramos con un Wordpress versión 3.4.1.

El próximo día seguiremos recolectando información de Wordpress.

Saludos!

7 comentarios:

  1. Sin duda tema muy interesante, atento estaré a esta serie

    ResponderEliminar
  2. como en el caso de ustedes..."http://www.flu-project.com/wp-content/plugins/rpx/files/stylesheet.css?ver=3.4.1"

    ResponderEliminar
  3. Genial ! estoy montando un wordpress 'casero', y me interesa la seguridad, estaré atento a las demás publicaciones :)

    ResponderEliminar
  4. [...] archivo de README que los wodpress dejan muy amablemente. Recomiendo el lugar donde aprendí esto, FLU project, que tiene una guia para fingerprinting de [...]

    ResponderEliminar
  5. Interesante! Metiendo el ficherito en "noupgrade" del pacman.conf...

    ResponderEliminar