Mohabi es una versión modificada del navegador Firefox que aísla de forma segura su motor de JavaScript, SpiderMonkey, del resto del proceso del navegador. El proyecto, desarrollado por investigadores de la Universidad de Texas en Austin, Stanford, la Universidad de California en San Diego, Mozilla y Google, se presentó en el simposio OSDI '26. Su objetivo es evitar que un fallo o vulnerabilidad en el motor de scripting pueda comprometer el resto del navegador.
El equipo aplicó una técnica conocida como aislamiento de fallos por software (SFI, por sus siglas en inglés), que restringe el código de SpiderMonkey para que solo pueda acceder a su propia región de memoria. Para que esta separación fuese viable, los autores disgregaron SpiderMonkey del resto de navegador: separaron unas decenas de miles de funciones y estructuras de datos estrechamente entrelazadas. Para hacer manejable esa transformación, emplearon el sistema de tipos del propio SpiderMonkey y herramientas de generación automática de código.
Además, desarrollaron una cadena de herramientas SFI optimizada para arquitecturas x86-64, capaz de soportar el gran consumo de memoria típico de los motores de JavaScript. En pruebas con los benchmarks JetStream y Speedometer, Mohabi introduce una sobrecarga del 24,82 % y del 24,43 %, respectivamente. En SPEC 2017, la herramienta SFI aislada añade entre un 5,9 % y un 6,6 % de sobrecarga, la menor registrada hasta la fecha. Según los autores, Mohabi es el caso de estudio más ambicioso de sandboxing dentro del mismo proceso aplicado a un sistema software de gran tamaño.
