TroutTrout
Back to Glossary
Filtrage de protocoleDeep packet inspectionProtocoles ICS

Filtrage de protocole (OT)

4 min read

Le filtrage de protocole est l'inspection et la mise en application sélective du trafic de protocole industriel au niveau des commandes. Un proxy de filtrage de protocole comprend le protocole applicatif, pas seulement les ports TCP, et applique des règles d'autorisation ou de refus à des codes de fonction, des plages de registres et des opérations sur objets précis. C'est la différence entre « cet appareil peut parler sur le port 502 » et « cet appareil peut lire mais pas écrire ».

Pourquoi le filtrage au niveau des ports ne suffit-il pas en OT ?

Un pare-feu traditionnel filtre par le 5-tuple : IP source, IP destination, port source, port destination et protocole. Cela fonctionne pour HTTPS et SSH. Cela s'effondre pour les protocoles industriels, où la différence entre une lecture inoffensive et une écriture dangereuse tient à un seul octet de code de fonction dans la charge utile.

Une session Modbus TCP sur le port 502 peut porter le code de fonction 03 (lire des registres de maintien) ou le code de fonction 06 (écrire un seul registre) dans la même structure de paquet. Un pare-feu de port ne peut pas les distinguer. L'outil de diagnostic d'un ingénieur et un attaquant modifiant la consigne d'une vanne sont identiques au niveau du port. Le filtrage de protocole lit la charge utile, identifie le code de fonction et applique une politique : autoriser les lectures depuis l'historian SCADA, refuser les écritures de tout sauf du poste d'ingénierie approuvé pendant la fenêtre de changement approuvée.

Quels protocoles industriels sont filtrés ?

  • Modbus TCP (port 502) : les codes de fonction 01 à 06 couvrent les lectures et écritures ; les codes 08, 16 et 23 sont fréquemment restreints.
  • DNP3 (port 20000) : les opérations Control Relay Output Block et Analog Output Block sont typiquement en deny-by-default.
  • EtherNet/IP (ports 44818 et 2222) : les services CIP Set Attribute Single et Set Attribute All sont restreints.
  • Profinet (port 34962 et au-dessus) : l'échange d'E/S cyclique séparé des écritures de configuration acycliques.
  • OPC UA (port 4840) : Write Service et Call Service gérés à la granularité de l'attribut.
  • BACnet (port 47808) : WriteProperty et WritePropertyMultiple dans l'automatisation du bâtiment.

Qu'apporte un proxy de filtrage de protocole qu'un pare-feu ne peut pas ?

Trois choses qu'un pare-feu au niveau des ports n'a aucun moyen d'exprimer :

  1. Audit au niveau des commandes. Chaque requête et réponse est journalisée avec son code de fonction et ses paramètres, pas seulement les octets transférés.
  2. Application de rôle par session. Un compte opérateur en lecture seule atteint un appareil par exactement le même port qu'un ingénieur, mais seules les écritures de l'ingénieur sont permises.
  3. Détection d'anomalies consciente du protocole. Une soudaine rafale d'opérations d'écriture en dehors de la fenêtre de contrôle des changements devient un événement détectable au lieu d'un trafic ordinaire.

En quoi le filtrage de protocole diffère-t-il de la deep packet inspection ?

La deep packet inspection (DPI) est la technique générale de lecture des charges utiles de paquets. Le filtrage de protocole est de la DPI appliquée avec la sémantique des protocoles industriels et une politique de mise en application attachée. Un moteur DPI générique pourrait reconnaître que le trafic est du Modbus. Un filtre de protocole sait que le code de fonction 06 est une écriture, qu'il vise le registre 40001, que la source n'est pas le poste d'ingénierie sanctionné, et que la politique dit de bloquer. L'intelligence réside dans les règles propres à l'OT, pas dans la seule lecture des paquets.

Comment l'Access Gate aide

L'Access Gate filtre Modbus, DNP3, EtherNet/IP, Profinet et OPC UA au niveau des commandes, en imposant des politiques par session fondées sur les rôles que les pare-feux de port ne peuvent pas exprimer, et en transmettant chaque événement au niveau des commandes à votre SIEM. Voir Securing Modbus pour un exemple concret.

Concepts associés