AIMap - Foglio di aiuto dello scanner di esposizione dell’infrastruttura IA
AIMap è una piattaforma open-source per trovare infrastrutture IA esposte su internet. Con i team affrettati ad auto-ospitare LLM, un gran numero di server Ollama, endpoint MCP e proxy di inferenza si sono ritrovati raggiungibili da internet pubblico senza autenticazione. AIMap scopre questi a scala, fingerprint ciò che è in esecuzione, punteggia l’esposizione e può eseguire test di attacco specifici del protocollo su target che sei autorizzato a valutare. Pensalo come nmap per lo strato di servizio IA.
Solo target autorizzati. La scoperta a scala internet e il test del protocollo attivo hanno implicazioni legali. Scansiona solo asset che possiedi o sei esplicitamente autorizzato a testare.
Installazione
| Metodo | Comando |
|---|
| pip | pip install aimap |
| Docker | docker run -it aimap/aimap |
| Dal codice sorgente | git clone il repository, poi pip install -e . |
| Verifica | aimap --version |
Utilizzo principale
| Comando | Descrizione |
|---|
aimap scan 10.0.0.0/24 | Scansiona un CIDR che possiedi per i servizi IA |
aimap scan --target host:11434 | Controlla un endpoint specifico |
aimap fingerprint <target> | Identifica il servizio e la versione |
aimap score <target> | Produce un punteggio di esposizione |
aimap --help | Elenco completo delle opzioni |
Cosa scopre
| Servizio | Porta predefinita | Rischio se esposto |
|---|
| Ollama | 11434 | Elenco modelli, abuso dei prompt, furto di risorse |
| Endpoint MCP | varia | Invocazione di strumenti, accesso ai dati |
| Proxy di inferenza | 8000/8080 | Accesso illimitato ai modelli, esfiltrazione di prompt |
| vLLM / OpenAI-compatible | 8000 | Inferenza gratuita, esfiltrazione dei prompt |
| Database vettoriali | 6333/8080 | Perdita di documenti incorporati |
Punteggio di esposizione
| Fattore | Aumenta il punteggio |
|---|
| Nessuna autenticazione | Chiunque può chiamare l’API |
| Elenco modelli abilitato | Rivela l’inventario dei modelli interni |
| Accesso ai strumenti (MCP) | L’endpoint può intraprendere azioni |
| Errori verbosi | Perdite di configurazione/percorsi |
| Endpoint scrivibili | Upload/eliminazione di modelli possibile |
Test del protocollo
| Test | Controlla |
|---|
| Accesso non autenticato | L’API risponde senza una chiave? |
| Enumerazione dei modelli | I modelli possono essere elencati? |
| Superficie di iniezione prompt | I prompt di sistema sono raggiungibili? |
| Abuso di risorse | Un attaccante può eseguire inferenza gratuitamente? |
| Inventario degli strumenti MCP | Quali strumenti possono essere invocati? |
Workflow comuni
# Controlla la tua infrastruttura per i servizi IA esposti accidentalmente
aimap scan 10.0.0.0/16 --output exposure.json
# Verifica che un Ollama auto-ospitato specifico non sia raggiungibile pubblicamente
aimap fingerprint ollama.internal.example.com:11434
# Punteggio e rapporto per una revisione di conformità
aimap score --target api.internal.example.com --format json
Checklist difensiva
| Controllo | Perché |
|---|
| Bind a localhost | OLLAMA_HOST=127.0.0.1 piuttosto che 0.0.0.0 |
| Auth proxy | Metti un proxy inverso di autenticazione davanti |
| Network policy | Regole firewall/VPC; non esporre mai 11434 pubblicamente |
| Rate limits | Blocca gli attacchi di abuso di risorse |
| Monitor | Avviso su traffico di inferenza inaspettato |
Il risultato reale più comune è semplicemente un server Ollama associato a 0.0.0.0 su un host con IP pubblico.
AIMap vs Scanner generici
| Aspetto | AIMap | nmap | Shodan |
|---|
| Focus | Strato di servizio IA/LLM | Porte/servizi generici | Indice a livello mondiale |
| Fingerprinting | Consapevole del protocollo IA | Sonde di servizio generiche | Basato su banner |
| Test di attacco | Specifici dell’IA | Script (NSE) | Nessuno |
| Migliore per | Audit di esposizione dell’infrastruttura IA | Recon generale | Scoperta passiva |
Risorse