AIMap: strumento open-source per la scoperta e il test di endpoint AI esposti

Negli ultimi dodici mesi, il numero di server Ollama pubblicamente accessibili, endpoint MCP e proxy di inferenza è aumentato esponenzialmente su Internet, spesso implementati senza autenticazione o limiti di velocità. AIMap è una piattaforma open-source che individua questi sistemi su scala globale, li analizza, ne valuta l'esposizione e esegue test di attacco specifici per protocollo su target autorizzati.

Funzionalità principali di AIMap

AIMap copre cinque funzioni principali. La scoperta avviene attraverso 32 query preimpostate che analizzano i dati indicizzati da Shodan, alla ricerca di firme note di intelligenza artificiale. La fase di fingerprinting utilizza template Nuclei e controlli HTTP live per identificare il protocollo, il framework, lo stato di autenticazione, gli strumenti esposti, i modelli e eventuali prompt di sistema trapelati. Ogni endpoint riceve un punteggio da 0 a 10, basato su fattori come la postura di autenticazione, l'esposizione degli strumenti, la configurazione CORS, lo stato TLS, la perdita di prompt di sistema e combinazioni di capacità pericolose.

La fase di test esegue suite di attacco specifiche per protocollo, coprendo iniezioni di prompt, abuso di strumenti e estrazione di modelli. I risultati vengono visualizzati in un'interfaccia di ricerca simile a Shodan e in una vista 3D globale, filtrabile per protocollo, livello di rischio, paese, porta e organizzazione.

Ambito di applicazione

AIMap supporta una vasta gamma di framework e implementazioni, tra cui Model Context Protocol (MCP), Ollama, vLLM, LiteLLM, LocalAI, LangServe e LangChain, OpenClaw e Clawdbot, Open WebUI e LibreChat, Gradio e Streamlit, ComfyUI e ambienti Stable Diffusion, Hugging Face TGI e API di inferenza generiche.

Per i server MCP, il modulo di attacco esegue l'enumerazione degli strumenti, il test dei confini di autorizzazione e la valutazione delle iniezioni di prompt. Per Ollama, esegue l'elenco dei modelli, la verifica dell'esposizione dei pesi del modello e le iniezioni di prompt. Gli endpoint compatibili con OpenAI vengono testati per l'enumerazione dei modelli, l'abuso dell'endpoint di completamento e l'estrazione del prompt di sistema.

Differenziazione tra esposto e accessibile

Aashiq Ramachandran, il ricercatore di sicurezza di Bishop Fox che ha creato AIMap, ha spiegato che la piattaforma distingue tra endpoint raggiungibili in rete e quelli aperti. "Quando sondiamo percorsi come /v1/models, una risposta 200 indica che l'endpoint è realmente aperto, senza alcuna autenticazione. Una risposta 401 o 403 ci dice che l'auth è configurata", ha affermato Ramachandran. La sonda classifica ulteriormente il tipo di autenticazione leggendo gli header WWW-Authenticate per differenziare i requisiti Bearer/OAuth, Basic auth e le chiavi API.

Ogni endpoint scoperto ha un campo authstatus e il cruscotto aggrega un valore noauth_count sull'intero dataset. Ramachandran ha sottolineato che questa distinzione operativa è cruciale per la triage: un'istanza Ollama che restituisce 200 sul suo API appartiene a una classe di rischio diversa rispetto a un'implementazione vLLM che restituisce 401, anche se entrambi sono visibili da Internet.

Fingerprint dei framework e il problema della compatibilità con OpenAI

Un problema ricorrente nella scansione delle infrastrutture AI è che molti framework espongono API compatibili con OpenAI su porte sovrapposte nella gamma 8000-8080, rendendo i controlli generici /v1/models non affidabili per l'attribuzione. Ramachandran ha spiegato che AIMap affronta questo problema sondando prima gli endpoint specifici del framework e ricorrendo al controllo generico solo in un secondo momento.

Esistono fingerprint dedicati per Ollama, vLLM, LiteLLM, LocalAI, Hugging Face TGI, Gradio, ComfyUI, Open WebUI, LangServe e server MCP. Ogni framework utilizza identificatori positivi: Ollama restituisce la stringa "Ollama is running" sul suo percorso radice, vLLM espone un endpoint /version e la risposta /health di LiteLLM contiene il suo nome nel corpo.

Triton, la modalità server di LM Studio, il server HTTP integrato di llama.cpp e Jan attualmente non hanno fingerprint dedicati. Ramachandran ha affermato che le implementazioni che eseguono API compatibili con OpenAI da questi server vengono comunque rilevate e segnalate come endpoint di inferenza esposti, attribuiti in modo generico. Sono previste fingerprint dedicate per ciascuno, con gli endpoint di salute e repository del modello di Triton e l'endpoint /slots di llama.cpp tra le caratteristiche delle risposte che consentono un'identificazione positiva.

Pesatura del punteggio

Il punteggio da 0 a 10 combina mancanza di autenticazione, stato di autenticazione sconosciuto, il numero e il tipo di strumenti esposti, la presenza di strumenti ad alto rischio o a rischio critico, politiche CORS aperte, TLS mancante, perdita di prompt di sistema, modelli esposti, rilevamento di modelli non censurati e configurazioni di registrazione.

Combinazioni di condizioni rischiose, come l'accesso non autenticato abbinato all'esecuzione di codice, ricevono un peso aggiuntivo. Secondo Bishop Fox, i punteggi superiori a 7 indicano tipicamente condizioni sfruttabili osservate in natura, tra cui endpoint non autenticati con esecuzione di codice e prompt di sistema esposti abbinati all'accesso agli strumenti.

Scalabilità dell'esposizione

La dimostrazione del prodotto di Bishop Fox cita più di 175.000 istanze Ollama esposte e più di 8.000 server MCP aperti raggiungibili da Internet, con quasi la metà che offre esecuzione di codice e nessuna autenticazione. La stessa dimostrazione indica che la quota di organizzazioni con controlli di sicurezza specifici per AI si attesta al 13%. Una scansione mostrata nella demo ha individuato quasi 2.000 endpoint AI live in 50 paesi, con il 91% privo di qualsiasi tipo di autenticazione.

Responsabilità dell'operatore

I moduli di scoperta e fingerprinting di AIMap sono in sola lettura. I moduli di attacco attivi richiedono l'opzione dell'operatore e la conferma esplicita del target prima dell'esecuzione. Gli operatori sono gli unici responsabili del rispetto del Computer Fraud and Abuse Act, del GDPR e di altre leggi applicabili. Lo strumento è pubblicato per test di sicurezza autorizzati, ricerca difensiva e valutazione di sistemi di proprietà dell'operatore o per i quali è stata ottenuta l'autorizzazione scritta per il test.

AIMap è disponibile gratuitamente su GitHub.

L'impatto di AIMap sulla sicurezza delle infrastrutture AI

La proliferazione di endpoint AI esposti rappresenta una sfida significativa per la sicurezza informatica moderna. AIMap, con la sua capacità di identificare e valutare questi endpoint, offre uno strumento cruciale per migliorare la consapevolezza e la gestione dei rischi. La scoperta di oltre 175.000 istanze Ollama e 8.000 server MCP esposti, molti dei quali senza autenticazione e con capacità di esecuzione di codice, sottolinea l'urgenza di adottare misure di sicurezza specifiche per le infrastrutture AI.

L'importanza della visualizzazione dei dati

AIMap non si limita a identificare e valutare gli endpoint AI; offre anche una visualizzazione intuitiva dei risultati attraverso un'interfaccia di ricerca simile a Shodan e una vista 3D del globo. Questi strumenti permettono agli operatori di filtrare i risultati per protocollo, livello di rischio, paese, porta e organizzazione, facilitando l'analisi e la priorizzazione degli endpoint più critici. La vista 3D, in particolare, fornisce una rappresentazione geografica degli endpoint esposti, evidenziando le aree con la maggiore concentrazione di rischi.

Il ruolo di AIMap nella ricerca difensiva

AIMap è stato progettato per supportare sia i test di sicurezza autorizzati che la ricerca difensiva. Gli operatori possono utilizzare lo strumento per valutare i sistemi di proprietà o per i quali hanno ottenuto l'autorizzazione scritta per il test. La capacità di eseguire test specifici per il protocollo, come l'iniezione di prompt, l'abuso degli strumenti e l'estrazione dei modelli, consente una valutazione approfondita delle vulnerabilità. Inoltre, i payload, le risposte, i livelli di gravità e le note di rimedio sono trasmessi in tempo reale, fornendo informazioni preziose per la mitigazione dei rischi.

Le sfide future e le potenzialità di AIMap

Nonostante i progressi significativi, AIMap affronta ancora alcune sfide. Ad esempio, la rilevazione di configurazioni di autenticazione parzialmente errate, dove un percorso applica l'autenticazione mentre un altro no, è attualmente in fase di sviluppo e non è inclusa nella versione attuale. Inoltre, lo sviluppo di fingerprint dedicati per framework come Triton, LM Studio, llama.cpp e Jan è in programma, il che migliorerebbe ulteriormente la precisione dello strumento.

Con l'evoluzione continua delle infrastrutture AI e l'aumento delle minacce, strumenti come AIMap saranno sempre più essenziali. La capacità di identificare e valutare gli endpoint esposti non solo aiuta le organizzazioni a proteggere i propri sistemi, ma contribuisce anche alla comprensione più ampia delle vulnerabilità e delle best practice per la sicurezza AI.

AIMap rappresenta un passo avanti significativo nella sicurezza delle infrastrutture AI. La sua capacità di scoprire, identificare, valutare e testare gli endpoint esposti fornisce agli operatori gli strumenti necessari per affrontare le crescenti minacce alla sicurezza. Con l'adozione diffusa di tecnologie AI, l'uso di strumenti come AIMap sarà cruciale per garantire che queste tecnologie siano implementate in modo sicuro ed efficace.

Nota Editoriale e Disclaimer

Le guide e i contenuti pubblicati su GoYou sono frutto di attività di ricerca e analisi indipendente, a scopo informativo, educativo e di approfondimento.

GoYou non costituisce una testata giornalistica né un prodotto editoriale ai sensi della Legge n. 62/2001 e non svolge attività di informazione in tempo reale.

Il progetto GoYou non fornisce consulenza professionale, tecnica, legale o finanziaria e declina ogni responsabilità per l’uso improprio delle informazioni pubblicate.

Nel settore Crypto, ogni investimento comporta rischi: si invita il lettore a informarsi sempre in modo autonomo prima di assumere qualsiasi decisione.