
Firewall RPC di Windows che controlla, rileva e blocca chiamate di procedura remota malevole per prevenire movimento laterale, ricognizione e sfruttamento di attacchi basati su RPC come DCSync e ZeroLogon.
Dai un'occhiata al nostro post sul blog RPC Firewall o al nostro talk al BlackHat per comprendere meglio RPC, gli attacchi RPC e la soluzione: RPC Firewall.
Unisciti al nostro workspace della comunità Slack |Zero| Labs per qualsiasi domanda, problema o semplicemente per fare un saluto.
Saremo lieti di ricevere tue notizie anche via email (se sei quel tipo di persona). Contattaci a [email protected]
Il seguente tutorial mostra l'installazione e la configurazione di base di RPC Firewall, oltre a una demo su come protegge da vari attacchi basati su RPC.
RPC è il meccanismo sottostante utilizzato per numerose tecniche di movimento laterale, ricognizione, attacchi relay o semplicemente per sfruttare servizi RPC vulnerabili.
Attacco DCSync? tramite RPC. DCOM remoto? tramite RPC. WMIC? tramite RPC. SharpHound? tramite RPC. PetitPotam? tramite RPC. PsExec? tramite RPC. ZeroLogon? tramite RPC... beh, hai capito l'idea :)
In questo documento utilizzeremo i seguenti termini:
Può essere utilizzato per controllare tutte le chiamate RPC remote. Una volta eseguiti strumenti di attacco remoti, vedrai quali UUID e Opnum RPC sono stati chiamati da remoto.
Vedi un esempio di configurazione qui.
Quando la Configurazione RPCFW è configurata per il controllo, gli eventi vengono scritti nel Registro eventi di Windows. Gli eventi Filtro RPC vengono scritti nel registro di sicurezza, con ID evento 5712. I log di RPC Firewall vengono scritti in Application/RPCFW.
Gli utenti possono inoltrare questi log al loro SIEM e usarli per creare baseline del traffico RPC remoto per vari server. Quando viene controllata una chiamata RPC anomala, usala per attivare un avviso per il tuo team SOC.
Abbiamo integrato diverse regole Sigma che possono essere utilizzate per rilevare attività e attacchi RPC insoliti.
La Configurazione RPCFW può essere configurata per bloccare e controllare solo le chiamate RPC potenzialmente dannose. Tutte le altre chiamate RPC non vengono controllate per ridurre il rumore e migliorare le prestazioni.
Quando viene rilevata una chiamata RPC potenzialmente dannosa, viene bloccata e controllata. Questo può essere utilizzato per avvisare il tuo team SOC, mantenendo protetti i tuoi server.
Per integrare la protezione, puoi utilizzare le capacità di filtro RPC, anch'esse supportate tramite RpcFwManager.exe.
Un esempio di tale configurazione si trova qui.
È composto da 3 componenti:
Sebbene ci siano pro e contro per l'uso di ciascun metodo, ci sono un paio di vantaggi principali nell'usare RPC Firewall che richiedono particolare attenzione. Questi sono:
D'altra parte, RPC Filters sono ottimi per consentire o negare in blocco UUID interi, poiché lo fanno senza problemi.
Prima di eseguire qualsiasi comando, si consiglia di controllare lo stato della distribuzione. Questo si fa emettendo il comando '/status':
RpcFwManager.exe /status
Questo mostrerà lo stato sia di RPC Firewall che di RPC Filters. Verranno fornite informazioni dettagliate sullo stato dell'installazione e anche sullo stato di esecuzione della distribuzione.
Quasi tutti i comandi possono essere seguiti da fw o flt alla fine. Questo dice al RPCFW Manager se il comando viene applicato a RPC Firewall ('fw'), RPC Filters ('flt') o a entrambi quando non si usa alcun suffisso.
Esegui l'installazione della funzione pertinente (RPC Filters / RPC Firewall / entrambi).
Assicurati che il visualizzatore eventi sia chiuso durante l'installazione/disinstallazione. Inoltre, è buona pratica fermare e disinstallare prima dell'installazione, per assicurarsi che non ci siano versioni precedenti installate.
RpcFwManager.exe /stop
RpcFwManager.exe /uninstall
RpcFwManager.exe /install
La disinstallazione fa l'opposto. Anche qui è buona pratica assicurarsi che il servizio sia fermo prima della disinstallazione.
RpcFwManager.exe /stop
RpcFwManager.exe /uninstall
RPC Filters, per loro natura, vengono applicati a livello di sistema, a qualsiasi server RPC. L'applicazione di tali filtri è persistente anche tra i riavvii. Qualsiasi processo nuovo o esistente sarà protetto da RPC Filters, secondo la Configurazione RPCFW.