Couches ALE

L’Application Layer Enforcement (ALE) se compose de plusieurs couches de filtrage et de nombreuses couches d’abandon correspondantes. Toutes les couches de moteur de filtrage de la plateforme de filtrage Windows (PAM), y compris ALE, sont décrites dans Identificateurs de couche de filtrage. Cette rubrique contient une description plus détaillée des couches de filtrage qui font partie d’ALE.

RESOURCE_ASSIGNMENT

Un filtre au niveau de la couche FWPM_LAYER_ALE_RESOURCE_ASSIGNMENT_V{4|6} est mis en correspondance pour les opérations de liaison réseau, explicites ou implicites.

Si un filtre au niveau de cette couche est mis en correspondance pour autoriser la création de sockets bruts, l’indicateur FWP_CONDITION_FLAG_IS_RAW_ENDPOINT est défini.

Si un filtre au niveau de cette couche est mis en correspondance pour autoriser la réception en mode promiscuous, le champ FWP_CONDITION_ALE_PROMISCUOUS_MODE est défini sur SIO_RCVALL. Pour obtenir une description de SIO_RCVALL, consultez WSAIoctl.

Notes

Il s’agit de la seule couche où le mode promiscueux peut être filtré.

 

Si aucun port n’est spécifié pendant bind(), c’est-à-dire que port est défini sur 0 (zéro), la pile TCP/IP sélectionne un port dans la plage de ports dynamique (19152-65535). Le port sélectionné sera classé au niveau de cette couche avec l’indicateur FWP_CONDITION_FLAG_IS_WILDCARD_BIND .

Si l’adresse locale n’est pas spécifiée dans l’appel bind(), le champ d’adresse locale est défini sur FWP_EMPTY.

AUTH_LISTEN

Un filtre au niveau de la couche FWPM_LAYER_ALE_AUTH_LISTEN_V{4|6} est mis en correspondance pour les appels TCP listen().

AUTH_RECV_ACCEPT

Un filtre au niveau de la couche FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V{4|6} est mis en correspondance pour les appels TCP accept(), pour les premiers paquets UDP (unidiffusion) à partir d’un tuple d’adresse/port distant unique, et pour les premiers messages ICMP sans erreur (unidiffusion) entrants avec un type ICMP, un code et un ID uniques.

Notes

Les protocoles qui ne sont pas TCP ou ICMP sont traités comme UDP.

 

Les paquets TCP reçus par les sockets bruts sont gérés de la même manière que le trafic UDP. Autrement dit, seuls le premier tcp send() et le premier tcp recv() sur les sockets bruts seront filtrés.

AUTH_CONNECT

Un filtre au niveau de la couche FWPM_LAYER_ALE_AUTH_CONNECT_V{4|6} est mis en correspondance pour les appels TCP connect(), pour les premiers paquets UDP envoyés à une adresse distante unique et un tuple de port, et pour les premiers messages ICMP sortants sans erreur avec un type ICMP, un code et un ID uniques.

Notes

Les protocoles qui ne sont pas TCP ou ICMP sont traités comme UDP.

 

Les paquets TCP envoyés par des sockets bruts sont gérés de la même manière que le trafic UDP. Autrement dit, seuls le premier tcp send() et le premier tcp recv() sur les sockets bruts seront filtrés.

FLOW_ESTABLISHED

Un filtre au niveau de la couche FWPM_LAYER_ALE_FLOW_ESTABLISHED_V{4|6} est mis en correspondance une fois qu’une négociation TCP à trois voies s’est terminée avec succès. Pour le trafic non TCP, le filtre est mis en correspondance immédiatement après que les filtres des couches AUTH_RECV_ACCEPT ou AUTH_CONNECT ont été mis en correspondance.

Un filtre au niveau de cette couche ne doit pas renvoyer Block ou Permit.

Cette couche est utilisée par les pilotes de légende pour suivre l’état de la connexion, décrit en détail dans la documentation du Kit de pilotes Windows .

RESOURCE_RELEASE

Un filtre au niveau de la couche FWPM_LAYER_ALE_RESOURCE_RELEASE_V{4|6} est mis en correspondance une fois que les ressources qui ont été allouées via RESOURCE_ASSIGNMENT ont été libérées.

ENDPOINT_CLOSURE

Un filtre au niveau de la couche FWPM_LAYER_ALE_ENDPOINT_CLOSURE_V{4|6} est mis en correspondance lorsqu’un flux TCP connecté ou un point de terminaison de sockets UDP est fermé.

CONNECT_REDIRECT

Un filtre au niveau de la couche FWPM_LAYER_ALE_CONNECT_REDIRECT_V{4|6} permet de modifier les adresses et les ports distants. La connexion sortante sera redirigée pendant la durée de cette connexion.

BIND_REDIRECT

Un filtre au niveau de la couche FWPM_LAYER_ALE_BIND_REDIRECT_V{4|6} permet de modifier l’adresse et les ports locaux du socket sous-jacent. Le socket local sera redirigé pour la durée de vie du socket

Couches ALE DISCARD

Pour chacune des couches ALE décrites ci-dessus, le moteur de filtrage contient une couche d’abandon correspondante. Les couches d’abandon ALE sont utilisées par les légendes à des fins de journalisation. Les paquets et les indications qui ont été ignorés au niveau de l’une des couches de filtrage ALE sont indiqués à la couche d’abandon ALE correspondante.

Application Layer Enforcement (ALE)

Filtrage avec état ALE

Trafic de multidiffusion/diffusion ALE

Réautorisation ALE

Personnalisation du flux ALE

Flux de paquets TCP

Flux de paquets UDP

Fonctions Winsock

Indicateurs de condition de filtrage

Conditions de filtrage disponibles à chaque couche de filtrage