Blocco di specifici protocolli di rete e porte utilizzando IPSec

Sommario

Le regole di filtro IPSec (Internet Protocol Security) possono essere utilizzate per aiutare a proteggere computer basati su Windows 2000 dalla minaccia di virus e worm provenienti dalla rete. In questo articolo viene descritto come filtrare il traffico di rete in entrata e in uscita in base a una particolare combinazione di protocollo e porta. Vengono anche descritte le procedure per determinare se esistono criteri IPSec attualmente assegnati a un computer basato su Windows 2000, per creare e assegnare un nuovo criterio IPSec e per annullare l'assegnazione ed eliminare un criterio IPSec.

Informazioni

I criteri IPSec possono essere applicati localmente o a un membro di dominio come parte dei criteri di gruppo di tale dominio. I criteri IPSec locali possono essere statici (preservati) oppure dinamici (non preservati). I criteri IPSec statici sono scritti nel Registro di sistema locale e vengono conservati anche dopo il riavvio del sistema operativo, mentre quelli dinamici non vengono scritti in maniera permanente nel Registro di sistema e vengono rimossi se il sistema operativo o il servizio Agente criteri IPSec viene riavviato.

Importante In questo articolo sono contenute informazioni su come modificare il Registro di sistema utilizzando Ipsecpol.exe. Prima di modificare il Registro di sistema, assicurarsi di sapere come ripristinarlo in caso di problemi. Per ulteriori informazioni su come eseguire il backup, ripristinare e modificare il Registro di sistema, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito (il contenuto potrebbe essere in inglese):
256986 Descrizione del Registro di sistema di Microsoft Windows
Nota Le regole di filtro IPSec possono causare nei programmi di rete la perdita di dati o l'interruzione dell'attività di risposta alle richieste della rete, tra cui anche la mancata autenticazione degli utenti. Si consiglia pertanto di utilizzare le regole di filtro IPSec solo come ultima misura difensiva e solo dopo avere valutato attentamente l'impatto del blocco di specifiche porte sull'ambiente in uso. Se un criterio IPSec creato utilizzando la procedura elencata in questo articolo produce effetti indesiderati sui programmi di rete, vedere la sezione "Annullare l'assegnazione ed eliminare un criterio IPSec" di seguito in questo articolo per informazioni su come disabilitare ed eliminare immediatamente il criterio in questione.

Determinare se un criterio IPSec è ssegnato

Prima di creare o assegnare qualsiasi nuovo criterio IPSec a un computer basato su Windows 2000, determinare se esistono criteri IPSec applicati mediante il Registro di sistema locale o un oggetto Criteri di gruppo. Per effettuare questa operazione:
1. Installare Netdiag.exe dal CD di Windows 2000 eseguendo Setup.exe dalla cartella Support\Tools.
2. Aprire il prompt dei comandi e impostare la cartella di lavoro su C:\Programmi\Support Tools.
3. Eseguire il comando riportato per verificare che NON esista già un criterio IPSec assegnato al computer:
netdiag /test:ipsec
Se non è assegnato alcun criterio verrà visualizzato il seguente messaggio:
IP Security test . . . . . . . . . : Passed IPSec policy service is active, but no policy is assigned.

Creare un criterio statico per il blocco del traffico

Nei sistemi in cui non è abilitato localmente alcun criterio IPSec, attenersi alla procedura descritta di seguito per creare un nuovo criterio statico locale mediante cui bloccare il traffico diretto a uno specifico protocollo e a una specifica porta di un computer basato su Windows 2000 in cui non sia assegnato alcun criterio IPSec esistente:
1. Verificare che il servizio Agente criteri IPSec sia abilitato e avviato nello snap-in MMC Servizi.
2. Visitare il seguente sito Web Microsoft per scaricare e installare Ipsecpol.exe (informazioni in lingua inglese): http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/ipsecpol-o.asp
3. Aprire un prompt dei comandi e impostare come cartella di lavoro la cartella di installazione di Ipsecpol.exe.

Nota La cartella di installazione predefinita di Ipsecpol.exe è C:\Programmi\Resource Kit.
4. Per creare un nuovo criterio IPSec locale e una regola di filtro per il traffico di rete proveniente da qualsiasi indirizzo IP e diretto all'indirizzo IP del computer basato su Windows 2000 che si sta configurando, utilizzare la sintassi illustrata di seguito, dove protocollo e numero porta sono delle variabili:
ipsecpol -w REG -p "Filtro blocco protocollonumero porta" -r "Regola blocco entrata protocollonumero porta" -f *=0:numero porta:protocollo -n BLOCK –x
Per bloccare ad esempio il traffico di rete proveniente da qualsiasi indirizzo IP e qualsiasi porta di origine e diretto alla porta di destinazione UDP 1434 di un computer basato su Windows 2000, digitare quanto riportato di seguito (questo criterio è sufficiente a proteggere i computer che eseguono Microsoft SQL Server 2000 dal virus worm "Slammer"):
ipsecpol -w REG -p "Filtro blocco UDP 1434" -r "Regola blocco entrata UDP 1434" -f *=0:1434:UDP -n BLOCK -x
L'esempio riportato di seguito consente di bloccare l'accesso in entrata alla porta TCP 80 consentendo invece l'accesso in uscita da tale porta (questo criterio è sufficiente a proteggere i computer che eseguono Microsoft Internet Information Services (IIS) 5.0 dai virus worm "Code Red" e "Nimda"):
ipsecpol -w REG -p "Filtro blocco TCP 80" -r "Regola blocco entrata TCP 80" -f *=0:80:TCP -n BLOCK -x
Nota Il parametro -x consente di assegnare immediatamente il criterio. Se si utilizza questo comando, verrà annullata l'assegnazione del criterio "Filtro blocco UDP 1434" e verrà assegnato il criterio "Filtro blocco TCP 80". Per aggiungere quest'ultimo criterio senza tuttavia assegnarlo, digitare il comando senza parametro finale -x.
5. Per aggiungere un'ulteriore regola di filtro al criterio esistente "Filtro blocco UDP 1434" che blocca il traffico di rete proveniente dal computer basato su Windows 2000 e diretto a qualsiasi indirizzo IP, utilizzare la sintassi illustrata di seguito, dove protocollo e numero porta sono delle variabili:
ipsecpol -w REG -p "Filtro blocco protocollonumero porta" -r "Regola blocco uscita protocollonumero porta" -f *0=:numero porta:protocollo -n BLOCK
Per bloccare ad esempio tutto il traffico di rete proveniente dal computer basato su Windows 2000 e diretto alla porta UDP 1434 di qualsiasi altro host, digitare quanto riportato di seguito (questo criterio è sufficiente a proteggere i computer che eseguono Microsoft SQL Server 2000 dal virus worm "Slammer"):
ipsecpol -w REG -p "Filtro blocco UDP 1434" -r "Regola blocco uscita UDP 1434" -f 0=*:1434:UDP -n BLOCK
Nota È possibile aggiungere quante regole di filtro si desidera a un criterio utilizzando questa sintassi, ad esempio per bloccare più porte utilizzando lo stesso criterio.
6. Il criterio descritto al passaggio 5 sarà ora attivo e tale rimarrà anche dopo il riavvio del computer. Se tuttavia in seguito verrà assegnato al computer locale un criterio IPSec a livello di dominio, il criterio locale verrà ignorato e non più applicato. Per verificare che l'assegnazione della regola di filtro sia andata a buon fine, al prompt dei comandi impostare come cartella di lavoro la cartella C:\Programmi\Support Tools e digitare il seguente comando:
netdiag /test:ipsec /debug
Se, come in questi esempi, sono applicati criteri per il traffico in entrata e in uscita, verrà visualizzato il seguente messaggio:
Test IPSec . . . . . . . . . :
Passed Local IPSec Policy Active: 'Filtro blocco UDP 1434' IP Security Policy Path: SOFTWARE\Policies\Microsoft\Windows\IPSec\Policy\Local\ipsecPolicy{D239C599-F945-47A3-A4E3-B37BC12826B9}

There are 2 filters
No Name
Filter Id: {5EC1FD53-EA98-4C1B-A99F-6D2A0FF94592}
Policy Id: {509492EA-1214-4F50-BF43-9CAC2B538518}
Src Addr: 0.0.0.0 Src Mask : 0.0.0.0
Dest Addr: 192.168.1.1 Dest Mask : 255.255.255.255
Tunnel Addr: 0.0.0.0 Src Port : 0 Dest Port : 1434
Protocollo: 17 TunnelFilter: No
Flags: Inbound Block
No Name
Filter Id: {9B4144A6-774F-4AE5-B23A-51331E67BAB2}
Policy Id: {2DEB01BD-9830-4067-B58A-AADFC8659BE5}
Src Addr: 192.168.1.1 Src Mask : 255.255.255.255
Dest Addr: 0.0.0.0 Dest Mask : 0.0.0.0
Tunnel Addr: 0.0.0.0 Src Port : 0 Dest Port : 1434
Protocol : 17 TunnelFilter: No
Flags: Outbound Block
Nota Gli indirizzi IP e i GUID varieranno, in quanto relativi al computer basato su Windows 2000.

Aggiungere una regola di blocco per una specifica combinazione di protocollo e porta

Per aggiungere una regola di blocco per una specifica combinazione di protocollo e porta in un computer basato su Windows 2000 a cui è assegnato localmente un criterio IPSec statico, attenersi alla procedura seguente:
1. Visitare il seguente sito Web Microsoft per scaricare e installare Ipsecpol.exe (informazioni in lingua inglese): http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/ipsecpol-o.asp
2. Identificare il nome del criterio IPSec attualmente assegnato. A tale scopo, al prompt dei comandi digitare quanto riportato di seguito:
netdiag /test:ipsec
Se è assegnato un criterio verrà visualizzato il seguente messaggio:
IP Security test . . . . . . . . . : Passed
Local IPSec Policy Active: 'Filtro blocco UDP 1434'
3. Se un criterio IPSec è già assegnato al computer, in locale o a livello di dominio, utilizzare la sintassi illustrata di seguito per aggiungere un'ulteriore regola di filtro di blocco al criterio IPSec esistente, dove nome criterio IPSec esistente, protocollo e numero porta sono delle variabili:
ipsecpol -p "nome criterio IPSec esistente" -w REG -r "Regola blocco protocollonumero porta" -f *=0:numero porta:protocollo -n BLOCK
Per aggiungere ad esempio al criterio "Filtro blocco UDP 1434" una regola di filtro per bloccare l'accesso in entrata alla porta TCP 80, digitare il comando seguente:
ipsecpol -p "Filtro blocco UDP 1434" -w REG -r "Regola blocco entrata TCP 80" -f *=0:80:TCP -n BLOCK

Aggiungere un criterio di blocco dinamico per una specifica combinazione di protocollo e porta


In alcuni casi può essere necessario bloccare temporaneamente una determinata porta, ad esempio finchè non sia stata installato un aggiornamento rapido oppure se è già assegnato al computer un criterio IPSec a livello di dominio. Per bloccare temporaneamente l'accesso a una porta di un computer basato su Windows 2000 utilizzando i criteri IPSec, attenersi alla procedura seguente:
1. Visitare il seguente sito Web Microsoft per scaricare e installare Ipsecpol.exe (informazioni in lingua inglese): http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/ipsecpol-o.asp
2. Per aggiungere un filtro dinamico che blocchi tutti i pacchetti provenienti da qualsiasi indirizzo IP e diretti all'indirizzo IP del proprio sistema e a una porta specifica, al prompt dei comandi digitare il comando riportato di seguito, dove protocollo e numero porta sono delle variabili:
ipsecpol -f [*=0:numero porta:protocollo]
Nota Questo comando crea il filtro di blocco in maniera dinamica in modo che il criterio rimanga assegnato fino a quando il servizio Agente criteri IPSec sarà in funzione. Se il servizio IPSec o il computer viene riavviato, l'impostazione andrà persa. Se si desidera riassegnare dinamicamente tale regola di filtro IPSec ogni volta che il sistema viene riavviato, creare uno script di avvio per riapplicare la regola. Se si desidera applicare in maniera permanente questo filtro, configurarlo come criterio IPSec statico. Lo snap-in MMC Gestione criteri IPSec offre un'interfaccia grafica utente mediante cui gestire la configurazione dei criteri IPSec. Se è già applicato un criterio IPSec a livello di dominio, il comando netdiag /test:ipsec /debug potrebbe visualizzare solo i dettagli del filtro, se eseguito da un utente con credenziali di amministratore di dominio. Nel Service Pack 4 per Windows 2000 verrà resa disponibile una versione aggiornata di Netdiag.exe che consentirà agli amministratori di visualizzare i criteri IPSec applicati a livello di dominio.

Regole di filtro IPSec e Criteri di gruppo

Negli ambienti in cui i criteri IPSec sono assegnati mediante un'impostazione dei Criteri di gruppo, è necessario aggiornare il criterio dell'intero dominio per bloccare una particolare combinazione di protocollo e porta. Una volta configurate correttamente le impostazioni IPSec dei Criteri di gruppo, è necessario aggiornare le impostazioni dei Criteri di gruppo di tutti i computer basati su Windows 2000 del dominio. Per effettuare questa operazione, utilizzare il comando seguente:
secedit /refreshpolicy machine_policy
La modifica al criterio IPSec verrà rilevata entro uno o due intervalli di polling. Ogni nuovo criterio IPSec assegnato a un oggetto Criteri di gruppo verrà assegnato ai client entro il periodo di tempo impostato per l'intervallo di polling dei Criteri di gruppo oppure quando il comando secedit /refreshpolicy machine_policy verrà eseguito sui computer client. Se il criterio IPSec è già assegnato a un oggetto Criteri di gruppo e vengono aggiunti nuovi filtri o regole IPSec a un criterio esistente, il comando secedit non consentirà a IPSec di riconoscere le modifiche. In tal caso, le modifiche a un criterio IPSec basato su un oggetto Criteri di gruppo esistente verranno rilevate entro l'intervallo di polling di tale criterio IPSec. Tale intervallo è specificato nella scheda Generale del criterio IPSec. È anche possibile forzare un aggiornamento delle impostazioni del criteri IPSec riavviando il servizio Agente criteri IPSec. Se il servizio IPSec viene arrestato e riavviato, le comunicazioni protette IPSec verranno interrotte e ci vorranno alcuni secondi per riprenderle. Ciò potrebbe causare la disconnessione del programma, particolarmente per le connessioni su cui è in corso il trasferimento di volumi elevati di dati. Nelle situazioni in cui il criterio IPSec è applicato solo al computer locale, non sarà necessario riavviare il servizio.

Annullare l'assegnazione ed eliminare un criterio IPSec

Computer in cui è definito un criterio statico locale
1. Aprire un prompt dei comandi e impostare come cartella di lavoro la cartella di installazione di Ipsecpol.exe.
2. Per annullare l'assegnazione del filtro creato in precedenza, utilizzare la seguente sintassi:
ipsecpol -w REG -p "Filtro blocco protocollonumero porta" –y
Ad esempio, per annullare l'assegnazione del criterio "Filtro blocco UDP 1434" creato in precedenza, utilizzare il seguente comando:
ipsecpol -w REG -p "Filtro blocco UDP 1434" -y
3. Per eliminare il filtro creato in precedenza, utilizzare la seguente sintassi:
ipsecpol -w REG -p "Filtro blocco protocollonumero porta" -r "Regola blocco protocollonumero porta" –o
Per eliminare ad esempio il "Filtro blocco UDP 1434" ed entrambe le regole create in precedenza, utilizzare il seguente comando:
ipsecpol -w REG -p "Filtro blocco UDP 1434" -r "Regola blocco entrata UDP 1434" -r "Regola blocco uscita UDP 1434" -o
Computer in cui è definito un criterio dinamico locale

L'applicazione del criterio IPSec dinamico verrà annullata se il servizio Agente criteri IPSec viene arrestato (utilizzando il comando net stop policyagent). Per eliminare tuttavia gli specifici comandi utilizzati in precedenza senza dover arrestare il servizio Agente criteri IPSec, attenersi alla seguente procedura:
1. Aprire un prompt dei comandi e impostare come cartella di lavoro la cartella di installazione di Ipsecpol.exe.
2. Digitare il seguente comando:
Ipsecpol –u
Nota È anche possibile riavviare il servizio Agente criteri IPSec per annullare tutti i criteri assegnati dinamicamente.

Applicare la regola di filtro a tutte le combinazioni di protocolli e porte

In base all'impostazione predefinita, in Microsoft Windows 2000 e Microsoft Windows XP, IPSec esonera il traffico Broadcast, Multicast, RSVP, IKE e Kerberos da tutte le limitazioni imposte da filtri e autenticazione. Per ulteriori informazioni in proposito, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito (il contenuto potrebbe essere in inglese):
253169 Protezione del traffico con IPSec
Laddove IPSec è utilizzato solo per consentire e bloccare il traffico, rimuovere le esenzioni per i protocolli Kerberos e RSVP modificando un apposito valore di registro. Per informazioni dettagliate in proposito, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito (il contenuto potrebbe essere in inglese):
254728 Con IPSec non è possibile proteggere il traffico Kerberos tra controller di dominio
Attenendosi a queste istruzioni è possibile proteggere la porta UDP 1434 anche nei casi in cui utenti malintenzionati riescano a impostare la propria porta di origine in base alle porte Kerberos TCP/UDP 88. Rimuovendo le esenzioni per il protocollo Kerberos, i pacchetti Kerberos verranno associati a tutti i filtri del criterio IPSec. Pertanto, Kerberos può essere protetto all'interno di IPSec, bloccato o consentito. Se i filtri IPSec corrispondono al traffico Kerberos diretto agli indirizzi IP del controller di dominio, potrebbe essere necessario cambiare la struttura dei criteri IPSec per aggiungere dei nuovi filtri che consentano il traffico Kerberos diretto a ciascun indirizzo IP di controller di dominio (se non si utilizza IPSec per proteggere tutto il traffico tra i controller di dominio, come descritto nell'articolo 254728 della Microsoft Knowledge Base).

Applicazione delle regole di filtro IPSec al riavvio del computer

L'applicazione di tutti i criteri IPSec avviene a opera del servizio Agente criteri IPSec. Quando un computer basato su Windows 2000 sta per essere avviato, il servizio Agente criteri IPSec non è necessariamente il primo servizio a essere avviato. Il che significa che per un breve istante la connessione di rete del computer potrebbe essere vulnerabile a virus o worm. Questa situazione si verifica solo nel caso in cui un servizio potenzialmente vulnerabile è stato avviato correttamente e sta accettando la connessione prima che il servizio Agente criteri IPSec sia stato completamente avviato e siano stati assegnati tutti i criteri.

<- HOME

Copyright(c)2001-3000 by Ing. Eduardo Palena Napolifirewall.com