Internet tiene una gran cantidad de información que de ser recuperada puede ser valiosa para la toma de decisiones. Una alternativa para lograrlo es el uso de herramientas libres como Python junto con técnicas como el Google Hacking. Herramientas como Terrier IR para análisis seguro de logs o metodologías como OSINT para recuperar información pública son algunos ejemplos del tipo de tareas que se pueden llegar a hacer con la recuperación y el análisis de la información. Implementar una herramienta que permita capturar información relevante puede ser tan sencillo como utilizar scripts en Python.

A continuación mencionamos algunos puntos que podrían tenerse en cuenta para implementar un sistema que permita recopilar  información pública para su posterior análisis. El proceso se puede dividir en tres sencillas etapas: la configuración de las APIs, la optimización de las búsquedas y el desarrollo del script.

Configurar APIs

Para lograr obtener una serie de búsquedas sin restricciones por parte de los servicios que se quieren consultar, es necesario utilizar las APIs. La mayoría de servicios web, incluyendo buscadores y redes sociales, cuentan con alguna API para permitir que los desarrolladores interactúen a través de sus aplicaciones con la información pública.

En el caso de Google, cuenta con el servicio OAuth 2.0 Client ID que a través de dos códigos de validación, permite que el usuario realice una serie limitada de consultas con el motor de búsqueda de Google, y esta información recuperarla para luego ser procesada.

Google Hacking

Ya en un post anterior se pudo de manifiesto como existe información crítica expuesta utilizando Google Hacking. Lo valioso en este caso es que utilizando este tipo de sintaxis se pueden llegar a refinar las búsquedas de tal forma que se puede encontrar información bastante específica.

Etiquetas como intitle, inurl, site ayudan a especificar que la búsqueda se enfoque en lugares claves de las páginas de web. Otras etiquetas como filetype puede ayudar a identificar archivos específicos tales como fotografías, videos, audios o cualquier otro tipo de archivo que se desee recuperar.

Scripts en Python

Basándonos en una conferencia dictada por la gente de VULNEX en una universidad en España, podemos construir scripts en Python que permiten recuperar información pública utilizando la API de Google. Para lograr esto se hace necesario el uso de algunas librerías específicas:

Librerias a importar

Estas librerías van a permitir manejar las páginas web y los parámetros de búsqueda. Además de permitir exportar los resultados de la búsqueda en un formato que pueda ser analizable posteriormente, en este caso JSON.

Luego se definen los parámetros de la búsqueda que se desee realizar. Es en este punto donde la sintaxis de Google Hacking puede resultar bastante útil.

Parámetros de búsqueda

Ya solamente resta organizar todos los parámetros siguiendo el formato que utiliza la API de Google para poder realizar la búsqueda. Además la información recuperada se puede organizar en una estructura JSON, la cual podría ser exportada a otra herramienta o utilizar otros paquetes de este mismo lenguaje para su análisis.

Recuperar y organizar la información

¿En qué aplicarlo en Seguridad Informática?

Si llevamos estas herramientas al campo de la seguridad informática, se puede empezar a pensar en varias posibilidades. Por ejemplo, para un profesional que esté interesado en encontrar información sobre vulnerabilidades en aplicaciones o dispositivos para realizar algún tipo de Penetration Test, puede acondicionar algún tipo de búsqueda que le permita reunir información de un mismo tema y tenerla disponible para su uso.

O por ejemplo para alguien que esté auditando la seguridad de una empresa, puede ser útil determinar cual es el nivel de exposición de la información de la empresa en Internet lo cual puede llegar a obtenerse fácilmente con este tipo de scripts.

Como se puede apreciar las oportunidades de aplicación son bastantes amplias, y no se limitan solamente al campo de la seguridad informática. También se pueden extender este tipo de herramientas al análisis de información como parte estratégica del negocio o para conocer el mercado de un producto. Por el potencial de uso, ya han empezado a aparecer herramientas que automatizan y potencian estos procesos con herramientas de visualización por ejemplo. Tal es el caso de Maltego o Netglub, pero estas serán tema de una próxima entrada.

python_academiaeset