HermeticReader : la vulnérabilité de l'extension Adobe Acrobat permettant l'exfiltration de WhatsApp
🔍 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 Activation de Hermes via écriture arbitraire dans le stockage de l’extension 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 Prédiction du Tab ID WhatsApp : ouverture de web.whatsapp.com via window.open(), le Tab ID étant TabId + 1 (compteur monotone de Chrome) Envoi de commandes Hermes au content script WhatsApp via le service worker, en forgeant le champ mimeHandled et tabId 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). ...