
Exploit para CVE-2018-4233, un error de optimización JIT de WebKit utilizado durante Pwn2Own 2018.
Exploit para CVE-2018-4233, un error en el compilador JIT de WebKit. Probado en Safari 11.0.3 en macOS 10.13.3.
Para más detalles, consulte https://saelo.github.io/presentations/blackhat_us_18_attacking_client_side_jit_compilers.pdf
El exploit obtiene lectura/escritura arbitraria de memoria mediante la construcción de las primitivas addrof y fakeobj y la posterior falsificación de un typed array, tal como se describe en http://www.phrack.org/papers/attacking_javascript_engines.html. A continuación, localiza la página JIT y escribe allí el shellcode de stage1. Este, a su vez, escribe un .dylib (contenido en stage2.js) en el disco y lo carga en el proceso renderer para llevar a cabo un escape de la sandbox. La etapa 2 utiliza una vulnerabilidad independiente para salir de la sandbox de Safari y se publicará en un momento posterior.