Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Protocole S7comm (Siemens S7 Communication)

ot

Définition

S7comm est un protocole de communication propriétaire développé par Siemens pour la communication entre les automates programmables de la gamme SIMATIC S7 (S7-300, S7-400, S7-1200, S7-1500), les Engineering Workstations (TIA Portal, STEP 7), et d'autres équipements Siemens. S7comm fonctionne sur TCP/IP et utilise le port 102 via le protocole ISO-TSAP (Transport Service Access Point). Sa compréhension est centrale pour la sécurité des environnements OT intégrant des équipements Siemens, qui sont parmi les plus répandus dans le monde (présents dans tous les secteurs industriels). Le protocole S7comm permet plusieurs types d'opérations : lecture et écriture de variables (entrées/sorties numériques et analogiques, mémentos, blocs de données), téléchargement et chargement de programmes (blocs de code OB/FB/FC, blocs de données DB, blocs système SDB), mise à jour du firmware des automates, contrôle du mode opérationnel (démarrage, arrêt, remise à zéro), et lecture des diagnostics système. Les implications de sécurité de S7comm sont importantes : le protocole S7comm original (utilisé sur les S7-300/400) n'implémente aucun mécanisme d'authentification - toute station réseau capable d'initier une connexion TCP vers le port 102 d'un S7 peut envoyer des commandes de lecture/écriture et même télécharger des programmes. Cette absence d'authentification a été exploitée par Stuxnet (qui interceptait les communications TIA Portal/S7 pour injecter son code malveillant) et est potentiellement exploitable par tout attaquant ayant un accès réseau au S7. Siemens a amélioré la sécurité avec S7commPlus (protocole utilisé pour les S7-1200 v4+ et S7-1500) qui intègre un mécanisme d'authentification par challenge-réponse et un chiffrement de certaines communications, mais ce protocole a également fait l'objet de recherches qui ont identifié des vulnérabilités dans ses mécanismes de sécurité.

Fonctionnement du protocole S7comm

Une session de communication S7comm entre TIA Portal et un S7-1500 se déroule ainsi : (1) Établissement de la connexion TCP au port 102 du S7, (2) Négociation ISO-TSAP (échange de paramètres de connexion TSAP incluant les identifiants de rack et slot du S7 cible), (3) Setup de la session S7comm : échange de PDU (Protocol Data Units) de type "Setup Communication" définissant la taille maximale des PDU et le nombre de PDU parallel, (4) Opérations : envoi de PDU "Read Var" ou "Write Var" pour accéder aux variables du S7, "Upload/Download" pour les blocs de programme, "Control PLC" pour les commandes de mode opératoire, (5) Fermeture de session. Les outils de monitoring OT (Dragos, Claroty, Nozomi) décodent nativement S7comm et S7commPlus et alertent sur les opérations sensibles (downloads de programme, modifications de mode opérationnel).

Contexte OT/ICS et outils d'exploitation S7comm

Des outils de test de pénétration OT publics permettent d'interagir avec les S7 via S7comm : le module Metasploit "siemens_s7_300400_password_dump" peut lire les données d'un S7-300/400, et l'outil PLCScan (open source) peut scanner et identifier les S7 sur un réseau et lire leurs informations système. Ces outils légitimes de test peuvent être utilisés par des attaquants pour réaliser la phase de reconnaissance et d'accès dans les environnements Siemens. Snap7 est une bibliothèque open source multi-plateforme pour communiquer avec les S7 via S7comm, utilisée par de nombreuses applications industrielles tierces mais aussi potentiellement par des malwares.

Sécurité et mitigation

Protection des automates Siemens S7 : restreindre le port 102 (S7comm) aux seules adresses IP des Engineering Workstations autorisées via les firewalls industriels (l'accès S7comm depuis le réseau IT ou depuis Internet doit être bloqué), activer les fonctions de sécurité intégrées des S7-1500 (mot de passe d'accès, protection des blocs, activation du niveau de sécurité accès "full access protection"), surveiller les connexions S7comm via les sondes de monitoring OT pour détecter les accès depuis des sources non autorisées ou les opérations inhabituelles (downloads de programme hors fenêtres de maintenance), et migrer les S7-300/400 vers les S7-1500 lors des renouvellements d'équipements pour bénéficier des améliorations de sécurité S7commPlus.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis