Descubrimiento y catalogación automatizados de: activos de redes, correo electrónico y redes sociales.

Diría que una posible aplicación defensiva de OSINT es la predicción de amenazas. Es posible hacer esto monitorizando en varias plataformas en línea y verificando posibles vulnerabilidades para pronosticar amenazas potenciales contra su organización. Por ejemplo, puede controlar pérdidas de contraseña que podrían poner en riesgo una organización. Probablemente se necesite hacer algunos procesos bastante avanzadas que involucren el aprendizaje automático y el procesamiento del lenguaje natural. Si se planea automatizar esta práctica, porque inevitablemente se tendrá que ordenar mucha información no estructurada cuando se trata de conversaciones entre humanos. Si se va a construir un sistema automático de predicción de amenazas, probablemente se recopilara información sobre lo que constituye una amenaza primero y luego determinar qué tipo de métricas se pueden extraer de eso para tener algo que alimente un algoritmo de aprendizaje automático más adelante. Tal vez se pueda reunir un montón de publicaciones de Facebook y Twitter que amenazan una organización y luego crear una bolsa de palabras o un modelo que luego se pueda utilizar para entrenar a un clasificador Naive-Bayes para detectar otras publicaciones que amenazan una organización. Esto es similar a cómo funcionan los filtros de spam por cierto. Una vez que integre las métricas en un algoritmo de aprendizaje automático, se generará un clasificador que, a su vez, permitirá determinar automáticamente las amenazas en el futuro. Por supuesto, este clasificador no será completamente preciso y deberá corregirse con datos adicionales a medida que el sistema se vuelva más maduro.


Alternativamente, puede optar por un tipo de sistema de puntuación enfático . En este enfoque, intenta determinar una amenaza en un mensaje en función de las palabras que contiene. Digamos que eres un fabricante de cereales y hay alguna charla en línea sobre ti que contiene las palabras «explotar» o «vulnerabilidad» o «fuga» u otras palabras técnicas que no se combinan bien con los productos relacionados con el desayuno. Si ve algo así, eso podría indicar algún tipo de amenaza cibernética contra su organización.

ODIN es una herramienta de Python para automatizar la recopilación de inteligencia, el descubrimiento de activos y la generación de informes. Tiene como objetivo automatizar las tareas de reconocimiento básicas utilizadas para descubrir y recopilar datos sobre los activos de la red, incluidos: dominios, direcciones IP y sistemas orientados a Internet. La característica clave de ODIN es la gestión de datos y la generación de informes. Los datos se organizan en una base de datos y luego, opcionalmente, esa base de datos se puede convertir en un informe HTML o una base de datos gráfica Neo4j para visualizar los datos.

ODIN realiza esto en múltiples fases:

Fase 1 – Descubrimiento de activos.

  • Recopila información básica de la organización de fuentes como la base de datos de marketing.
  • Verifica los certificados DNS Dumpster, Netcraft y TLS para descubrir subdominios.
  • Resuelve dominios y subdominios a direcciones IP a través de conexiones de socket y registros DNS.
  • Recopila información para todas las direcciones IP, como datos de propiedad y organización, de RDAP, whois y otras fuentes de datos.
  • Busca dominios y direcciones IP en Shodan para recopilar datos adicionales, como sistemas operativos, banners de servicio y puertos abiertos.
  • Comprueba la posibilidad de adquisiciones de dominios frente a los dominios y subdominios.

Fase 2 – Descubrimiento de empleados.

  • Recoge las direcciones de correo electrónico y los nombres de los empleados de la organización objetivo.
  • Vincula a los empleados a los perfiles de redes sociales a través de los motores de búsqueda y la API de Twitter.
  • Comprueba las direcciones de correo electrónico descubiertas con “Have I Been Pwned”.

Fase 3 – Cloud y servicios web.

  • Busca los archivos PDF y archivos de Office en el dominio de destino, para descargarlos y extraer metadatos.
  • Busca los AWS S3 buckets y los espacios Digital Ocean, utilizando palabras clave relacionadas con la organización.
  • Toma capturas de pantalla de los servicios web descubiertos para una revisión rápida y temprana de los servicios.

Fase 4 – Informes.

  • Guarda todos los datos en una base de datos SQLite3 para permitir la consulta fácil de los datos.
  • Genera un informe HTML utilizando consultas de SQL predeterminadas para que sea fácil de leer los datos en un navegador web.
  • Crea una base de datos gráfica Neo4j que vincule todas las entidades descubiertas (direcciones IP, dominios, subdominios, puertos y certificados) con relaciones.

Al final, tendrá varias formas de navegar y visualizar los datos. Incluso una consulta simple de Neo4j como MATCH (n) RETURN n (mostrar todo) se puede crear un gráfico fascinante del perímetro externo de la organización y hacer que sea sencillo ver cómo se vinculan los activos.

Más información y descarga de ODIN:
https://github.com/chrismaddalena/ODIN

Deja un comentario