CÓMO CREAR TU PROPIO SHODAN: DETECCIÓN DE WORDPRESS, JOOMLA Y DRUPAL [PARTE IX]

shodita

El próximo 7 de octubre empieza la PyConEs y el domingo 9 de octubre hablaré sobre cómo crear tu propio Shodan de casa con Python y MongoDB. Pero antes de ir aun debemos hablar sobre varios bots más que tenemos que crear. Ya hablamos sobre “Nobita-bot.py” y “Shizuka-bot.py“, este último proporcionando a nuestro nuevo bot la información necesaria para funcionar el nuevo miembro de la familia “Suneo-bot.py“.

Ya hablamos del bot Shizuka que se encargará de obtener los dominios asociados a una ip a través de ip reverse que Robtex nos muestra en su web. Ahora lo que nos faltaba era cómo navegaremos una a una de cada web para clasificaras como WordPress, Joomla o Drupal.

Para ello crearemos el nuevo bot “Suneo-bot.py“. Con la librería BeautifulSoup parser html obtendremos el “meta generator” de las diferentes web y buscaremos “Joomla” o “Drupal”.

detect-joomla-drupal

Es cierto que deberemos aumentar en próximas versiones nuevas medidas de detección ya que, son muy básicas. Podemos implementar tanto para Joomla y Drupal una búsqueda del login: /administrator, /admin, etc. Además también podemos buscar directorios y archivos específicos de cada cms. Sin embargo en esta primera versión solo buscaremos el Generator.

drupal-generator

Si estas interesado empezar a programar con Python: QuantiKa14 desde 2013 oferta un curso online por solo 110 €

Para WordPress será diferente ya que, después de presentar el ILLOWP en la WordCamp de Sevilla 2016 he reutilizado el código. Podéis ver la presentación pinchando en este enlace.

detect-wp

Lo primero que haremos será buscar “wp-content” en el código html. Existe un problema. Una web que tenga enlaces a otra web con WordPress podría darnos un falso positivo. Para solucionarlo tendremos que crear una función que compruebe que el enlace que contenga “wp-content” hace referencia a la misma web que estamos escaneando.

En caso de no encontrar “wp-content” en el html irá hasta el famoso “/readme.html” que es un archivo que aunque lo borremos se volverá a crear en cada actualización y muchas web se les olvida quitar. Este archivo contiene la versión y puede ser interesante saber si lo tenemos.

El código esta subido a Github.

¡Nos vemos en la PyConEs!

NOVITA-FOOTER

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *