04 septembre 2026Sécurité

Supply chain attacks : leçons de SolarWinds, MOVEit et XZ pour les PME suisses

Trois incidents majeurs ont démontré que les attaquants n'entrent plus par la porte principale — ils compromettent le fournisseur de logiciels ou de services en amont. Pour une PME romande de 50 endpoints, le vecteur n'est pas différent.

Par ZRS-Holding Sàrl·12 min de lecture·138 lectures
Partager

Le fournisseur de confiance comme vecteur d'attaque

En décembre 2020, SolarWinds distribue une mise à jour signée de son produit Orion contenant une backdoor — SUNBURST — active pendant neuf mois dans les environnements de 18 000 organisations mondiales. En juin 2023, une faille zero-day dans MOVEit Transfer (CVE-2023-34362, injection SQL) est exploitée par le groupe Cl0p avant même la publication du patch ; plus de 2 600 organisations sont touchées, dont plusieurs entités financières européennes. En mars 2024, une modification malveillante de la bibliothèque de compression XZ Utils (versions 5.6.0 et 5.6.1) intègre une backdoor SSH ciblant les distributions Linux systemd — introduite par un contributeur fictif ayant gagné la confiance du mainteneur sur deux ans.

Ces trois cas ne sont pas des anecdotes réservées aux grandes entreprises. Ils décrivent un modèle d'attaque applicable à n'importe quelle PME qui déploie un outil SaaS, installe un agent de monitoring, ou maintient un parc Linux. Le Centre national pour la cybersécurité (NCSC) suisse a classé les attaques sur la chaîne d'approvisionnement logicielle parmi les menaces prioritaires dans son rapport de situation 2023.

Anatomie des trois incidents

SolarWinds Orion : la mise à jour comme vecteur

SUNBURST était compilée dans la DLL SolarWinds.Orion.Core.BusinessLayer.dll, signée numériquement par SolarWinds. Le binaire dormait 12 à 14 jours après installation pour éviter les bacs à sable automatisés, puis établissait des connexions C2 via DNS vers avsvmcloud.com, camouflées dans le trafic légitime d'Orion. Résultat : les outils de détection basés sur la réputation d'éditeur ou la validité de signature étaient inopérants.

Pour une PME utilisant un outil de supervision ou un RMM (Remote Monitoring and Management) — catégorie de logiciels particulièrement exposée — le schéma est identique : l'agent dispose souvent de droits élevés, d'une exception antivirus, et communique vers l'extérieur par conception.

MOVEit Transfer : zéro-day sur un service exposé

CVE-2023-34362 permettait une injection SQL non authentifiée sur le endpoint HTTP/HTTPS de MOVEit Transfer (ports 80 et 443, chemin /guestaccess.aspx). Cl0p avait développé l'exploit avant divulgation et attendu une fenêtre d'exploitation coordonnée. Les données exfiltrées comprenaient noms, numéros de sécurité sociale, données de paie — exactement les catégories sensibles définies à l'art. 5 let. c de la nouvelle loi fédérale sur la protection des données (nLPD).

En Suisse, tout responsable du traitement qui utilise MOVEit (ou un équivalent) comme solution de transfert de fichiers entre clients et partenaires doit considérer : (1) ses obligations de notification au Préposé fédéral à la protection des données (PFPDT) en cas de violation susceptible d'entraîner un risque élevé pour les personnes concernées (art. 24 nLPD), et (2) la responsabilité contractuelle vis-à-vis de ses clients si des données confiées sont compromises.

XZ Utils : ingénierie sociale longue durée sur un projet open source

L'attaque XZ démontre une sophistication opérationnelle inédite : un acteur (Jia Tan) a contribué pendant deux ans à un projet critique de la chaîne Linux, gagnant les droits de commit, avant d'insérer un payload obfusqué dans le système de build autotools. La backdoor ciblait spécifiquement les binaires sshd liés à systemd sur Debian et Fedora — distributions courantes dans les serveurs d'infrastructure de PME. La détection par Andres Freund (ingénieur Microsoft) était fortuite : une latence inexpliquée de 500 ms sur les connexions SSH.

Ce vecteur expose un angle mort structurel : les composants open source des images de base de conteneurs, des pipelines CI/CD, ou des appliances virtuelles ne bénéficient d'aucune validation de sécurité systématique dans la plupart des PME.

Implications légales sous le cadre suisse

nLPD : obligations du responsable du traitement

Depuis le 01.09.2023, la nLPD impose au responsable du traitement de mettre en œuvre des mesures techniques et organisationnelles appropriées (art. 8 nLPD). L'art. 24 nLPD exige la notification au PFPDT dans les meilleurs délais si une violation de sécurité est susceptible d'entraîner un risque élevé pour les droits fondamentaux. Le délai n'est pas fixé statutairement à 72 heures comme sous le RGPD européen, mais la pratique du PFPDT attend une notification rapide — généralement sous 72 heures pour les risques élevés confirmés.

Dans un incident supply chain, le responsable du traitement reste responsable même si la faille est chez son sous-traitant (éditeur de logiciel, fournisseur SaaS). L'art. 9 nLPD impose un contrat de sous-traitance garantissant un niveau de protection équivalent. Concrètement, si votre fiduciaire utilise un logiciel de paie hébergé par un éditeur tiers qui subit un MOVEit-like, c'est le responsable du traitement — la fiduciaire — qui notifie.

Secteur financier : obligations FINMA supplémentaires

Les établissements soumis à la FINMA (banques, gestionnaires de fortune, assurances) ont des obligations de reporting cyber distinctes via la Circulaire 2023/1 sur les risques opérationnels. Un incident supply chain touchant un prestataire IT externe doit être déclaré si l'impact dépasse les seuils définis. Ces obligations s'ajoutent à celles de la nLPD.

Registre des activités de traitement et cartographie des dépendances

L'art. 12 nLPD oblige les entreprises de plus de 250 employés à tenir un registre des activités de traitement — mais pour les PME en dessous de ce seuil, la recommandation du PFPDT reste de le maintenir si les traitements présentent un risque élevé. Or un outil de transfert de fichiers contenant des données RH ou financières entre dans cette catégorie. Ce registre est aussi le point de départ pour inventorier les dépendances logicielles critiques.

Architecture défensive contre les attaques supply chain

Inventaire et SBOM

Un Software Bill of Materials (SBOM) — au format SPDX ou CycloneDX — liste les composants d'un logiciel et leurs versions. Le NIST Cybersecurity Framework (CSF 2.0, fonction Identify, catégorie ID.AM) considère l'inventaire des actifs logiciels comme un prérequis. Pour une PME de 50 endpoints, l'enjeu pratique est d'exiger le SBOM des éditeurs critiques (outils RH, ERP, RMM) et de surveiller les CVE sur ces composants via des flux automatisés (NVD, OSV.dev).

Vérification d'intégrité et politique de mise à jour

Les hash SHA-256 publiés par les éditeurs pour leurs installateurs doivent être vérifiés avant déploiement. Pour les packages Linux, GPG keyring et vérification de signature (gpg --verify) sont non-négociables sur les serveurs d'infrastructure. La politique de mise à jour ne doit pas être binaire (« tout déployer immédiatement » vs « attendre »). Une fenêtre de 48 à 72 heures sur un canal de test pour les patchs non-urgents, et déploiement en moins de 24 heures pour les CVE CVSS ≥ 9.0 activement exploitées.

Principe de moindre privilège pour les agents tiers

Chaque agent de monitoring, RMM, ou outil de sauvegarde doit tourner avec le compte de service le moins privilégié possible. Sur Windows, cela signifie : pas de compte administrateur local, pas de droits Domain Admin, API token révocable distinct par endpoint. Sur macOS (Apple Silicon), les profils MDM doivent restreindre les extensions noyau non signées. Un agent compromis avec des droits SYSTEM peut pivoter vers l'ensemble du parc en minutes — c'est exactement ce que SolarWinds permettait.

Segmentation réseau et monitoring des flux sortants

Le C2 SUNBURST passait par DNS. Un pare-feu qui autorise tout le trafic sortant vers Internet pour les serveurs de supervision ne détecte rien. La mise en place d'un DNS resolver interne avec logging, combinée à une politique de proxy HTTP(S) avec inspection TLS pour les postes, permet de détecter des requêtes vers des domaines DGA ou des endpoints C2 inhabituels. Les CIS Benchmarks pour Windows Server 2022 et Ubuntu 22.04 incluent des recommandations explicites sur le filtering DNS et la restriction des connexions sortantes des services système.

Réponse à incident supply chain : procédure structurée

La gestion d'un incident supply chain diffère d'une intrusion classique : l'éditeur est simultanément source d'information et partie prenante. La procédure suivante s'applique dès la détection ou publication d'une CVE exploitée sur un composant utilisé.

  1. Alerte initiale (H+0) — DSI/RSSI : Identifier si la version vulnérable est présente dans le parc (via inventaire CMDB ou requête MDM). Pour MOVEit : SELECT * FROM installed_software WHERE name LIKE 'MOVEit%' via WMI ou équivalent.
  2. Isolation préventive (H+1) — DSI : Couper l'accès réseau externe au service affecté (ACL pare-feu, désactivation du VIP de load balancer) sans éteindre les systèmes pour préserver les logs.
  3. Collecte de preuves (H+2) — RSSI/SOC : Exporter les logs d'accès (IIS, nginx, syslog) des 30 derniers jours. Pour XZ-like : vérifier les hash des binaires système (sha256sum /usr/bin/xz) contre les valeurs publiées par le mainteneur.
  4. Qualification de l'incident (H+4) — RSSI + juriste : Déterminer si des données personnelles ont été accessibles ou exfiltrées. Si oui, activer le processus nLPD art. 24.
  5. Signalement NCSC (H+8) — DSI ou RSSI : Signaler l'incident via le formulaire de signalement du NCSC. Ce signalement est volontaire pour les entreprises privées non-critiques, mais recommandé pour bénéficier d'un retour d'analyse.
  6. Notification PFPDT si applicable (≤72h) — Juriste + RSSI : Rédiger la notification selon le formulaire du PFPDT : nature de la violation, catégories de données, nombre de personnes concernées (estimé acceptable), mesures prises.
  7. Patch ou mitigation (H+24) — DSI : Appliquer le patch éditeur ou la mitigation temporaire (WAF rule, désactivation du composant) sur tous les endpoints concernés. Vérifier les IOC publiés (hashes, IPs, domaines C2) dans les logs rétrospectivement.
  8. Post-mortem (J+7) — Toutes parties : Documenter la chronologie, les écarts au processus, et les mesures correctives. Mettre à jour le registre des activités de traitement et les contrats sous-traitants si nécessaire.

Cas pratique : fiduciaire vaudoise de 35 employés, 55 endpoints

Contexte : Fiduciaire basée à Lausanne, 35 collaborateurs, parc mixte Windows 11 (45 postes) et macOS 14 (10 postes). Utilisation d'un logiciel de paie SaaS (hébergé chez un éditeur européen) et d'un outil de transfert de fichiers pour l'échange de déclarations fiscales avec les clients — solution comparable à MOVEit dans son architecture.

Scénario : Le 15.05.2024, l'éditeur de la solution de transfert publie un bulletin de sécurité critique (CVSS 9.8, injection SQL non authentifiée). La fiduciaire n'a pas d'inventaire SBOM ni de processus de veille CVE formalisé. Le DSI apprend l'existence du bulletin via un email d'alerte de l'éditeur — reçu à 14h00.

Évaluation de l'exposition : La solution est hébergée on-premise sur un serveur Windows Server 2022 exposé sur le port 443. Les logs IIS montrent 12 requêtes suspectes vers /guestaccess.aspx entre le 10.05.2024 et le 14.05.2024 — soit 5 jours avant le bulletin public, cohérent avec un schéma d'exploitation pre-patch. Les requêtes proviennent de trois IPs distinctes géolocalisées hors Suisse.

Données potentiellement exposées : 847 dossiers clients actifs, incluant bulletins de salaire, numéros AVS, et correspondance fiscale — catégories sensibles au sens de la nLPD. Estimation du nombre de personnes physiques concernées : environ 2 100 (employés des sociétés clientes dont les données de paie transitent par la plateforme).

Coût de l'incident (estimation) :

  • Forensique externe (8h à CHF 250/h) : CHF 2 000
  • Communication juridique aux clients affectés (modèle de lettre, conseil externe) : CHF 1 500
  • Remplacement de la solution par un équivalent plus récent : CHF 4 800 (licence annuelle SaaS)
  • Heures internes DSI/RSSI externalisé (20h) : CHF 3 000
  • Total direct : environ CHF 11 300, hors impact réputationnel

Mesures correctives déployées : Désactivation du service à H+2, patch appliqué à H+18 après validation sur environnement de test, mise en place d'une règle WAF bloquant les requêtes sans session authentifiée sur le endpoint incriminé. Notification envoyée au PFPDT à H+68. Contrat de sous-traitance mis à jour pour exiger un délai de notification de l'éditeur ≤4h en cas de CVE critique.

Leçon principale : Un abonnement à un flux CVE (NVD ou CERT.ch) configuré avec un filtre sur les produits du parc aurait permis une détection 5 jours plus tôt — avant les premières tentatives d'exploitation visibles dans les logs. Coût de la veille automatisée : moins de 2 heures de configuration initiale.

Récapitulatif opérationnel

  • Inventorier les composants tiers critiques : agents RMM, outils de transfert, bibliothèques open source embarquées dans les applicatifs métier. Exiger un SBOM des éditeurs à chaque renouvellement de contrat.
  • Mettre en place une veille CVE automatisée : flux NVD ou CERT.ch, filtré sur le périmètre réel. Définir des seuils d'alerte : CVSS ≥ 7.0 → notification DSI, CVSS ≥ 9.0 → action sous 24h.
  • Appliquer le moindre privilège aux agents tiers : comptes de service dédiés, droits limités au strict nécessaire, tokens d'API révocables par endpoint.
  • Vérifier l'intégrité des mises à jour : hash SHA-256 sur les installateurs Windows/macOS, vérification GPG sur les packages Linux d'infrastructure.
  • Activer le logging des flux DNS sortants sur les serveurs d'infrastructure. Corréler les anomalies (nouveaux domaines, requêtes à haute fréquence) avec les alertes de sécurité éditeur.
  • Segmenter l'accès réseau des services exposés : un outil de transfert de fichiers n'a pas besoin d'accéder aux contrôleurs de domaine. ACL strictes par service, vérifiées trimestriellement.
  • Maintenir un processus de réponse à incident documenté incluant les contacts éditeur, le responsable juridique, et la procédure de notification PFPDT. Tester le processus une fois par an (tabletop exercise de 2h).
  • Revoir les contrats sous-traitants pour y inclure : délai de notification en cas d'incident, obligation de fourniture de logs sur demande, droit d'audit annuel.
  • Pour les nouveaux composants open source : vérifier l'historique des contributeurs, la gouvernance du projet, et la présence de tests de sécurité automatisés (CI/CD avec SAST) avant intégration en production.
  • Ne pas exclure les endpoints mobiles : les applications iOS/Android d'accès aux outils métier sont aussi des composants de la supply chain logicielle.

SynGuard accompagne les PME romandes dans la mise en place d'une gestion d'endpoints cohérente avec ces exigences, sans que la sécurité supply chain soit traitée comme un problème réservé aux grandes entreprises.

Sources

Noter cet article

Pas encore de note