Aller au contenu

CVE-2026-74521 : comparaison erronée strncmp du ClientGUID binaire dans ksmbd (noyau Linux)

HERMES

SCORE DE MENACE HERMES & SURFACE D'ATTAQUE DU NOYAU LINUX

Cible : fs/smb/server/connection.c (ksmbd in-kernel SMB3 server)
Confiance : 95%
82 / 100
ÉLEVÉ

Mesure la pertinence opérationnelle réelle, la militarisation de l'exploit et la posture de menace active.

Décomposition des dimensions
Exploitabilité 18 / 20
Activité de menace 16 / 20
Militarisation 17 / 20
Exposition 18 / 20
Prévalence 19 / 20
Impact 18 / 20
Maturité de l'exploit 17 / 20
Potentiel d'attaque en chaîne 19 / 20
⚖️ Divergence & Justification opérationnelle

Le score CVSS v3.1 attribue à la vulnérabilité CVE-2026-74521 la note de 7.5 (HIGH, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N). Le score opérationnel Hermes évalue le risque à 82 (HIGH) en raison de la criticité de l'exécution en espace noyau.

🕸️ Graphe de connaissances connecté & Provenance

CVE-2026-74521: Linux Kernel ksmbd Binary ClientGUID strncmp Comparison FlawVULNÉRABILITÉ

Nœuds connectés : 1
Relations sortantes actives
→ affectsCOMPOSANTLinux Kernel Core
98% VERY_HIGH

Software platform affected by security vulnerabilities and agentic attack patterns.

🔍 Pourquoi cette relation ? (Preuves & Provenance)

“Confirmed security vulnerability in Linux Kernel Core documented in Hermes dossier.”

Preuves vérifiées associées :

1. Contexte technique & matrice des versions affectées

Section intitulée « 1. Contexte technique & matrice des versions affectées »

Le noyau Linux constitue le socle fondamental des infrastructures serveurs, cloud et embarquées. Les vulnérabilités touchant des sous-systèmes critiques tels que fs/smb/server/connection.c (ksmbd in-kernel SMB3 server) représentent un danger majeur d’évasion de conteneurs et de compromission complète des machines hôtes.

ParamètreSpécification techniqueContexte threat intelligence
Identifiant CVECVE-2026-74521Bulletin officiel de sécurité du noyau Linux
Sous-système affectéfs/smb/server/connection.c (ksmbd in-kernel SMB3 server)Sous-système du noyau Linux
Classe de faiblesseCWE-125: Out-of-bounds Read / CWE-697: Incorrect ComparisonDéfaut de sûreté mémoire et validation des limites
Score CVSS v3.17.5 (HIGH / Score Hermes 82)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Architectures ciblesx86_64, aarch64, arm64, riscv64Déploiements Linux serveurs et postes
Version amont corrigéeLinux 6.18.23Déployée sur les branches LTS (6.6, 6.12, 6.18+)
Techniques MITRE ATT&CKT1071.002 - Application Layer Protocol: SMB, T1557 - Adversary-in-the-MiddleÉlévation de privilèges et évasion de défenses
Référence forensiqueJournaux de connexion Linux et trafic réseauAnalyse mémoire et artefacts système Linux

2. Décomposition technique approfondie & cause racine

Section intitulée « 2. Décomposition technique approfondie & cause racine »

L’analyse du code source incriminé dans fs/smb/server/connection.c (ksmbd in-kernel SMB3 server) met en lumière les défaillances de contrôle de bornes ou de synchronisation du cycle de vie mémoire.

// Flaw in fs/smb/server/connection.c (ksmbd)
bool ksmbd_conn_lookup_client_guid(struct ksmbd_conn *conn, __u8 *client_guid)
{
struct ksmbd_conn *entry;
list_for_each_entry(entry, &conn_list, conns_list) {
/* VULNERABILITY: strncmp aborts at first 0x00 byte in binary GUID! */
if (!strncmp(entry->client_guid, client_guid, SMB2_CLIENT_GUID_SIZE))
return true; // Erroneous match if prefix up to null byte matches
}
return false;
}
// Remediation: Replace strncmp with memcmp(entry->client_guid, client_guid, 16) == 0

Lorsque les conditions d’exploitation sont réunies, les descripteurs mémoire ou les pointeurs internes divergent des allocations initiales. Dans un noyau moderne avec randomisation KASLR et durcissement SLUB, un attaquant associe cette primitive à des techniques de heap spraying pour obtenir un contrôle stable de l’espace noyau.


3. Scénarios d’attaque & modélisation des menaces

Section intitulée « 3. Scénarios d’attaque & modélisation des menaces »
  1. Vecteur initial & prérequis : l’attaquant forge un paquet SMB2 NEGOTIATE dont le ClientGUID débute par un octet 0x00 ou correspond au préfixe d’un poste d’administration suivi d’un octet nul.
  2. Déclenchement de la primitive : l’attaquant émet des données forgées ou invoque un appel système spécifique qui active le chemin vulnérable dans fs/smb/server/connection.c (ksmbd in-kernel SMB3 server).
  3. Corruption de mémoire : l’intégrité de la structure noyau est rompue en espace noyau.
  4. Conséquences opérationnelles : l’attaque aboutit soit à un déni de service immédiat (kernel panic paralysant le serveur), soit à une élévation locale de privilèges octroyant les droits root et l’évasion de conteneur.

4. Détection forensique, artefacts & logs système

Section intitulée « 4. Détection forensique, artefacts & logs système »

Les analystes du SOC et les intervenants en réponse à incident (DFIR) doivent exploiter les journaux du noyau, les traces d’audit et les sondes eBPF pour identifier les traces d’exploitation.

Journal du noyau (dmesg / journalctl)

Surveillez /var/log/dmesg ou journalctl -k à la recherche des motifs de crash suivants : ksmbd: duplicate client guid detected or ksmbd: session reconnected with mismatched session_id. Détectez les alertes KASAN ou les erreurs de pagination mémoire dans fs/smb/server/connection.c.

sigma_kernel_cve_2026_74521.yaml
title: Suspicious ksmbd SMB2 ClientGUID Collision Attempt (FR)
id: cve-2026-74521
status: experimental
description: Détecte les anomalies de crash noyau et les traces d'exploitation associées à la CVE-2026-74521.
logsource:
category: kernel
product: linux
detection:
selection_dmesg:
- 'ksmbd:'
- 'fs'
condition: selection_dmesg
fields:
- Message
- Hostname
falsepositives:
- Défaillances matérielles de RAM ou tests unitaires noyau
level: high

5. Remédiation, durcissement & mesures d’atténuation

Section intitulée « 5. Remédiation, durcissement & mesures d’atténuation »

La résolution requiert l’application prioritaire des correctifs du noyau et le durcissement de la configuration système :

  1. Mise à niveau du noyau : installez la version officielle 6.18.23 ou les paquets de sécurité maintenus par votre distribution (Debian, Ubuntu, RHEL, Rocky Linux, SUSE).
  2. Isolation des modules : si le sous-système incriminé est compilé sous forme de module (.ko) et n’est pas strictement requis en production, désactivez-le via /etc/modprobe.d/blacklist.conf.
  3. Durcissement des sysctl : restreignez l’accès aux pointeurs et journaux du noyau via sysctl -w kernel.kptr_restrict=2 et sysctl -w kernel.dmesg_restrict=1.
  4. Surveillance forensique : pour approfondir l’investigation et la détection d’implants noyau, consultez notre guide sur Journaux de connexion Linux et trafic réseau.