Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🕷️ SPID GDID – OPSEC Forensics & Telemetry Correlation Tool

banner

Bienvenido a SPID GDID, una herramienta de laboratorio desarrollada por UnHackerEnCapital que cumple un doble propósito: demostrar la técnica de desanonimización utilizada por el FBI en la operación contra el grupo Scattered Spider (basada en la correlación del GDID y el MachineGuid de Windows), y al mismo tiempo fortalecer el derecho al anonimato y la privacidad permitiendo al usuario rotar y modificar estos identificadores para romper la cadena de correlación.

En su faceta ofensiva/forense, esta PoC demuestra cómo Microsoft puede correlacionar tráfico de red anónimo (VPN/Tor) con la IP real de un usuario a través de los identificadores únicos de hardware que Windows transmite de forma persistente en su telemetría.

En su faceta defensiva/OPSEC, la herramienta integra la función de mutación de identificadores que permite al usuario generar nuevos GDID y MachineGuid al azar, sobrescribiéndolos directamente en el Registro de Windows, invalidando la huella digital previa y dificultando que cualquier tercero (servidores de telemetría, agencias o terceros maliciosos) pueda correlacionar el tráfico pasado con el presente.

⚖️ Aviso de Auditoría: Este software se proporciona con fines estrictamente educativos y de investigación en ciberseguridad. El usuario es el único responsable de asegurar que el análisis se realice sobre sistemas donde tenga autorización explícita.


📖 Contexto: El Caso Scattered Spider

En abril de 2026, la policía de Finlandia detuvo (a petición del FBI) a Peter Stokes (alias "Bouquet"), un joven de 19 años acusado de ser un miembro clave de Scattered Spider. Se le vincula, entre otras intrusiones, con un ciberataque lanzado en mayo de 2025 contra una prestigiosa joyería de lujo estadounidense a la que le exigieron un rescate de 8 millones de dólares tras comprometer su help desk. La clave para desenmascararlo no fue una herramienta co-desarrollada con empresas privadas como Group-IB, sino una colaboración directa entre el FBI y el equipo de inteligencia de amenazas de Microsoft a través de una orden judicial.

La clave de la técnica: el identificador global del dispositivo (GDID) emitido por Microsoft se transmite de forma persistente en los servicios de telemetría de Windows, y es independiente de la dirección IP. Esto significa que el mismo GDID aparece tanto cuando el usuario está detrás de una VPN como cuando se conecta directamente, permitiendo correlacionar ambas conexiones y revelar la IP real.

Referencia: Microsoft case details | Group-IB Research


🚀 Características Principales

  • Lectura de Identificadores Forenses: Extrae el MachineId (GDID) desde las ramas del Registro: SQMClient, DiagTrack y Biometrics. Extrae el Cryptographic MachineGuid desde HKLM\SOFTWARE\Microsoft\Cryptography.
  • Sniffing de Telemetría con tshark: Captura en tiempo real los paquetes TLS Handshake (ClientHello) destinados a los endpoints críticos de Microsoft, Snapchat, Facebook, Apple y Ngrok, filtrando por SNI (Server Name Indication).
  • Mutación de Identificadores (Protección OPSEC): Genera y sobrescribe nuevos UUIDs tanto para el GDID como para el MachineGuid directamente en el Registro de Windows, rompiendo la cadena de correlación y fortaleciendo el anonimato del usuario ante los servicios de telemetría.
  • Inyección de Telemetría: Fuerza la transmisión de datos de telemetría deteniendo/iniciando el servicio DiagTrack, ejecutando usoclient StartScan y lanzando el Microsoft Compatibility Appraiser, mientras inyecta tráfico real hacia los endpoints de telemetría de Microsoft.
  • Correlación VPN vs. Conexión Directa: El panel de monitoreo permite observar que el mismo GDID aparece en el tráfico capturado independientemente de si se utiliza VPN o conexión residencial directa.
  • Informe Pericial Forense: Genera un reporte HTML técnico-pericial que documenta la evidencia capturada, la IP pública registrada y la conclusión de correlación entre conexiones anonimizadas y directas.
  • Detección Automática de Interfaz: Detecta adaptadores de red activos (Ethernet, Wi-Fi, VPN tunnels como Mullvad/WireGuard/Tailscale) y permite seleccionar múltiples interfaces para sniffing simultáneo.

🔍 ¿Cómo funciona la PoC?

El sistema opera en cuatro fases críticas de análisis:

Fase 1 – Extracción de Identidad Forense

El script lee del Registro de Windows los identificadores únicos de hardware:

  • GDID (MachineId): Asignado por servidores centrales de Microsoft (a través de login.live.com) cuando la instalación de Windows se vincula a una cuenta. Se almacena en SQMClient, DiagTrack y Biometrics.
  • MachineGuid: Generado localmente al instalar Windows. Se almacena en HKLM\SOFTWARE\Microsoft\Cryptography.

Fase 2 – Captura y Filtrado de Telemetría

Utilizando tshark (motor de Wireshark), se interceptan los ClientHello TLS enviados por el sistema operativo y las aplicaciones a los endpoints de telemetría. El filtro captura conexiones hacia dominios de Microsoft, Snapchat, Facebook, Apple y Ngrok, extrayendo:

  • IP de origen (pública real)
  • SNI (dominio destino)
  • Versión TLS
  • Puerto destino
  • Timestamp

Fase 3 – Inyección y Trigger de Telemetría

Para forzar la generación de tráfico de telemetría en el corto plazo:

  1. Se detiene el servicio DiagTrack (Connected User Experiences and Telemetry).
  2. Se inyecta tráfico real hacia endpoints clave (v10.events.data.microsoft.com, Snapchat, Facebook, Apple, Ngrok).
  3. Se ejecuta usoclient StartScan para forzar un escaneo de actualizaciones.
  4. Se reinicia DiagTrack y se lanza el Microsoft Compatibility Appraiser.

Fase 4 – Correlación y Desanonimización

La prueba definitiva: con VPN activa y sin VPN, el GDID capturado en los paquetes TLS es idéntico. Esto demuestra que Microsoft puede correlacionar ambas conexiones, revelando la IP real del abonado a través de la invariabilidad del identificador de hardware.


🛡️ Protección de Anonimato: Rompiendo la Cadena de Correlación

Más allá de la demostración forense, SPID GDID integra una funcionalidad defensiva diseñada para fortalecer el derecho a la privacidad y el anonimato del usuario.

El Problema: Huella Digital Persistente

Cada instalación de Windows posee un GDID (MachineId) y un MachineGuid que actúan como huella digital única y persistente. Estos valores:

  • Se transmiten en cada paquete de telemetría enviado a los servidores de Microsoft.
  • Se mantienen invariantes sin importar qué VPN, proxy o red utilice el usuario.
  • Permiten a quien controle los servidores de telemetría correlacionar todas las conexiones pasadas y futuras de un mismo dispositivo.
  • Se almacenan en múltiples ramas del Registro (SQMClient, DiagTrack, Biometrics, Cryptography), lo que dificulta su limpieza manual completa.

Esto convierte al GDID en un identificador permanente que vulnera la anonimidad incluso cuando el usuario toma medidas legítimas de protección como el uso de VPN o Tor.

La Solución: Mutación de Identificadores

El botón 🎲 MUTAR IDENTIFICADORES (GDID & GUID) del dashboard ejecuta la siguiente secuencia:

  1. Generación de nuevos UUIDs: Se generan dos identificadores nuevos completamente aleatorios mediante uuid4().
  2. Sobrescritura del GDID: Se reescriben los valores en las tres ramas del Registro donde se almacena el MachineId:
    • HKLM\SOFTWARE\Microsoft\SQMClientMachineId
    • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Diagnostics\DiagTrackMachineId
    • HKLM\SOFTWARE\Microsoft\BiometricsMachineId
  3. Sobrescritura del MachineGuid: Se reemplaza el valor en HKLM\SOFTWARE\Microsoft\CryptographyMachineGuid.

Resultado: Cadena Rota

Al modificar estos valores antes de establecer una conexión, el tráfico de telemetría futuro se asocia a un nuevo identificador, haciendo que:

  • Las conexiones anteriores (con el GDID viejo) ya no pueden correlacionarse con las nuevas.
  • El GDID anterior queda huérfano en los servidores de Microsoft, sin vínculo con la nueva IP o actividad.
  • Se restablece la separación efectiva entre la identidad del dispositivo y la actividad de red.

💡 Concepto clave: La rotación periódica del GDID funciona de forma análoga a cambiar la dirección MAC de una interfaz de red: no impide la captura de paquetes en una sesión, pero rompe la continuidad del seguimiento entre sesiones distintas.

Cuándo Usar la Mutación

Escenario Recomendación
Uso diario con VPN para privacidad Rotar GDID antes de cada sesión nueva
Investigación forense / Pentesting Mantener GDID fijo para correlacionar evidencia
Análisis de telemetría de Windows Mutar GDID para observar cómo reaccionan los servicios
Pre/post exposición sensible Mutar + verificar con el sniffer que el nuevo GDID aparece en el tráfico

⚙️ Configuración y Uso

1️⃣ Requisitos del Sistema

Componente Requisito
Sistema Operativo Windows 10 / 11 (requiere acceso al Registro HKLM)
Python 3.8 o superior
Wireshark Instalado (se detecta automáticamente tshark.exe)
Permisos Ejecutar como Administrador (requerido para mutar registros)

2️⃣ Instalación de Dependencias

pip install PyQt5

3️⃣ Ejecución

python spidgdid.py

⚠️ IMPORTANTE: La aplicación debe ejecutarse como Administrador para poder leer y modificar las ramas del Registro HKLM. Sin permisos elevados, la mutación de identificadores no funcionará.

4️⃣ Flujo de Uso

Modo Forense (Demostración de Desanonimización)

  1. Al iniciar, el dashboard muestra el GDID actual, el MachineGuid y la IP pública real del equipo.
  2. Selecciona las interfaces de red a monitorear (se autodetectan adaptadores VPN, Wi-Fi y Ethernet).
  3. Haz clic en ▶ INICIAR MONITOREO para comenzar la captura forense de paquetes TLS.
  4. Haz clic en ⚡ INYECTAR TELEMETRÍA para forzar la generación de tráfico de telemetría inmediato.
  5. Observa en la tabla los paquetes capturados con su IP de origen, SNI destino y versión TLS.
  6. Haz clic en 📊 EMITIR INFORME PERICIAL para generar el reporte forense de correlación.

Modo Protección OPSEC (Fortalecer Anonimato)

  1. Haz clic en 🎲 MUTAR IDENTIFICADORES para generar nuevos GDID y MachineGuid en el Registro.
  2. Activa tu VPN o red de anonimización.
  3. Haz clic en ▶ INICIAR MONITOREO y luego en ⚡ INYECTAR TELEMETRÍA.
  4. Verifica en la tabla que el nuevo GDID aparece en los paquetes capturados.
  5. Compara: el tráfico antiguo (GDID viejo) ya no puede vincularse al nuevo.

🧩 Arquitectura del Script

Componente Función
SystemUtils Módulo de utilidades del sistema: lectura/escritura de Registro, detección de tshark, obtención de IP pública
SnifferThread Hilo de captura forense basado en tshark con filtros TLS para endpoints de telemetría
TriggerThread Hilo de inyección que controla DiagTrack, USO Client y Appraiser para forzar telemetría
ReportWindow Generador de informes periciales HTML con evidencia correlacionada
TelemetryDashboard Interfaz gráfica principal (PyQt5) con panel de identidad, tabla de captura y documentación técnica

📸 Panel de la Herramienta

El dashboard presenta una interfaz oscura con los siguientes paneles:

  • Panel de Identidad y Huella Forense: Muestra el GDID (MachineId), el Cryptographic MachineGuid y la IP pública actual.
  • Adaptadores de Red: Lista de interfaces detectadas con selección para monitoreo simultáneo.
  • Registros de Telemetría e Intercepción Forense: Tabla en tiempo real con cada paquete TLS capturado (hora, interfaz, IP origen, puerto, SNI, TLS).
  • Documentación Técnica Forense: Panel lateral con información sobre la generación y el rol de cada identificador.
  • Controles: Botones para monitoreo, inyección de telemetría, mutación de IDs y emisión de informes.

⚠️ Descargo de Responsabilidad

Esta herramienta ha sido creada exclusivamente con fines educativos y de investigación en ciberseguridad. El autor no promueve ni se responsabiliza por el uso de SPID GDID para actividades que violen leyes locales, términos de servicio de terceros o la privacidad de usuarios sin su consentimiento.

La ética es el pilar fundamental del analista de seguridad.


Desarrollado por UnHackerEnCapital – 2026

About

Herramienta para validar la telemetria que utiliza Miscrosoft para desanonimizar usuarios y contramedidas para esta técnica

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages