Approche
L'isolation, avant tout
Une application Electron mal configurée transforme une XSS classique en exécution de code sur la machine de l'utilisateur, via un pont Node.js mal isolé. L'audit se concentre sur la configuration de sécurité du framework (nodeIntegration, contextIsolation, sandbox), sur les preload scripts, et sur la gestion des mises à jour — un vecteur classique d'exécution de code si les signatures ne sont pas vérifiées.
Cas emblématiques
Le type de faille recherchée ici
RCE via un gestionnaire de protocole personnalisé
CVE-2018-1000006 : plusieurs applications Electron (dont Discord) enregistraient un gestionnaire de protocole personnalisé sans valider les arguments transmis, permettant l'exécution de code via un simple lien cliqué.
Signal Desktop — XSS vers RCE via nodeIntegration
Une XSS classique dans le rendu d'un message, combinée à nodeIntegration activé sur la fenêtre, permettait l'exécution de code natif sur la machine de l'utilisateur (disclosure publique, 2018).
electron-updater — mise à jour non vérifiée
CVE-2020-4067 : une faille dans la vérification de signature de l'auto-updater electron-builder permettait à un attaquant en position MITM de livrer une mise à jour malveillante comme si elle était légitime.
contextIsolation désactivé + preload exposant require()
Un preload script qui expose window.require directement au contenu web annule l'intérêt du context isolation — classe de mauvaise configuration documentée dans les guides de sécurité officiels d'Electron.
Absence de CSP sur une fenêtre chargeant du contenu distant
Une BrowserWindow qui charge du contenu web distant sans Content-Security-Policy stricte perd une couche de défense essentielle contre l'injection de script — recommandation n°1 de la documentation sécurité Electron.
Fuite d'informations via les DevTools laissés actifs
Des DevTools accessibles en production exposent l'arborescence du renderer, les variables globales et parfois des secrets embarqués côté client, facilitant la reconnaissance pour un attaquant local.
Autres prestations
Prêt à savoir ce qu'un attaquant verrait de vous ?
Discutons de votre application, de votre calendrier, et de ce qu'un test d'intrusion peut couvrir.