AIMap - Escáner de Exposición de Infraestructura IA
AIMap es una plataforma de código abierto para descubrir infraestructura IA expuesta en internet. Cuando los equipos se apresuraron a auto-alojar LLMs, muchos servidores Ollama, puntos finales MCP y proxies de inferencia terminaron siendo accesibles desde la internet pública sin autenticación. AIMap los descubre a escala, identifica con precisión qué está ejecutándose, califica la exposición, y puede ejecutar pruebas de ataque específicas del protocolo contra objetivos que tienes permiso de evaluar. Piénsalo como nmap para la capa de servicio de IA.
Solo objetivos autorizados. El descubrimiento a escala de internet y las pruebas activas del protocolo tienen implicaciones legales. Escanea solo activos que posees o que tienes permiso explícito de probar.
Instalación
| Método | Comando |
|---|
| pip | pip install aimap |
| Docker | docker run -it aimap/aimap |
| Desde código fuente | git clone el repositorio, luego pip install -e . |
| Verificar | aimap --version |
Uso principal
| Comando | Descripción |
|---|
aimap scan 10.0.0.0/24 | Escanea un CIDR que posees para servicios de IA |
aimap scan --target host:11434 | Verifica un punto final específico |
aimap fingerprint <target> | Identifica el servicio y versión |
aimap score <target> | Produce un calificador de exposición |
aimap --help | Lista completa de opciones |
Qué descubre
| Servicio | Puerto por defecto | Riesgo cuando está expuesto |
|---|
| Ollama | 11434 | Listado de modelos, abuso de indicaciones, robo de recursos |
| Puntos finales MCP | varía | Invocación de herramientas, acceso a datos |
| Proxies de inferencia | 8000/8080 | Acceso a modelo sin medición |
| vLLM / Compatible con OpenAI | 8000 | Inferencia gratuita, exfiltración de indicaciones |
| Bases de datos vectoriales | 6333/8080 | Fuga de documentos incrustados |
Calificación de exposición
| Factor | Sube la calificación |
|---|
| Sin autenticación | Cualquiera puede llamar a la API |
| Listado de modelos habilitado | Revela inventario de modelo interno |
| Acceso a herramientas (MCP) | El punto final puede ejecutar acciones |
| Errores detallados | Filtra configuración/rutas |
| Puntos finales escribibles | Carga/eliminación de modelo posible |
Pruebas de protocolo
| Prueba | Verifica |
|---|
| Acceso sin autenticación | ¿Responde la API sin una clave? |
| Enumeración de modelos | ¿Se pueden listar los modelos? |
| Superficie de inyección de indicaciones | ¿Se pueden alcanzar las indicaciones del sistema? |
| Abuso de recursos | ¿Puede un atacante ejecutar inferencia gratis? |
| Inventario de herramientas MCP | ¿Qué herramientas se pueden invocar? |
Flujos de trabajo comunes
# Audita tu propia infraestructura para servicios de IA accidentalmente expuestos
aimap scan 10.0.0.0/16 --output exposure.json
# Verifica que un Ollama auto-alojado específico no sea públicamente alcanzable
aimap fingerprint ollama.internal.example.com:11434
# Califica e informa para una revisión de conformidad
aimap score --target api.internal.example.com --format json
Lista de verificación defensiva
| Control | Por qué |
|---|
| Vincularse a localhost | OLLAMA_HOST=127.0.0.1 en lugar de 0.0.0.0 |
| Proxy de autenticación | Coloca un proxy inverso autenticante en frente |
| Política de red | Reglas de firewall/VPC; nunca expones 11434 públicamente |
| Límites de velocidad | Bloquea ataques de abuso de recursos |
| Monitoreo | Alerta sobre tráfico de inferencia inesperado |
El hallazgo más común en el mundo real es simplemente un servidor Ollama vinculado a 0.0.0.0 en un host con IP pública.
AIMap vs Escáneres generales
| Aspecto | AIMap | nmap | Shodan |
|---|
| Enfoque | Capa de servicio de IA/LLM | Puertos/servicios genéricos | Índice de internet |
| Identificación | Consciente de protocolo de IA | Sondeos genéricos de servicio | Basada en bandera |
| Pruebas de ataque | Específicas de IA | Scripts (NSE) | Ninguna |
| Mejor para | Auditorías de exposición de infraestructura IA | Reconocimiento general | Descubrimiento pasivo |
Recursos