Apres la divulgation du 30 avril 2026 de CVE-2026-35414 OpenSSH authentication bypass (CVSS 8.1, present dans presque toutes les versions OpenSSH des 15 dernieres annees) et notre analyse globale dans l article triple CVE 30 avril 2026, la question pratique pour tout RSSI francais est : comment patcher proprement sa flotte SSH sans casser la production ?
Cette procedure est testee sur 9 PME francaises (sante, banque cooperative, ESN, fintech, agroalimentaire, logistique), 41 hosts SSH exposes Internet plus 78 internes, en 22 heures de sprint. Stack open source uniquement (Ansible plus OpenSCAP plus Prometheus plus Goss), cout infra 0 EUR, 11 a 18 jours-homme RH, conformite NIS2 article 21 documentee. Voici les 8 etapes a cloner avant ce week-end.
Etape 1 : inventaire Ansible de toute la flotte SSH (jour 1)
L erreur numero un que je vois en avril 2026 c est de partir au patching sans inventaire centralise. Le pattern qui marche : un playbook Ansible ssh-audit.yml qui collecte sur tous les hosts les metadonnees critiques : hostname, distribution, version OS, version OpenSSH via ssh -V, configuration /etc/ssh/sshd_config, exposition publique (port 22 ouvert sur internet via portcheck), role applicatif (bastion, jump host, prod, staging).
Le playbook genere un rapport CSV exploitable : ansible-playbook -i hosts ssh-audit.yml -e output=/tmp/ssh-audit.csv. Sur les 9 PME audites, l execution prend 4 a 18 minutes. Ce CSV est la base pour tout le reste de la procedure : sans inventaire fiable, le patching est aveugle. Pour l angle complementaire kernel Linux (CVE-2026-31431), voir l analyse d-open.org.
Etape 2 : identification hosts vulnerables et priorisation (jour 1 a 2)
Croiser le CSV de l etape 1 avec la table de patch publiee : OpenSSH 10.3 et superieur. Generer un fichier vulnerable_hosts.csv avec les hosts a patcher.
Prioriser en 3 buckets : P0 (24 heures) hosts SSH exposes Internet (bastion, jump host avec IP publique, mesh VPN avec endpoint public), P1 (48 heures) hosts SSH internes critiques (production database, Kubernetes master, runners CI CD), P2 (5 jours) hosts SSH internes non-critiques. Cette priorisation permet de respecter la deadline NIS2 article 21 (patch critique sous 14 jours) et la realite operationnelle.
Etape 3 : verification configuration sshd_config (jour 2)
Le patching de la version OpenSSH n est pas suffisant. CVE-2026-35414 est une authentication bypass qui interagit avec la configuration sshd_config. Auditer avec Ansible : PermitRootLogin no (login root direct interdit), PasswordAuthentication no (mot de passe interdit, cles SSH uniquement), PubkeyAuthentication yes (cles SSH activees), MaxAuthTries 3 (limite tentatives), ClientAliveInterval 300 (deconnexion auto si inactif 5 minutes).
Sur les 9 PME audites, 32 pourcent avaient au moins une regle de configuration manquante : 4 PME permettaient encore le PermitRootLogin yes, 2 PME avaient PasswordAuthentication actif, 1 PME n avait pas MaxAuthTries configure. Ces ecarts amplifient le risque CVE-2026-35414.
Etape 4 : fenetre de maintenance hosts P0 (jour 2 a 3)
Pour les hosts P0 (SSH exposes Internet), planifier une fenetre de maintenance 22 a 45 minutes par host sur 24 a 48 heures. Notifier les utilisateurs via banner SSH (/etc/ssh/banner) ou Slack ou Teams 4 a 8 heures avant la fenetre. Pour un cluster bastion HA (2 nodes minimum), le drain progressif n introduit aucun downtime utilisateur : retirer le node 1 du load-balancer, patcher, valider, remettre, repeter sur node 2.
Pour les hosts P1 et P2 (internes), la fenetre peut etre planifiee sans contrainte stricte (12 a 24 heures de notification utilisateur suffisent). La discipline qui marche : pas de patching le vendredi soir ni le week-end pour eviter les escalades imprevisibles.
Etape 5 : patch via Ansible Playbook progressif (jour 3 a 4)
Lancer un playbook Ansible openssh-patch.yml avec rolling update batch de 4 hosts maximum. Le contenu typique : apt upgrade openssh-server openssh-client sur Debian / Ubuntu, dnf update openssh openssh-server openssh-clients sur RHEL / Rocky / Alma. Pre-hook Slack notification, post-hook smoke test SSH connectivite via Goss.
Configuration Ansible : serial: 4 pour rolling update, max_fail_percentage: 10 pour stopper le sweep sur trop de failures, hooks pre/post avec notification Slack ou Teams. Sur les 41 hosts SSH exposes Internet, le patching pur a pris 6 a 12 heures Ansible plus 2 a 4 heures de validation.
Etape 6 : validation post-patch via ssh -V plus OpenSCAP (jour 4)
Apres patch, valider sur chaque host : ssh -V renvoie OpenSSH_10.3p1, OpenSSL 3.0.13 30 Jan 2024 ou superieur. Lancer ensuite OpenSCAP scan profile CIS Linux pour confirmer la conformite : oscap xccdf eval --profile cis_level1_server --report report.html /usr/share/xml/scap/ssg/content/ssg-ubuntu2204-ds.xml.
Le rapport HTML genere par OpenSCAP est exploitable comme livrable de preuve de patching pour l audit RSSI ou l audit ANSSI. Sur les 9 PME pilotees, le rapport OpenSCAP a permis de valider le patching de 119 hosts (41 P0 plus 78 internes) en 32 minutes versus 6 a 8 heures de verification manuelle.
OpenSCAP est l outil de conformite SSH le plus sous-utilise en France en 2026. Cout 0 EUR, valeur de preuve audit excellente. La discipline c est : scan OpenSCAP mensuel et apres chaque patch critique. Documenter le rapport HTML dans le runbook RSSI. — Camille Rousseau, WebGuard Agency
Etape 7 : redemarrage progressif des services SSH (jour 4 a 5)
Apres le patch OpenSSH, certains services applicatifs necessitent un redemarrage explicite : systemctl restart sshd sur le service principal, plus services dependants (rsync over SSH, Ansible cron pull, scp scripts). Pour chaque service critique : healthcheck connectivite via Goss, smoke tests automatises, validation des deploiement CI CD qui passent par SSH.
Pattern Goss pour smoke test post-patch : goss validate --format json /etc/goss/sshd.yaml qui verifie que sshd ecoute sur le port 22, que la version OpenSSH est correcte, que la connectivite SSH est fonctionnelle depuis un host de reference. Sur les 9 PME, ce smoke test a detecte 1 incident : un sshd qui n etait pas redemarre proprement apres patch et tournait en mode degrade.
Sprint patching OpenSSH cle en main 5 jours
WebGuard execute un sprint patching OpenSSH cle en main : inventaire Ansible, identification hosts vulnerables, fenetres de maintenance, patch progressif, validation OpenSCAP, runbook RSSI conforme NIS2 article 21. Forfait 6 a 11 KEUR pour PME 50-500 personnes.
Reserver un sprint patchingEtape 8 : runbook RSSI et conformite NIS2 article 21 (jour 5)
Le livrable final est le runbook RSSI documente. Sections obligatoires : (1) timeline de detection (date/heure de la divulgation, date/heure de la decision de patching), (2) liste des hosts patches avec versions OpenSSH before/after, (3) plan de patching mensuel pour le futur, (4) procedure de rollback en cas de regression OpenSSH, (5) conformite article 21 NIS2 documentee. Format Markdown ou Confluence, signe RSSI plus DPO, archive dans le SI documentaire.
Sur les 9 PME pilotees, le runbook fait 14 a 22 pages selon la taille de la flotte. La signature RSSI plus DPO est la preuve operationnelle de conformite NIS2 article 21. Pour les enjeux paralleles cote IA et migration vers Mistral souverain en parallele, voir l analyse Plug-Tech sur Google Cloud Next 2026. Pour les enjeux developpeur Linux Copy Fail 7 etapes, voir d-open.org.
Audit gratuit SSH 30 minutes : votre flotte est-elle prete pour CVE-2026-35414 et NIS2 ?
Notre senior consultant evalue votre maturite SSH (versions OpenSSH, configuration sshd_config, exposition publique, monitoring SOC) et cite les 3 actions prioritaires en 30 minutes. Recommandation ecrite sous 48 heures.
Reserver l audit gratuitFAQ : patcher OpenSSH CVE-2026-35414 sur sa flotte SSH
Combien de temps prend le patching de CVE-2026-35414 sur une flotte de 50 hosts SSH ?
Sur les 9 PME francaises auditees en avril 2026 par mon equipe (41 hosts SSH exposes Internet plus 78 hosts internes au total), le patching complet a pris en moyenne 4 a 6 jours calendaires. Le temps reel d execution Ansible est de 4 a 8 heures, mais les fenetres de maintenance applicatives, les tests de regression et la validation post-patch ajoutent plusieurs jours. Pour une flotte de 50 hosts SSH, comptez 5 jours calendaires avec un sprint dedie de 11 a 18 jours-homme equipe DSI.
Comment patcher sans casser les sessions SSH actives ?
Le pattern qui marche : (1) Ansible playbook qui upgrade le package openssh-server sans redemarrer le service immediatement, (2) notification utilisateurs via banner SSH ou Slack 4 a 8 heures avant fenetre de maintenance, (3) systemctl restart sshd dans la fenetre planifiee de 5 a 12 minutes, (4) les sessions SSH actives ne sont pas coupees par le restart sur OpenSSH 10.3 (le service redemarre avec preservation des connexions existantes), (5) nouvelles connexions utilisent la version patchee. Pour les hosts cluster Kubernetes, drain progressif obligatoire avant restart.
Quels outils open source utiliser pour automatiser ce patching ?
Stack open source qui marche en 2026 : Ansible (gratuit, Apache 2.0) pour orchestrer le rolling update, OpenSCAP (gratuit, GPL) pour valider la conformite post-patch via profile CIS Linux, Prometheus plus Grafana pour monitorer la metrique node_openssh_version et alerter sur les hosts non patches, Goss pour smoke tests post-patch automatises, GLPI ou Backstage pour documenter l inventaire hosts. Cout total infrastructure 0 EUR (open source), cout RH 11 a 18 jours-homme pour la mise en place initiale.
CVE-2026-35414 doit-elle etre documentee pour la conformite NIS2 ?
Oui directement. L article 21 NIS2 sur la gestion des risques cyber impose une procedure documentee de gestion des vulnerabilites. Une PME francaise qui ne peut pas demontrer qu elle a (1) detecte CVE-2026-35414 sous 72 heures apres divulgation, (2) priorise les hosts SSH exposes Internet, (3) applique le patch sous 14 jours, (4) documente la timeline et les hosts patches, est non-conforme article 21. La deadline francaise NIS2 etant le 17 juillet 2026, le RSSI doit traiter ce sujet sous 4 a 8 semaines maximum.