🔍 Contexte

Publié le 22 juillet 2026 par Guardio Labs (Shaked Biner), cet article détaille la découverte et l’exploitation d’une chaîne de vulnérabilités dans l’extension Chrome Adobe Acrobat (environ 329 millions d’installations), baptisée HermeticReader.

🎯 Nature de la vulnérabilité

La chaîne d’exploitation repose sur trois failles composées permettant une exfiltration cross-origin de WhatsApp Web sans interaction utilisateur au-delà d’une simple visite de page :

  • Faille 1 – Écriture non authentifiée dans le stockage de l’extension : les ressources web accessibles de l’extension (frame.html, searchWidget.html, etc.) peuvent être embarquées en iframe par n’importe quelle page. Le JSON passé en query string est relayé au service worker comme message interne de confiance, permettant d’écrire n’importe quelle clé dans chrome.storage.local.
  • Faille 2 – Absence de vérification de l’expéditeur : le service worker ne vérifie jamais l’objet sender des messages entrants, permettant à tout message de passer pour interne.
  • Faille 3 – Activation du moteur Hermes via feature flag : l’écriture de floodgate-add = "dc-cv-hermes" dans le stockage local active le moteur d’intégration WhatsApp (Hermes) de l’extension.

⚙️ Déroulement de la kill chain

  1. Activation de Hermes via écriture arbitraire dans le stockage de l’extension
  2. Récupération du Tab ID de la page attaquante via un bypass de vérification de domaine (startsWith("www.google.")) permettant de lire le tabId depuis le DOM
  3. Prédiction du Tab ID WhatsApp : ouverture de web.whatsapp.com via window.open(), le Tab ID étant TabId + 1 (compteur monotone de Chrome)
  4. Envoi de commandes Hermes au content script WhatsApp via le service worker, en forgeant le champ mimeHandled et tabId
  5. Exfiltration DOM : injection d’un formulaire POST dans le DOM WhatsApp, déplacement du <body> entier dans un <option> sans attribut value, puis soumission du formulaire vers un serveur attaquant — WhatsApp soumet lui-même son DOM rendu (chats, contacts, messages, profil)

📦 Données exfiltrées

  • Liste de chats rendus
  • Noms de contacts
  • Aperçus de messages
  • Nom de profil
  • Texte de la conversation ouverte
  • Potentiellement des codes OTP reçus via WhatsApp

🛠️ Réponse et correction

Guardio Labs a transmis la chaîne complète à Adobe PSIRT. Adobe a accusé réception, trié, corrigé et déployé un patch en un seul week-end. Le CVE CVE-2026-48294 a été émis quelques jours après. La version vulnérable identifiée est v26.5.2.1 (publiée le 3 juin 2026).

📄 Type d’article

Publication de recherche technique de Guardio Labs, visant à documenter une chaîne d’exploitation originale dans une extension de navigateur très répandue et à valoriser la réponse rapide d’Adobe.

🧠 TTPs et IOCs détectés

TTP

  • T1185 — Browser Session Hijacking (Collection)
  • T1539 — Steal Web Session Cookie (Credential Access)
  • T1059.007 — Command and Scripting Interpreter: JavaScript (Execution)
  • T1203 — Exploitation for Client Execution (Execution)
  • T1189 — Drive-by Compromise (Initial Access)
  • T1113 — Screen Capture (Collection)
  • T1041 — Exfiltration Over C2 Channel (Exfiltration)
  • T1565.002 — Data Manipulation: Transmitted Data Manipulation (Impact)

IOC

  • CVEs : CVE-2026-48294NVD · CIRCL

🟡 Indice de vérification factuelle : 46/100 (moyenne)

  • ⬜ guard.io — source non référencée (0pts)
  • ✅ 22544 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 1 IOC(s) (6pts)
  • ⬜ pas d’IOC vérifié (0pts)
  • ✅ 8 TTPs MITRE identifiées (15pts)
  • ✅ date extraite du HTML source (10pts)
  • ⬜ aucun acteur de menace nommé (0pts)
  • ⬜ 0/1 CVE(s) confirmée(s) (0pts)

🔗 Source originale : https://guard.io/labs/hermeticreader—the-vulnerability-that-turned-adobe-300m-install-extension-into-a-full-whatsapp-takeover