
È stata pubblicata la prima versione open source Vigolium v0.1.13-beta — di uno scanner di vulnerabilità per applicazioni web, che combina la scansione deterministica classica con l'audit agent-based basato su LLM. Il progetto è disponibile su GitHub e distribuito sotto licenza GNU AGPLv3; la parte commerciale è stata trasferita nel cloud Cloud Console, mentre il nucleo dello scanner è dichiarato come open source.
Vigolium offre due modalità principali di funzionamento: vigolium scan — scansione multi-fase tradizionale con ricerca di contenuti, spidering attraverso un browser, auditing attivo e passivo; e vigolium agent — modalità agent, in cui LLM seleziona moduli, pianifica attacchi, genera estensioni JavaScript personalizzate e combina test dinamici con auditing del codice sorgente.
Secondo del catalogo attuale dei moduli, Vigolium include 251 moduli di verifica, di cui 154 attivi e 97 passivi. I moduli attivi inviano richieste modificate e applicano fuzzing, iniezioni e analisi comportamentale, mentre i passivi analizzano le coppie di richieste/risposte esistenti senza generare ulteriore traffico.
Capacità
Native Scan — scansione deterministica standard.
La modalità vigolium scan è progettata per controlli rapidi e riproducibili. Passa attraverso diverse fasi: raccolta dati esterna, rilevamento del contenuto, spidering browser/SPAs e audit. Questa modalità è comoda per CI, controlli regolari e situazioni in cui è importante ottenere risultati prevedibili senza l'intervento di un LLM.Agentic Scan — audit agent-based con LLM.
La modalità vigolium agent utilizza un runtime integrato olium. L'agente può cercare autonomamente endpoint, scegliere moduli, eseguire controlli, analizzare codice, effettuare SAST e riconfermare le scoperte. Sono supportati scenari Autopilot, Swarm e Query mode: dalla scansione autonoma dell'obiettivo a richieste singole per la revisione del codice, ricerca di endpoint e scoperta di segreti.Controlli XSS, SQLi, NoSQLi, SSTI, LFI, RCE, XXE e SSRF.
Nel manuale dei moduli sono elencati i controlli per XSS riflesso, SQL injection per errori e boolean-based blind SQLi, NoSQL injection, server-side template injection, local file inclusion, command injection, XXE, SSRF e vulnerabilità out-of-band. Per le scoperte viene utilizzata una scala di gravità da critica a informativa e una scala di attendibilità certa, ferma, tentativo.Verifiche OAST per vulnerabilità 'cieche'.
Vigolium è in grado di controllare blind XSS, blind SSRF, blind XXE e blind RCE tramite meccanismi di callback, incluso interactsh. Questo è necessario per i casi in cui la vulnerabilità non si manifesta direttamente nella risposta HTTP, ma il server effettua una richiesta DNS/HTTP esterna o esegue un'azione posticipata.Mutazione consapevole del valore — mutazione dei parametri tenendo conto del significato del valore.
Lo scanner classifica i parametri in base al tipo semantico: numero, UUID, JWT, email e altre varianti, quindi seleziona le mutazioni in base al contesto. Questo dovrebbe ridurre il rumore rispetto alla sostituzione grossolana di payload identici in tutti i campi consecutivamente.Supporto per diversi formati di input.
Come input è possibile fornire URL, specifiche OpenAPI/Swagger, collezioni Postman, dati da Burp Suite, cURL e Nuclei JSONL. È inoltre supportato l'invio di URL tramite stdin e l'avvio di fasi di scansione separate.Scansione autenticata e controlli IDOR/BOLA.
Vigolium supporta più sessioni simultaneamente: le sessioni possono essere passate inline, caricate da file o descritte come flussi di accesso completi con estrazione di token. Questo è utilizzato per verifiche di controllo accessi orizzontale e verticale, inclusi IDOR/BOLA e elevazione dei privilegi.Controlli dei framework e delle vulnerabilità comuni.
Nella lista dei moduli ci sono controlli per Next.js, Spring/Java, Django, Flask, FastAPI, Laravel, Symfony, Rails, Express e ASP.NET/IIS. Ad esempio, per Spring vengono controllati gli endpoint Actuator aperti, Spring Boot Admin, Spring Cloud Config, H2 Console, Jolokia e le console dei server applicativi Java; per Next.js, si controllano le perdite attraverso /_next/data, le vulnerabilità SSRF in Image Optimizer e le elusioni del middleware.Estensioni JavaScript.
L'utente può scrivere i propri moduli e hook in JavaScript attraverso l'engine JS integrato con API HTTP che tiene conto delle sessioni. Limite importante: tali estensioni possono eseguire comandi arbitrari e non sono isolate in una sandbox, quindi devono essere considerate come codice eseguibile normale.Fase di triage separata per i risultati.
Nel testing della sicurezza assistito da LLM si verifica spesso un problema di risultati plausibili ma non riproducibili. L'autore di Vigolium descrive il triage come un passaggio separato: prima il scanner raccoglie i candidati, poi un controllo separato verifica nuovamente ciascun risultato con le prove.Limitazioni di budget per la modalità agent.
Per la scansione agent-based, è possibile limitare i token, il numero di chiamate agli strumenti, il numero di iterazioni di triage e il tempo totale di esecuzione. Questo è importante per CI e pentest con tempo fisso: l'agente non deve continuare a "cercare" senza fine un obiettivo, bruciando budget su ipotesi di basso valore.Report, coda e scalabilità.
In Native Scan sono dichiarati un pool di worker concorrenti, limitazione della frequenza per host, una coda ibrida in memoria, su disco o in Redis, e report HTML autonomi. Sono disponibili output in console, JSONL e HTML.Modalità server, API e integrazione con Burp Suite.
Vigolium può essere eseguito come server API, ricevere traffico, includere un proxy HTTP trasparente e scansionare automaticamente i dati ricevuti. Per Burp Suite è menzionato un'estensione separata burp-vigolium, che consente di inviare traffico live al server Vigolium.Workbench e Console.
Oltre alla CLI, il progetto descrive Workbench — un dashboard self-hosted per visualizzare i risultati, gestire i progetti e monitorare le scoperte. Console — uno strato commerciale cloud per scanning gestito, reportistica centralizzata, collaborazione e pianificazione delle verifiche.
Installazione
Il progetto offre installazione tramite shell script, npm, Docker, Homebrew, Bun e compilazione dai sorgenti. Per la compilazione dai sorgenti, i requisiti sono indicati nel README. Go 1.26+ e bun 1.3.11+.
curl -fsSL https://vigolium.com/install.sh | bash
npm install -g @vigolium/vigolium
docker pull j3ssie/vigolium:latest
docker run --rm j3ssie/vigolium:latest scan -h
Gli sviluppatori avvertono separatamente che Vigolium è uno strumento di sicurezza offensiva: la modalità agente è avviata senza sandbox e ottiene pieno accesso alla shell, al file system e alla rete dell'host, e le estensioni possono anche eseguire comandi arbitrari. Pertanto, si consiglia di eseguire i controlli agenti in un contenitore monouso o in una macchina virtuale limitata ai confini del test specifico.
Fonte: linux.org.ru
