JIT, o compilazione Just-In-Time, è un'ottimizzazione del browser che converte il JavaScript usato frequentemente in codice macchina nativo mentre una pagina è in esecuzione. Questo permette agli script di eseguirsi più rapidamente rispetto all'interpretazione riga per riga, migliorando la reattività delle moderne applicazioni web.
Nella sicurezza informatica, il JIT è importante perché crea un livello di prestazioni complesso all'interno della superficie di attacco del browser. Se il compilatore o il codice generato gestiscono in modo errato i valori, una pagina malevola può provocare corruzione della memoria, confusione di tipi o escape dal sandbox. Gli attaccanti prendono spesso di mira i percorsi JIT perché si attivano automaticamente quando una pagina viene caricata e perché il codice ottimizzato può comportarsi in modo diverso dal JavaScript originale, rendendo i bug più difficili da analizzare. I difensori tengono conto dei difetti JIT perché correggere il motore del browser chiude una via diretta dai contenuti web alla compromissione del processo. Le impostazioni di hardening che riducono o disabilitano JavaScript possono diminuire l'esposizione, ma la difesa principale è mantenere il motore completamente aggiornato.


