Aller au contenu

CVE-2026-64268 : Écriture Hors-Limites à Distance RDMA/siw (Soft-iWARP) dans le Noyau Linux

HERMES

SCORE DE MENACE HERMES & RISQUE D'INFRASTRUCTURE D'ENTREPRISE

Cible : Linux Kernel Soft-iWARP Driver (drivers/infiniband/sw/siw)
Confiance : 94%
90 / 100
CRITIQUE

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 18 / 20
Militarisation 18 / 20
Exposition 19 / 20
Prévalence 20 / 20
Impact 19 / 20
Maturité de l'exploit 18 / 20
Potentiel d'attaque en chaîne 19 / 20
⚖️ Divergence & Justification opérationnelle

Évalué CVSS 8.8 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) et HTS 90. Le noyau Linux constitue le socle des serveurs bare-metal, grappes de conteneurs et hyperviseurs d'entreprise. Les vulnérabilités affectant drivers/infiniband/sw/siw permettent aux attaquants de franchir la frontière de sécurité directement au niveau superviseur (ring-0).

🕸️ Graphe de connaissances connecté & Provenance

CVE-2026-64268: Linux Kernel Soft-iWARP (siw) RDMA Read Response Out-of-Bounds WriteVULNÉ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 Systèmes Affectés

Section intitulée « 1. Contexte Technique & Matrice des Systèmes Affectés »
ParamètreSpécification TechniqueImpact Opérationnel
Identifiant CVECVE-2026-64268CERTFR-2026-AVI-1204 & RHSA-2026:67468
Classe de VulnérabilitéCWE-787: Out-of-bounds WriteCorruption mémoire superviseur / élévation de privilèges
Sous-système / Pilotedrivers/infiniband/sw/siwComposant central du noyau Linux
Vecteur d’AttaqueAV:NExploitation via appel système ou transport réseau
Privilèges RequisUI:NProfil d’accès nécessaire
Architectures Ciblesx86_64, aarch64, ppc64le, s390xPlates-formes serveurs d’entreprise
Version Corrective Amont6.18.25Dépôt Git officiel Torvalds
Version Corrective Entreprisekernel-6.12.0-211.55.1.el10_2Paquet noyau mis à jour Red Hat

2. Anatomie de la Faille & Analyse de Cause Racine

Section intitulée « 2. Anatomie de la Faille & Analyse de Cause Racine »

Dans le pilote Soft-iWARP (siw), siw_proc_rresp() place les segments DDP de réponse de lecture à l’adresse sge->laddr + wqe->processed. Bien que wqe->processed accumule les compteurs d’octets entrants sur les segments de continuation, le pilote n’impose pas que le total cumulé reste strictement inférieur à la taille du tampon récepteur sge->length. Les données entrantes dépassant les limites écrasent la mémoire contiguë du noyau.

// Vulnerable multi-segment processing in drivers/infiniband/sw/siw/siw_qp_rx.c
static int siw_proc_rresp(struct siw_qp *qp, struct siw_rx_stream *srx)
{
struct siw_wqe *wqe = &qp->rx_untagged.wqe_active;
struct siw_sge *sge = &wqe->sqe.sge[0];
// INSECURE: wqe->processed exceeds sge->length without rejection
dest = (void *)(uintptr_t)(sge->laddr + wqe->processed);
bytes = min_t(int, srx->fpdu_part_rem, srx->rreq_bytes);
memcpy(dest, srx->data, bytes);
wqe->processed += bytes;
return 0;
}
// Patched bounds check asserting buffer capacity
static int siw_proc_rresp(struct siw_qp *qp, struct siw_rx_stream *srx)
{
struct siw_wqe *wqe = &qp->rx_untagged.wqe_active;
struct siw_sge *sge = &wqe->sqe.sge[0];
// FIXED: Enforce that cumulative processed bytes never overrun sge->length
if (unlikely(wqe->processed + srx->fpdu_part_rem > sge->length)) {
pr_err("siw: rresp segment overflow %u > %u\n",
wqe->processed + srx->fpdu_part_rem, sge->length);
return -EINVAL;
}
dest = (void *)(uintptr_t)(sge->laddr + wqe->processed);
memcpy(dest, srx->data, bytes);
wqe->processed += bytes;
return 0;
}

3. Mécanique d’Exploitation & Vecteurs d’Attaque

Section intitulée « 3. Mécanique d’Exploitation & Vecteurs d’Attaque »

Un attaquant exploitant CVE-2026-64268 procède selon les étapes suivantes :

  1. Formulation de la Condition Déclenchante : L’attaquant prépare des paquets ou des appels système spécialement forgés ciblant drivers/infiniband/sw/siw pour forcer l’exécution du chemin de code vulnérable.
  2. Alignement Mémoire & Pulvérisation de Tas (Heap Spray) : Par des allocations intensives dans les caches slab appropriés (kmalloc-512, filp), l’attaquant positionne des structures sous contrôle pour influencer le déréférencement ultérieur.
  3. Détournement du Pointeur d’Instruction ou des Registres de Contrôle : Le pointeur obsolète ou l’état incohérent est traité par l’ordonnanceur ou le gestionnaire d’interruptions, exécutant des instructions sous contrôle attaquant avec les privilèges ring-0 du noyau.

4. Règles de Détection & Chasse aux Menaces (Threat Hunting)

Section intitulée « 4. Règles de Détection & Chasse aux Menaces (Threat Hunting) »
Fenêtre de terminal
# Surveillance des appels et du sous-système via le démon auditd
alert tcp any any -> any [5445,3587] (msg:"HERMES - RDMA/siw Inbound Read Response Frame Overflow (CVE-2026-64268)"; \
flow:established,to_server; content:"|00 00 00|"; depth:3; \
byte_test:4,>,65536,4,relative; \
classtype:attempted-admin; sid:202664268; rev:1;)
# Signature de détection réseau le cas échéant
alert ip any any -> any any (msg:"HERMES - Détection d'Exploitation CVE-2026-64268"; \
flow:established; classtype:attempted-admin; sid:99202664268; rev:1;)

5. Remédiation & Recommandations Opérationnelles

Section intitulée « 5. Remédiation & Recommandations Opérationnelles »
  1. Appliquer les Mises à Jour du Noyau : Mettez à jour les paquets noyau via le gestionnaire officiel de votre distribution :
    Fenêtre de terminal
    sudo dnf upgrade -y kernel kernel-core kernel-modules
    # ou sur systèmes Debian/Ubuntu :
    sudo apt-get update && sudo apt-get --only-upgrade install linux-image-generic
  2. Redémarrer le Système et Vérifier la Version Active : Vérifiez que le noyau actif intègre le correctif :
    Fenêtre de terminal
    uname -r
    # Confirmer que la version affichée est >= 6.18.25 ou la révision corrigée
  3. Contrôle de Durcissement Sécuritaire :
    Fenêtre de terminal
    cat /sys/kernel/security/lsm