Electron contextIsolation RCE via Electron internal code
Last updated
Last updated
L'auditeur d'événements "exit" est toujours défini par le code interne lorsque le chargement de la page est démarré. Cet événement est émis juste avant la navigation:
https://github.com/nodejs/node/blob/8a44289089a08b7b19fa3c4651b5f1f5d1edd71b/bin/events.js#L156-L231 -- N'existe plus
Ensuite, cela se passe ici :
Où "self" est l'objet process de Node :
L'objet process a une référence à la fonction "require" :
Comme le handler.call va recevoir l'objet process, nous pouvons le remplacer pour exécuter du code arbitraire :
Obtenez l'objet require à partir de la pollution du prototype. Depuis https://www.youtube.com/watch?v=Tzo8ucHA5xw&list=PLH15HpR5qRsVKcKwvIl-AzGfRqKyx--zq&index=81
Fuite:
Exploitation: