
Piattaforma di sicurezza AI open-source che fornisce difesa perimetrale per LLM e agenti AI attraverso analisi degli sciami, applicazione delle policy, test avversariali e rilevamento delle minacce in tempo reale.
Sicurezza perimetrale per la tua IA.
Applicazione runtime, controllo delle policy e tracciamento completo per ogni azione dell'IA.
Sito web · Avvio rapido · Policy · Dashboard · GitHub
Gli agenti IA possono leggere i tuoi file, inviare codice, interrogare database, eseguire comandi shell e chiamare API esterne. Lo fanno in modo autonomo, alla velocità di una macchina.
I controlli di sicurezza tradizionali non sono stati progettati per questo.
Mastyf.ai agisce come un layer di sicurezza perimetrale per l'IA. Intercetta ogni chiamata agli strumenti, la valuta rispetto alle tue policy di sicurezza utilizzando un'analisi multi-agente a sciame, e blocca le azioni dannose o non autorizzate prima che vengano eseguite.
Ogni decisione viene applicata, registrata e verificabile.
Clona il repository ed esegui lo script di configurazione.
Requisiti:
git clone https://github.com/mastyf-ai/mastyf.ai.git
cd mastyf.ai
chmod +x setup.sh
./setup.sh
Lo script di configurazione automaticamente:
mastyf comodoUna volta completata l'installazione, avvia il proxy e la dashboard:
node dist/cli.js start
Oppure, dopo aver aperto un nuovo terminale, usa semplicemente l'alias:
mastyf
La dashboard sarà disponibile su:
Se la dashboard è in esecuzione, verifica il bridge HTTP:
curl -X POST http://localhost:4000/mcp -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":"1","method":"tools/list","params":{}}'
Visibilità completa su ogni azione della tua IA.
| Sezione | Cosa vedi |
|---|
Non esporre la porta 4000 pubblicamente senza abilitare l'autenticazione della dashboard. La configurazione di sviluppo locale predefinita ha
DASHBOARD_AUTH_DISABLED=true.
Ogni chiamata agli strumenti passa attraverso tre layer prima di raggiungere la tua infrastruttura.
Layer 1 - Rilevamento dei pattern Scansione basata su regex per iniezioni, percorsi pericolosi, segreti trapelati, comandi shell e trucchi di codifica. Funziona in microsecondi senza dipendenze esterne.
Layer 2 - Validazione dello schema Rifiuta payload malformati, argomenti sovradimensionati e violazioni JSON-RPC prima che raggiungano la valutazione della policy.
Layer 3 - Revisione semantica Un LLM locale opzionale (Ollama) o un modello cloud valuta le chiamate borderline che superano i controlli dei pattern. Ricade su euristiche se nessun modello è configurato.
Qualsiasi cosa fallisca viene bloccata. Lo strumento non viene mai eseguito. Tutto viene registrato.
Le tue regole vivono in default-policy.yaml. Sono tue. mastyf.ai le applica.
policy:
mode: block
default_action: pass
unicode_strict: true
rules:
- name: block-sensitive-paths
action: block
argPatterns:
- field: path
patterns: ['^/etc/', '/\.ssh', '/\.aws/credentials']
- name: rate-limit-tool-calls
action: block
maxCallsPerMinute: 120
- name: block-shell-injection
action: block
patterns: ['rm\s+-rf', 'curl\s', 'wget\s', '`[^`]+`']
Distribuisci in sicurezza con tre modalità di applicazione:
| Modalità | Comportamento | Quando usarla |
|---|---|---|
I template predefiniti per HIPAA, PCI-DSS, GxP e residenza dei dati si trovano in policy-templates/.
mastyf.ai esegue due sciami coordinati. Lo Sciame CI attacca la tua policy prima che il codice venga distribuito. Lo Sciame Runtime applica e impara da ogni chiamata agli strumenti in produzione. Quattro cicli di feedback li collegano in modo che il sistema diventi più difficile da aggirare nel tempo.
flowchart TB
AI["🤖 Client IA\nCursor · Claude Desktop · Cline"]
subgraph CI["🔵 Sciame CI (PR + Notturno)"]
direction LR
Scout["🔍 Agente Scout\nSAST, dipendenze, scansione configurazione"]
Corpus["📋 Agente Corpus\n228 fixture di valutazione"]
Evasion["⚡ Agente Evasione\n120+ sonde + generazione di nuove"]
Parity["🔄 Agente Parità\nNode vs Python"]
ProxyA["🖥️ Agente Proxy\nTest live stdio MCP in tempo reale"]
Report["📊 Agente Report\nsecurity-swarm/latest.json"]
Scout --> Corpus --> Evasion --> Parity --> ProxyA --> Report
end
subgraph Runtime["🟢 Sciame Runtime (Proxy di produzione)"]
direction LR
BG["🛡️ BlockGuard\npolicy sincrona"]
IL["📈 InstantLearner\nstatistiche per blocco + suggerimenti"]
SA["🧠 SemanticAuditor\nLLM asincrono, opzionale"]
PS["🔗 PatternSynthesizer\nsuggerimenti in batch"]
Cal["⚙️ Calibrator\netichette + soglie"]
BG --> IL --> PS --> Cal
BG --> SA --> PS
end
Tools["🗄️ Strumenti MCP\nfilesystem · GitHub · database · API"]
AI -->|"ogni chiamata agli strumenti"| BG
BG -->|"✅ consentito"| Tools
Report -->|"🔁 Ciclo A: bypass al corpus"| Corpus
Cal -->|"🔁 Ciclo B: blocchi alle regole"| BG
Cal -->|"🔁 Ciclo C: etichette all'LLM"| SA
Report -->|"🔁 Ciclo D: metriche CI settimanali"| Cal
style CI fill:#EFF6FF,stroke:#3B82F6,stroke-width:2px,color:#1E3A5F
style Runtime fill:#F0FDF4,stroke:#22C55E,stroke-width:2px,color:#14532D
style Scout fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Corpus fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Evasion fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Parity fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style ProxyA fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Report fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style BG fill:#BBF7D0,stroke:#16A34A,color:#14532D
style IL fill:#BBF7D0,stroke:#16A34A,color:#14532D
style SA fill:#BBF7D0,stroke:#16A34A,color:#14532D
style PS fill:#BBF7D0,stroke:#16A34A,color:#14532D
style Cal fill:#BBF7D0,stroke:#16A34A,color:#14532D
style AI fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#78350F
style Tools fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#78350F
Cancelli canonici: 228/228 corpus, 0 bypass, 100% parità
Viene eseguito su ogni PR e ogni notte. Sei agenti lavorano in sequenza, ognuno rafforza ciò che il precedente ha trovato.
Viene eseguito all'interno del proxy di produzione su ogni chiamata agli strumenti.
Il proxy supporta cinque trasporti: stdio, HTTP, SSE, HTTP streamable e WebSocket.
Per distribuzioni enterprise con Redis, Postgres e Kubernetes vedi docs/ENTERPRISE_DEPLOYMENT.md.
Threat Lab monitora il traffico live e utilizza un LLM locale per proporre nuovi casi di test di attacco quando rileva pattern sospetti. Niente viene applicato automaticamente. Rivedi e approvi ogni suggerimento nella dashboard prima che diventi una regola.
Le scoperte approvate vengono reinserite nel corpus di attacco del CI per test di regressione continui.
ollama serve
ollama pull qwen3:8b
export OLLAMA_BASE_URL=http://127.0.0.1:11434
export MASTYF_AI_LLM_PROVIDER=ollama
export MASTYF_AI_LLM_MODEL=qwen3:8b
pnpm dashboard:proxy
Prima di installare qualsiasi server MCP da npm, verifica il suo punteggio di fiducia su https://www.mastyf.ai/certified. I punteggi coprono l'esposizione a CVE, il rischio di typo-squatting, i segnali del manutentore e i pattern di attacco noti. Gratuito, senza bisogno di account.
| Minaccia | Aspetto |
|---|
| Iniezione di prompt | Istruzioni dannose incorporate negli argomenti degli strumenti per dirottare il comportamento dell'agente |
| Path traversal | Tentativi di accedere a /etc/passwd, .ssh/id_rsa, .aws/credentials |
| Esfiltrazione di segreti | Chiavi API e token che trapelano attraverso gli argomenti degli strumenti |
| Iniezione di shell | Reverse shell, rm -rf, comandi PowerShell codificati |
| Esfiltrazione di dati | Dump SQL di massa, git push, aws s3 cp, trasferimenti di file non autorizzati |
| SSRF | Chiamate a endpoint metadata, localhost e intervalli IP privati |
| Evasione tramite codifica | Blob Base64 e omoglifi Unicode utilizzati per bypassare il rilevamento dei pattern |
| Abuso dei costi | Cicli di agenti incontrollati che bruciano budget di token |
| Attacchi rug-pull | Definizioni di strumenti che cambiano silenziosamente a metà sessione |
| Protezione | Tasso di blocco, regole più attivate, feed di minacce in tempo reale |
| Attività | Ogni chiamata agli strumenti con argomenti completi, stato di consenso o blocco, timestamp |
| Policy | Editor di regole live con ricarica a caldo da YAML |
| Threat Lab | Test di attacco suggeriti dall'IA, revisionati e approvati prima che vengano applicati |
| Costo | Utilizzo di token e stime di costo suddivisi per chiamata agli strumenti |
audit |
| Registra tutto, non blocca nulla |
| Prima settimana, per capire cosa fa la tua IA |
warn | Registra e segnala, ma inoltra comunque | Fase di messa a punto prima dell'applicazione |
block | Blocca le violazioni prima dell'esecuzione | Produzione |
| Agente | Cosa fa |
|---|
| Scout | Scansione SAST, audit delle dipendenze, revisione della configurazione |
| Corpus | Valuta tutte le 228 fixture di attacco rispetto alla policy corrente |
| Evasione | Esegue oltre 120 sonde di bypass e ne genera di nuove utilizzando un LLM |
| Parità | Verifica che le implementazioni Node e Python producano decisioni identiche |
| Proxy | Test live di sessioni MCP stdio contro un'istanza proxy in esecuzione |
| Report | Scrive security-swarm/latest.json con risultati e metriche complete |
| Componente | Cosa fa |
|---|
| BlockGuard | Applica la policy attiva in modo sincrono su ogni chiamata. Fail-closed. |
| InstantLearner | Tiene traccia delle statistiche per blocco e mostra suggerimenti di regole in tempo reale |
| SemanticAuditor | Revisione LLM asincrona opzionale per le chiamate che superano i controlli dei pattern ma sembrano sospette |
| PatternSynthesizer | Raccoglie suggerimenti da InstantLearner e SemanticAuditor in regole candidate |
| Calibrator | Etichetta i candidati, regola le soglie e promuove le regole approvate di nuovo in BlockGuard |
| Ciclo | Segnale | Effetto |
|---|
| A | Bypass trovato dal CI | Aggiunto al corpus, il CI ora lo protegge permanentemente |
| B | Pattern di blocco runtime | Sintetizzato in una nuova regola, promossa a BlockGuard |
| C | Etichetta del Calibrator | Usata per mettere a punto le soglie di SemanticAuditor |
| D | Metriche CI (settimanali) | Aggiorna la configurazione runtime — mantiene CI e produzione sincronizzati |
| Comando | Cosa fa |
|---|
node dist/cli.js start | Avvia proxy e dashboard sulla porta 4000 |
node dist/cli.js onboard | Avvolge la tua configurazione MCP per instradarla attraverso il proxy |
node dist/cli.js doctor | Controllo di integrità per DB, policy e ambiente |
node dist/cli.js scan --all | Scansiona le configurazioni MCP per CVE e rischi di iniezione |
pnpm test | Esegue l'intera suite di test |
pnpm security-swarm:fast | Regressione di sicurezza rapida, da 5 a 15 minuti |
pnpm security-swarm:analyze | Analisi avversaria completa |
| Problema | Soluzione |
|---|
| La dashboard non mostra dati | Il proxy e la dashboard devono condividere lo stesso MASTYF_AI_DB_PATH. Il default è ~/.mastyf-ai/history.db |
dist/cli.js non trovato | Esegui pnpm build |
| L'IA continua a chiamare direttamente gli strumenti | Esegui node dist/cli.js onboard --apply |
| Avvisi Ollama all'avvio | Esegui ollama serve o rimuovi MASTYF_AI_LLM_PROVIDER dall'ambiente |
| npm install fallisce | npm publish non è ancora attivo. Usa git clone e pnpm install |