![]()
In 3 giorni ho costruito un keylogger che bypassa Defender. Ecco come rilevarlo.
Introduzione
Ero convinto che Windows Defender fosse sufficiente. Poi ho installato il mio keylogger con un semplice ‘Esegui come amministratore’ e per 48 ore ha registrato tutto senza mai essere rilevato. In quel momento ho capito: l’antivirus non basta. Negli ultimi anni, la sicurezza degli endpoint è migliorata drasticamente. Tuttavia, molti threat actor sfruttano ancora strumenti di base che passano inosservati alle scansioni tradizionali. In questo articolo racconto un esperimento di ricerca: in soli 3 giorni ho sviluppato un keylogger in Python (codice didattico su github), ho testato la sua capacità di eludere le firme statiche di Windows Defender e ho costruito un network monitor open source per rilevarne le attività di esfiltrazione. L’obiettivo non è insegnare a compromettere sistemi, ma dimostrare come difendersi in modo pratico e consapevole.
1 La scoperta: quanto è facile fare un keylogger
ll codice base (didattico in Python)
Lo script di partenza si basa su librerie legittime e ampiamente documentate come keyboard, ctypes e queue. In ambito didattico, questi moduli permettono di intercettare gli eventi di input a livello utente senza richiedere privilegi elevati. Il codice non contiene payload malevoli, tecniche di offuscamento o exploit: serve solo a comprendere come il sistema operativo gestisca la catena di input e come sia possibile registrarla localmente.

La persistenza via Task Scheduler
Per rendere lo script eseguibile dopo il riavvio, ho utilizzato Task Scheduler, un componente nativo di Windows. La creazione di un’attività pianificata con trigger AtLogOn e azione pythonw.exe è una procedura standard, documentata da Microsoft e spesso utilizzata da amministratori IT. La legittimità del binario e del contesto di esecuzione è uno dei motivi per cui i tradizionali antivirus faticano a bloccarla.
Perché Defender non lo vede
Windows Defender si affida principalmente a:
- Firme statiche e euristiche basate su pattern noti
- Reputation-based scoring (SmartScreen, cloud reputation)
- Behavioral monitoring per azioni sospette (modifica di registri critici, injection, privilege escalation)
Uno script Python interpretato, eseguito in contesto utente e senza chiamate di sistema anomale, spesso non innesca questi meccanismi. Defender lo classifica come “pulito” perché non corrisponde a una minaccia nota e non modifica il sistema in modo irreversibile.
2. I test reali
UAC bypass (bloccato da Defender)
Ho testato diverse tecniche di elusione dell’UAC (User Account Control) per ottenere privilegi amministrativi. Tutte sono state intercettate da Defender e da Windows Smart App Control. Microsoft ha rafforzato notevolmente il monitoraggio dei processi che tentano escalation di privilegi non firmati o che utilizzano DLL hijacking.
Task Scheduler (NON bloccato)
L’attività pianificata è stata creata senza errori e non ha generato alert. Defender ha classificato l’esecuzione come legittima perché:
- Il binario di avvio è firmato Microsoft (
pythonw.exeo interprete ufficiale) - Non ci sono scritture in
HKLM,System32o cartelle protette - Il traffico di rete è assente nella fase di setup
Exfiltration via FTP (rilevabile)
Quando ho aggiunto un modulo di esfiltrazione dati via FTP su porta 21, Defender non ha bloccato il processo, ma il traffico di rete è diventato visibile. Qui emerge il gap di sicurezza: gli antivirus endpoint si concentrano sull’eseguibile, non sul canale di comunicazione. Un tool di monitoraggio di rete, invece, può intercettare connessioni in uscita insolite e flaggarle prima che i dati lascino il perimetro.
3. Il tool che ho costruito
Network monitor in Python
Per colmare questa lacuna, ho sviluppato un network monitor leggero in Python. Il tool utilizza psutil e socket per enumerare le connessioni attive, scapy per l’ispezione dei pacchetti e un motore di regole basato su soglie comportamentali.

Come rileva le connessioni sospette
Il monitor analizza in tempo reale:
- Connessioni verso IP non in allowlist aziendale o domestica
- Traffico FTP/SMTP/HTTP non standard (porte anomale, frequenze elevate, payload di piccole dimensioni)
- Sessioni DNS con query sospette (TLD insoliti, lunghezza record anomala)
- Processi che aprano socket senza finestra UI o senza firma valida
Quando una connessione supera la soglia di rischio configurata, il tool genera un log, un alert desktop e opzionalmente un blocco tramite firewall Windows (richiede esecuzione come amministratore).
I limiti (e come superarli)
- Traffico cifrato (TLS/HTTPS): il monitor non ispeziona il payload. Soluzione: integrare con certificati aziendali o utilizzare indicatori basati su SNI e frequenza di connessione.
- Falsi positivi: servizi di aggiornamento, cloud sync e app legittime generano traffico costante. Soluzione: allowlist dinamica, apprendimento comportamentale base e filtro per hash del processo.
- Privilegi: per modificare regole firewall o catturare pacchetti raw servono diritti elevati. Soluzione: modalità user-space per il monitoraggio passivo + esecuzione pianificata con task elevati per le azioni di risposta.
4. Cosa ho imparato
La whitelist è pericolosa
Fidarsi ciecamente di binari firmati o di processi “conosciuti” crea un falso senso di sicurezza. Gli aggressori moderni sfruttano Living-off-the-Land Binaries (LOLBas) e strumenti legittimi per muoversi lateralmente ed esfiltrare dati. La sicurezza deve spostarsi da “cosa è permesso” a “cosa è anomalo”.
Il network monitor è la soluzione
La difesa perimetrale e l’antivirus endpoint sono necessari, ma insufficienti. Il monitoraggio dell’egress traffic intercetta le fasi finali della kill chain: quando i dati stanno per lasciare la macchina. Un approccio basato su Zero Trust e visibility di rete riduce drasticamente il rischio di data breach silenziosi.
La gente compra keylogger, non tool anti-keylogger
Il mercato della cybersecurity consumer è sbilanciato. Strumenti offensivi sono facilmente reperibili, mentre le soluzioni difensive open source o gratuite ricevono meno attenzione e finanziamenti. Questo progetto nasce proprio per invertire la tendenza: rendere la protezione accessibile, trasparente e migliorabile dalla community.
Scarica il Network Monitor
⬇️ Il tool è disponibile in versione stabile per Windows 10/11 e Linux. Non richiede installazione pesante: basta clonare il repository, creare un ambiente virtuale e installare le dipendenze con pip install -r requirements.txt.
Open source su GitHub
🔗 Repository: [Scarica da Git]
Licenza MIT. Codice completamente visibile, auditabile e modificabile. Ideale per professionisti IT, studenti di cybersecurity e appassionati di privacy.
Come contribuire ❔
- 🐛 Segnalazione bug: apri una Issue con template precompilato
- 🔧 Pull Request: segui le linee guida di CONTRIBUTING.md
- 📖 Documentazione: traduzioni, esempi di configurazione, casi d’uso reali
- 🛡️ Disclosure responsabile: per vulnerabilità di sicurezza, contatta l’email dedicata nel repo
⚠️ Nota legale: questo strumento è fornito esclusivamente per scopi educativi e di difesa. Il monitoraggio di dispositivi senza esplicita autorizzazione viola le leggi sulla privacy (GDPR, art. 615-ter c.p. e normative equivalenti). Utilizzalo solo su sistemi di tua proprietà o con consenso scritto.
FAQ
Un keylogger in Python può davvero bypassare Windows Defender ❔
Sì, se si limita a registrare input localmente, usa binari legittimi e non modifica il sistema. Defender si basa su firme e comportamento; senza azioni sospette, lo script può passare inosservato.
Come posso rilevare un keylogger senza installare un EDR costoso ❔
Monitorando il traffico di rete in uscita. Connessioni FTP, SMTP o DNS anomale, specialmente da processi non UI, sono indicatori chiave di esfiltrazione.
Il network monitor proposto è legale da usare ❔
Sì, se utilizzato su dispositivi di proprietà o con autorizzazione scritta. Il monitoraggio non autorizzato di terze parti è illegale nella maggior parte delle giurisdizioni.
Funziona su traffico HTTPS cifrato ❔
Il tool non decifra il traffico TLS, ma analizza metadati: IP destinazione, frequenza, dimensione pacchetti, SNI e processo associato. Sono indicatori sufficienti per individuare comportamenti sospetti.
Vuoi proteggere i tuoi endpoint oggi stesso ❔
Scarica il network monitor, configuralo in modalità passiva e inizia a visualizzare cosa lascia realmente il tuo PC. Condividi il progetto, segnala migliorie e aiuta a costruire una sicurezza più trasparente e accessibile. 🔒
Dopo aver costruito un keylogger e un tool per rilevarlo, ho capito una cosa: la sicurezza non è un prodotto che compri. È un processo che impari.
Articolo aggiornato a maggio 2026. Per approfondimenti tecnici, consulta la documentazione ufficiale Microsoft su Windows Defender Application Control e le best practice MITRE ATT&CK per la difesa da credential harvesting.
📖 Letto da: 8








