Electron contextIsolation RCE via Electron internal code
Last updated
Last updated
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Beispiel von https://speakerdeck.com/masatokinugawa/electron-abusing-the-lack-of-context-isolation-curecon-en?slide=41
Der "exit"-Ereignis-Listener wird immer durch den internen Code gesetzt, wenn das Laden der Seite gestartet wird. Dieses Ereignis wird kurz vor der Navigation ausgelöst:
https://github.com/nodejs/node/blob/8a44289089a08b7b19fa3c4651b5f1f5d1edd71b/bin/events.js#L156-L231 -- Existiert nicht mehr
Dann geht es hierhin:
Wo "self" das Prozessobjekt von Node ist:
Das Prozessobjekt hat eine Referenz zur "require"-Funktion:
Da der handler.call das Prozessobjekt empfangen wird, können wir es überschreiben, um beliebigen Code auszuführen:
Erhalte require-Objekt aus Prototyp-Verschmutzung. Von https://www.youtube.com/watch?v=Tzo8ucHA5xw&list=PLH15HpR5qRsVKcKwvIl-AzGfRqKyx--zq&index=81
Leck:
Exploit:
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)