Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’un des défis de sécurité auxquels les administrateurs réseau sont confrontés est la configuration correcte d’un appareil après une modification du réseau.
Les modifications réseau peuvent se produire fréquemment. Les opérations requises pour reclasser le réseau après une modification et appliquer les stratégies de sécurité appropriées sur un appareil ne sont pas nécessaires et peuvent nécessiter un temps processeur considérable. Cette exigence par les opérations est particulièrement vraie pour les appareils qui font partie d’un domaine. Le retard dans l’application des stratégies de sécurité pendant la recatégorisation du réseau peut être exploité pour les vulnérabilités.
Pour contrer l’exploitation potentielle, le Pare-feu Windows met en quarantaine une interface jusqu’à ce que le système reclasse correctement le réseau et que la plateforme de filtrage Windows (PAM) ait les filtres appropriés appliqués pour la configuration de l’interface mise à jour. Pendant la mise en quarantaine, toutes les nouvelles connexions entrantes sans exception sont bloquées.
Ce document décrit la fonctionnalité de mise en quarantaine et explique pourquoi le trafic de l’application peut être bloqué par la mise en quarantaine.
Filtres de mise en quarantaine
La fonctionnalité de mise en quarantaine crée des filtres qui peuvent être divisés en trois catégories :
- Filtre de bloc entrant par défaut de mise en quarantaine
- Mettre en quarantaine les filtres d’exception par défaut
- Filtres d’unquarantine d’interface
Ces filtres sont ajoutés dans la FWPM_SUBLAYER_MPSSVC_QUARANTINE
sous-couche et ces couches sont les suivantes :
FWPM_LAYER_ALE_AUTH_CONNECT_V4
FWPM_LAYER_ALE_AUTH_CONNECT_V6
FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V4
FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V6
Remarque
Les règles de pare-feu ajoutées par les paramètres de stratégie n’affectent pas les filtres dans la sous-couche de mise en quarantaine. Les filtres des règles de pare-feu sont ajoutés dans la FWPM_SUBLAYER_MPSSVC_WF
sous-couche. En d’autres termes, vous ne pouvez pas ajouter vos propres filtres d’exception pour empêcher l’évaluation des paquets par des filtres de mise en quarantaine.
Pour plus d’informations sur les couches et sous-couches PAM, consultez Opération PAM.
Filtre de bloc entrant par défaut de mise en quarantaine
Le filtre de bloc entrant par défaut de mise en quarantaine bloque toutes les nouvelles connexions entrantes nonloopback, sauf si le paquet n’est pas explicitement autorisé par un autre filtre dans la sous-couche de mise en quarantaine.
Mettre en quarantaine les filtres d’exception par défaut
Lorsque l’interface est en quarantaine, les filtres d’exception par défaut de mise en quarantaine autorisent de nouvelles connexions entrantes, étant donné qu’elles remplissent les conditions d’un filtre d’exception. Un exemple des filtres d’exception est le filtre d’exception de bouclage entrant par défaut de mise en quarantaine. Ce filtre d’exception autorise tous les paquets de bouclage lorsque l’interface est en quarantaine.
Filtre d’unquarantine d’interface
Les filtres d’unquarantine d’interface autorisent tous les paquets nonloopback si l’interface est correctement catégorisée.
Flux de mise en quarantaine
Les événements suivants décrivent le flux général de la mise en quarantaine :
- Il y a des modifications sur l’interface réseau actuelle
- Les filtres d’unquarantine d’interface n’autorisent pas de nouvelles connexions entrantes. L’interface est maintenant en quarantaine
- Toutes les connexions entrantes nonloopback sont soit autorisées par les filtres d’exception par défaut de mise en quarantaine, soit supprimées par le filtre de bloc entrant par défaut de mise en quarantaine
- Les filtres PAM applicables à l’ancien état de l’interface sont supprimés
- Les filtres PAM applicables au nouvel état de l’interface sont ajoutés, qui incluent les filtres de non-quarantine pour cette interface. Ces filtres sont mis à jour pour correspondre à l’état actuel de l’interface
- L’interface a maintenant quitté l’état de quarantaine, car les filtres d’unquarantine d’interface autorisent tous les nouveaux paquets nonloopback
Diagnostics de mise en quarantaine
Il existe deux méthodes pour identifier les suppressions de paquets du filtre de bloc entrant par défaut de mise en quarantaine.
Étant donné que le problème de connectivité réseau est reproductible, les traces de diagnostic peuvent être collectées en exécutant la commande suivante dans une invite de commandes d’administration :
Netsh wfp cap start
<Reproduce network connectivity issue>
Netsh wfp cap stop
Ces commandes génèrent un wfpdiag.cab. À l’intérieur du .cab se trouve un wfpdiag.xml, qui contient des filtres et des filtres netEvents
qui existaient pendant cette reproduction.
Dans le wfpdiag.xml, recherchez netEvents
qui ont FWPM_NET_EVENT_TYPE_CLASSIFY_DROP
comme netEvent
type. Pour rechercher les événements de suppression appropriés, recherchez les événements de suppression avec l’adresse IP de destination, le SID de package ou le nom d’ID d’application correspondant.
Les caractères dans le nom de l’ID d’application sont séparés par des points :
<asString> \\.d.e.v.i.c.e.\\.h.a.r.d.d.i.s.k.v.o.l.u.m.e.1.\\.w.i.n.d.o.w.s.\\.s.y.s.t.e.m.3.2.\\.s.v.c.h.o.s.t...e.x.e... </asString>
le netEvent
contient plus d’informations sur le paquet supprimé, y compris des informations sur ses fonctionnalités, le filtre qui a supprimé le paquet, et bien plus encore.
Si le filtre qui a supprimé ce paquet était par le filtre de bloc entrant par défaut de mise en quarantaine, la suppression netEvent
contient la valeur filterOrigin
Quarantine Default
.
Le code suivant est un exemple netEvent
avec comme Quarantine Default
filterOrigin
.
<netEvent>
<header>
<timeStamp>2020-10-07T01:03:56.281Z</timeStamp>
<flags numItems="9">
<item>FWPM_NET_EVENT_FLAG_IP_PROTOCOL_SET</item>
<item>FWPM_NET_EVENT_FLAG_LOCAL_ADDR_SET</item>
<item>FWPM_NET_EVENT_FLAG_REMOTE_ADDR_SET</item>
<item>FWPM_NET_EVENT_FLAG_LOCAL_PORT_SET</item>
<item>FWPM_NET_EVENT_FLAG_REMOTE_PORT_SET</item>
<item>FWPM_NET_EVENT_FLAG_APP_ID_SET</item>
<item>FWPM_NET_EVENT_FLAG_USER_ID_SET</item>
<item>FWPM_NET_EVENT_FLAG_IP_VERSION_SET</item>
<item>FWPM_NET_EVENT_FLAG_PACKAGE_ID_SET</item>
</flags>
<ipVersion>FWP_IP_VERSION_V4</ipVersion>
<ipProtocol>17</ipProtocol>
<localAddrV4>255.255.255.255</localAddrV4>
<remoteAddrV4>10.195.33.252</remoteAddrV4>
<localPort>21</localPort>
<remotePort>61706</remotePort>
<scopeId>0</scopeId>
<appId>
<data>5c00640065006d00330032005c0073007600630068006f00730074002e006500780065000000</data>
<asString>\.d.e.v.i.c.e.\.h.a.r.d.d.i.s.k.v.o.l.u.m.e.1.\.w.i.n.d.o.w.s.\.s.y.s.t.e.m.3.2.\.s.v.c.h.o.s.t...e.x.e...</asString>
</appId>
<userId>S-1-5-19</userId>
<addressFamily>FWP_AF_INET</addressFamily>
<packageSid>S-1-0-0</packageSid>
<enterpriseId/>
<policyFlags>0</policyFlags>
<effectiveName/>
</header>
<type>FWPM_NET_EVENT_TYPE_CLASSIFY_DROP</type>
<classifyDrop>
<filterId>66241</filterId>
<layerId>44</layerId>
<reauthReason>0</reauthReason>
<originalProfile>0</originalProfile>
<currentProfile>0</currentProfile>
<msFwpDirection>MS_FWP_DIRECTION_OUT</msFwpDirection>
<isLoopback>false</isLoopback>
<vSwitchId/>
<vSwitchSourcePort>0</vSwitchSourcePort>
<vSwitchDestinationPort>0</vSwitchDestinationPort>
</classifyDrop>
<internalFields>
<internalFlags numItems="1">
<item>FWPM_NET_EVENT_INTERNAL_FLAG_FILTER_ORIGIN_SET</item>
</internalFlags>
<capabilities/>
<fqbnVersion>0</fqbnVersion>
<fqbnName/>
<terminatingFiltersInfo numItems="3">
<item>
<filterId>66241</filterId>
<subLayer>FWPP_SUBLAYER_INTERNAL_FIREWALL_QUARANTINE</subLayer>
<actionType>FWP_ACTION_BLOCK</actionType>
</item>
<item>
<filterId>74045</filterId>
<subLayer>FWPP_SUBLAYER_INTERNAL_FIREWALL_WSH</subLayer>
<actionType>FWP_ACTION_BLOCK</actionType>
</item>
<item>
<filterId>73602</filterId>
<subLayer>FWPP_SUBLAYER_INTERNAL_FIREWALL_WF</subLayer>
<actionType>FWP_ACTION_BLOCK</actionType>
</item>
</terminatingFiltersInfo>
<filterOrigin>Quarantine Default</filterOrigin>
<interfaceIndex>5</interfaceIndex>
</internalFields>
</netEvent>
Sinon, si l’audit de l’échec de la connexion de la plateforme de filtrage est activé, l’événement drop est enregistré dans Windows observateur d'événements.
Pour activer les audits de connexion de plateforme de filtrage, exécutez la commande suivante dans une invite de commandes d’administration :
Auditpol /set /category:"System" /SubCategory:"Filtering Platform Connection" /success:enable /failure:enable
Exemple d’audit de suppression avec filterOrigin
comme Quarantine Default
.
Une fois que l’origine du filtre de la suppression a été identifiée comme le filtre de bloc entrant par défaut de mise en quarantaine, l’interface doit être examinée plus en détail. Pour trouver l’interface appropriée, utilisez la InterfaceIndex
valeur de l’audit netEvent
d’événement ou dans la commande PowerShell suivante pour générer plus d’informations sur l’interface :
Get-NetIPInterface -InterfaceIndex <Interface Index>
Get-NetIPInterface -InterfaceIndex 5
À l’aide du nom de l’interface, l’observateur d’événements peut être recherché pour toutes les modifications liées à l’interface.
Pour activer d’autres événements d’audit réseau, consultez Activer les événements d’audit IPsec et d’audit du Pare-feu Windows.
Les suppressions de paquets du filtre de bloc entrant par défaut de mise en quarantaine sont souvent temporaires et ne signifient rien de plus qu’une modification réseau sur l’interface.