Tienes 15 minutos para sospechar que algo anda mal. Después — hola, repositorio ajeno.
Hace dos semanas, investigadores publicaron materiales dedicados a la vulnerabilidad conocida como GitHub Device Code Phishing, un método de ingeniería social que permite, con solo ocho dígitos y una llamada telefónica, obtener acceso a los repositorios de una empresa en GitHub y comprometer su cadena de suministro de software.
A simple vista, el esquema parece sencillo, pero su ejecución exitosa requiere una preparación seria. Es necesario crear una historia creíble, interactuar rápidamente con la víctima y gestionar de forma eficaz los tokens de acceso.
Para simplificar este tipo de ataque y eliminar las limitaciones asociadas, los especialistas desarrollaron GitPhish, una herramienta que automatiza el phishing basado en Device Code Flow. Actualmente está disponible de forma pública en GitHub.
La base del esquema es la explotación del mecanismo OAuth 2.0 Device Authorization Grant, donde el usuario introduce un código de autorización en un dispositivo separado, como un navegador. Es precisamente en esta etapa donde el atacante intenta interceptar el acceso.
Los ataques de phishing clásicos con este enfoque requieren una interacción constante y en línea con la víctima. Esto los hace laboriosos y limita su escalabilidad. Si el usuario sospecha algo o retrasa el proceso, toda la preparación se desperdicia.
GitPhish resuelve estos problemas de dos maneras clave. Primero, la plataforma permite desplegar automáticamente en GitHub Pages sitios de phishing visualmente idénticos a las páginas legítimas de GitHub. Esto aumenta significativamente la confianza de la víctima y permite guiarla paso a paso a través del proceso de autorización.
En segundo lugar, el sistema genera dinámicamente códigos de dispositivo únicos en el momento exacto de la interacción del usuario con el sitio de phishing. Así, el ataque se puede iniciar justo en el momento necesario, sin riesgo de que los códigos caduquen prematuramente.
Esta flexibilidad es especialmente importante para equipos de red teaming y especialistas en pruebas de seguridad. Pueden simular ataques a múltiples objetivos al mismo tiempo, sin preocuparse por las limitaciones de tiempo típicas del enfoque clásico. GitPhish se puede utilizar tanto a través de la línea de comandos como mediante una cómoda interfaz web. El sistema integra herramientas de registro, análisis y gestión de tokens, lo que permite controlar todas las etapas de la interacción.
Es importante destacar que GitPhish está diseñado exclusivamente para profesionales. Está destinado a comprobar la resistencia de los sistemas corporativos frente a ataques de phishing y a perfeccionar las habilidades para detectar autorizaciones sospechosas a través de OAuth.
Con su ayuda, se puede recrear un escenario de ataque realista, comprobar el nivel de conciencia de los empleados y entrenar a los ingenieros de monitorización para identificar eventos anómalos y signos de ingeniería social.
La puesta en marcha lleva solo unos minutos. Se necesita tener instalado Python y un token personal de GitHub. Tras clonar el repositorio, basta con ejecutar el comando estándar pip install .
, desplegar el panel de control y preparar el sitio de imitación. El paquete incluye instrucciones detalladas y ejemplos.
Los interesados pueden consultar el seminario web y la demostración de la herramienta, donde se muestra de forma práctica cómo se utiliza GitPhish para evaluar la seguridad de la infraestructura.
Paralelamente, el equipo de desarrolladores está preparando un curso práctico para especialistas interesados en la seguridad de las cadenas de suministro y la infraestructura CI/CD. La formación Pipeline to Pwn: Mastering Modern CI/CD Attack Chains se llevará a cabo los días 2–3 y 4–5 de agosto en la conferencia BlackHat USA 2025.