Electron contextIsolation RCE via Electron internal code
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP:
HackTricks Training GCP Red Team Expert (GRTE)
Ejemplo 1
El listener del evento "exit" siempre se establece por el código interno cuando se inicia la carga de la página. Este evento se emite justo antes de la navegación:
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2730383215-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FOGiU7XValBchYYDg6h1H%252Fuploads%252Fgit-blob-53c8c9a9a874ef93bb7610b657d2408527a7a68b%252Fimage%2520%281070%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=24c8e055&sv=1)
https://github.com/nodejs/node/blob/8a44289089a08b7b19fa3c4651b5f1f5d1edd71b/bin/events.js#L156-L231 -- Ya no existe
Luego va aquí:
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2730383215-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FOGiU7XValBchYYDg6h1H%252Fuploads%252Fgit-blob-d53a01b3672f489ace7c263837802ad3b82a6e52%252Fimage%2520%28793%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=1963e75f&sv=1)
Donde "self" es el objeto de proceso de Node:
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2730383215-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FOGiU7XValBchYYDg6h1H%252Fuploads%252Fgit-blob-a19d59d32793adac49bc8ff5c08603edca74d89f%252Fimage%2520%28700%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=eca617ef&sv=1)
El objeto de proceso tiene una referencia a la función "require":
Como el handler.call va a recibir el objeto de proceso, podemos sobrescribirlo para ejecutar código arbitrario:
Ejemplo 2
Obtener objeto require de la contaminación del prototipo. De https://www.youtube.com/watch?v=Tzo8ucHA5xw&list=PLH15HpR5qRsVKcKwvIl-AzGfRqKyx--zq&index=81
Fuga:
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2730383215-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FOGiU7XValBchYYDg6h1H%252Fuploads%252Fgit-blob-2a98479515b54b62aecb80f3b215ca7f72469e35%252Fimage%2520%28279%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=ec8b7194&sv=1)
Explotar:
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2730383215-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FOGiU7XValBchYYDg6h1H%252Fuploads%252Fgit-blob-2758b36d6443234264d7e9aeaca2377b4df5f7e9%252Fimage%2520%2889%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=cf3e912d&sv=1)
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP:
HackTricks Training GCP Red Team Expert (GRTE)
Last updated