Assistente di cybersicurezza air-gapped per professionisti della sicurezza. Strumento di analisi 100% offline basato su IA per Nmap, Volatility, BloodHound, Metasploit, YARA e altro ancora. Progettato per ambienti in cui l'IA cloud non è disponibile.
Syd è un assistente per penetration testing in ambiente isolato (air-gapped) che analizza gli output degli scan utilizzando LLM locali e generazione aumentata da recupero (RAG). Funziona interamente sul tuo laptop senza richiedere connettività internet o chiavi API.
Syd analizza output tecnici di scan (Nmap, BloodHound, Volatility) e risponde a domande in un inglese semplice. Invece di rivedere manualmente centinaia di pagine di risultati, puoi porre domande specifiche e ottenere risposte basate su prove concrete, radicate nei tuoi dati di scan reali.
Strumenti supportati:
Caratteristiche principali:
Syd utilizza un pipeline a tre fasi:
La fase di estrazione dei fatti utilizza regex e analisi strutturata (senza LLM). Questo garantisce un'estrazione dei dati accurata al 100%. L'LLM genera solo spiegazioni in linguaggio naturale basate su fatti verificati.
La validazione controlla ogni risposta generata rispetto ai fatti estratti. Se l'LLM menziona dati non presenti nei tuoi scan (PID, indirizzi IP, hostname, ecc.), la risposta viene rifiutata.
Hardware:
Software:
Configurazione testata:
Esegui un solo comando e tutto viene gestito automaticamente:
python setup.py
Questo script:
Tempo richiesto: 15-30 minuti (principalmente per il download)
Nessun account HuggingFace richiesto. Gli indici FAISS sono inclusi nel repository.
Se setup.py fallisce, installa manualmente:
pip install -r requirements.txt
Scarica il modello da HuggingFace:
Esegui Syd:
python syd.py
Consulta INSTALL.md per la risoluzione dettagliata dei problemi.
Testato su dati reali di pentest:
Il layer di validazione previene le allucinazioni. Le risposte che fanno riferimento a dati inesistenti vengono bloccate.
Syd_V3/
├── syd.py # Applicazione principale
├── nmap_fact_extractor.py # Parser Nmap
├── bloodhound_fact_extractor.py # Parser BloodHound
├── volatility_fact_extractor.py # Parser Volatility
├── bloodhound_analyzer.py # Logica di analisi BloodHound
├── volatility_analyzer.py # Logica di analisi Volatility
├── knowledge_bases/ # Documentazione tecnica
│ ├── bloodhound/
│ └── volatility/
├── rag_engine/
│ ├── models/ # Modelli LLM (formato GGUF)
│ └── embeddings/ # Indici FAISS
└── chunk_and_embed_*.py # Script di indicizzazione della knowledge base
LLM: Qwen 2.5 14B (quantizzazione Q5_K_M) Embeddings: all-MiniLM-L6-v2 (sentence-transformers) Database vettoriale: FAISS (ottimizzato per CPU) GUI: tkinter (cross-platform)
Temperatura: 0.05-0.1 (bassa per ridurre le allucinazioni) Penalità di ripetizione: 2.8-3.2 (previene i loop) Finestra di contesto: 4096-8192 token
Progettato per scenari tipici di pentest (10-500 host). Gli scan a livello enterprise potrebbero richiedere il chunking.
Modello non trovato:
rag_engine/models/qwen2.5-14b-instruct-q5_k_m.ggufIndice FAISS non trovato:
python chunk_and_embed_*.pyrag_engine/embeddings/customers/Memoria esaurita:
Prestazioni lente:
Supporto della community:
Supporto professionale: Se ti trovi in un ambiente isolato (air-gapped) e hai difficoltà con la configurazione, offro installazioni USB preconfigurate a un piccolo costo. Tutto incluso e testato.
Contatto: [email protected]
Risorse:
Siamo particolarmente interessati a:
Consulta CONTRIBUTING.md per le linee guida.
Licenza MIT - Vedi il file LICENSE
Realizzato utilizzando:
Sviluppato e testato su dati reali di penetration testing.
Autore: Paul Armstrong (@Sydsec) Sito web: https://sydsec.co.uk YouTube: https://www.youtube.com/@paularmstrong8306