Manipolazione Firewall Windows: Windows Host Firewall (T1686.003)

La tecnica T1686.003 descrive la manipolazione del Windows Defender Firewall da parte di un avversario per aggirare i controlli di rete imposti sull'host. L'attività si colloca nella tattica TA0112 (Defense Impairment) e agisce come fattore abilitante nelle fasi di Command and Control, Lateral Movement e Persistence della kill chain: aprire una porta RDP, esporre un canale C2 o consentire connessioni entranti verso una backdoor sono tutte operazioni che passano dal firewall locale.

L'attaccante può agire su tre livelli. Il primo è la disabilitazione totale o per profilo (Domain, Private, Public); il secondo è l'aggiunta o rimozione di regole puntuali via netsh advfirewall o cmdlet PowerShell come New-NetFirewallRule e Set-NetFirewallProfile; il terzo è la modifica diretta delle chiavi di registro che ospitano policy e regole.

I dati MITRE ATT&CK registrano 6 gruppi APT, 9 famiglie malware e 2 campagne documentate, con un mix che va da attori state-sponsored come Lazarus Group, OilRig e APT28 fino a operatori ransomware come BlackByte 2.0. Le mitigazioni consolidate sono quattro: M1018 (User Account Management), M1022 (Restrict File and Directory Permissions), M1024 (Restrict Registry Permissions) e M1047 (Audit).

In un ingaggio red team la manipolazione del firewall è tipicamente un passo intermedio: serve ad aprire un canale di ritorno o a esporre un servizio che verrà usato per movimento laterale. Le operazioni richiedono privilegi amministrativi locali o accesso SYSTEM.

La via classica passa da netsh. Per disabilitare i tre profili in un colpo solo si usa netsh advfirewall set allprofiles state off, replicando il comportamento osservato in campioni di Lazarus Group e negli script batch di Moses Staff. Per aprire selettivamente una porta, la sintassi documentata nel playbook di Magic Hound è:

netsh advfirewall firewall add rule name="Terminal Server" dir=in action=allow protocol=TCP localport=3389

Su sistemi moderni conviene sfruttare i cmdlet PowerShell del modulo NetSecurity, meno vistosi in alcuni ambienti mal monitorati. Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False spegne il firewall; New-NetFirewallRule -DisplayName "Cortana" -Direction Inbound -Protocol TCP -LocalPort 47000 -Action Allow riproduce la regola civetta usata dal malware HiddenFace, che sceglie un nome credibile per mimetizzarsi tra le regole legittime.

Un'alternativa più silente è la scrittura diretta sul registro. Le chiavi di riferimento sono HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy con le sottochiavi DomainProfile, StandardProfile e PublicProfile, dove il valore EnableFirewall a 0 disabilita il profilo; le regole vivono in FirewallRules e possono essere aggiunte come stringhe conformi al formato interno.

Per laboratori di simulazione, framework open source come Atomic Red Team (open source) includono test già pronti per T1562.004 e T1686.003 che invocano netsh, PowerShell e modifiche registry. Caldera (open source) di MITRE consente di orchestrare la catena completa disabilitazione firewall → apertura porta → beacon C2 in modo ripetibile. Per validare l'esposizione risultante conviene un fingerprint esterno con Nmap (open source) nmap -sS -Pn -p 3389,445,5985 prima e dopo la modifica.

Sul fronte operativo, un red teamer maturo evita la disabilitazione totale (troppo rumorosa): preferisce aggiungere una singola regola inbound con nome plausibile ("Windows Update Assistant", "Diagnostic Service") su una porta alta, mantenendo il profilo attivo per non allertare EDR e workflow di compliance che vigilano sullo stato del firewall.

Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo

TEST GRATUITO
2 minuti · 7 domande Che professionista cyber sei? Scopri il profilo più vicino al tuo modo di pensare e inizia dal percorso giusto.