
Applicazione di sicurezza difensiva per Windows che fornisce controlli compensativi per CVE-2017-0144 (EternalBlue/MS17-010) tramite monitoraggio SMB, rilevamento degli attacchi, risposta automatica del firewall, audit della configurazione e reportistica di sicurezza per sistemi legacy e non supportati.
Un'applicazione desktop di sicurezza per Windows che fornisce un controllo compensativo difensivo per sistemi ancora esposti a CVE-2017-0144 (MS17-010 / EternalBlue) — più comunemente installazioni Windows legacy o non supportate che non possono più ricevere aggiornamenti di sicurezza ufficiali Microsoft.
LegacyShield non corregge la vulnerabilità SMBv1 sottostante. Riduce la superficie d'attacco e migliora la visibilità tramite monitoraggio, rilevamento euristico, mitigazione automatica (temporanea, reversibile) tramite firewall, logging strutturato e reportistica professionale. L'applicazione dell'aggiornamento ufficiale MS17-010, o l'aggiornamento a una versione di Windows supportata, rimane la soluzione definitiva.
Questo progetto non contiene codice di exploit, codice Proof-of-Concept di attacco, tecniche di escalation dei privilegi o strumenti offensivi di alcun tipo.
| Capacità | Riepilogo |
|---|
| Valutazione del sistema | Legge (mai scrive) versione di Windows, stato SMBv1, esposizione delle porte 139/445, stato del firewall, condivisione file e profilo di rete. Produce un punteggio di sicurezza da 0 a 100. |
| Monitoraggio SMB | Sonda le porte TCP 139/445 tramite la tabella delle connessioni del sistema operativo per nuove connessioni in entrata. Nessuna cattura di pacchetti o ispezione del payload. |
| Motore di rilevamento | Euristiche configurabili: raffiche di connessioni, volume al minuto, negoziazioni fallite ripetute. |
| Risposta automatica | Crea regole firewall di blocco di Windows temporanee, taggate e con scadenza automatica per le sorgenti offensive; non tocca mai regole che non ha creato; supporto completo al rollback. |
| Logging | Log strutturati JSON/CSV/testo semplice, più voci nel Registro eventi di Windows per gli eventi ad alta severità. |
| Reportistica | Report di sicurezza di riepilogo esecutivo esportabili in JSON, HTML o PDF. |
| Interfaccia desktop | Dashboard PySide6, navigazione laterale, notifiche nella barra delle applicazioni. |
| Servizio in background | Servizio Windows opzionale basato su pywin32 per continuare la protezione quando la GUI è chiusa. |
LegacyShield/
├── main.py # Punto di ingresso GUI (+ verbi CLI install/disinstall/rollback)
├── legacyshield/
│ ├── core/ # Ispezione di sola lettura del sistema, punteggio, modelli condivisi
│ ├── modules/ # Config, motore di rilevamento, motore di risposta, whitelist
│ ├── services/ # Monitor SMB, servizio firewall, servizio Windows in background
│ ├── logging_/ # Scrittori di log JSON/CSV/testo + mirror nel Registro eventi di Windows
│ ├── reports/ # Generatore di report JSON/HTML/PDF + template HTML
│ └── ui/ # Finestra principale PySide6, barra laterale, dashboard, pagine, tray
├── config/default_config.json # Configurazione predefinita fornita
├── installer/ # Specifica PyInstaller, script di build, manifest, script Inno Setup
├── tests/ # Suite pytest inclusi test con API Windows mockate
├── samples/ # Esempi di output di config/log/report
└── docs/ # Guide indicate di seguito
Vedi ARCHITECTURE.md per la progettazione completa, inclusi i diagrammi UML di classi e sequenza.
python -m venv .venv
.venv\Scripts\activate # Windows
pip install -r requirements-dev.txt
pytest tests/ -v
python main.py
La GUI (
main.py) e il servizio Windows (legacyshield/services/background_service.py) richiedono Windows +pywin32. La logica di business di core/modules/services è indipendente dalla piattaforma e la sua suite di test viene eseguita su qualsiasi sistema operativo tramite protocolli API Windows mockati — veditests/mocks/windows_mocks.py.
pip install -r requirements-dev.txt
python installer/build.py # esegue i test, poi PyInstaller -> dist/LegacyShield.exe
iscc installer/installer.iss # opzionale: Inno Setup -> dist/installer/LegacyShield-Setup-*.exe
Questo è un progetto portfolio di ingegneria difensiva che dimostra la programmazione di sistemi Windows, la progettazione di monitoraggio/rilevamento e l'architettura di applicazioni sicure. Viene fornito senza una licenza specifica; aggiungine una appropriata all'uso previsto prima della distribuzione.