Domato, tool di testing per browser dal Project Zero

Domato, tool di testing per browser dal Project Zero

Il security team di Google ha reso disponibile un nuovo strumento di testing chiamato Domato, realizzato per testare i DOM engine dei più popolari Web browser. Dalle prove dei ricercatori, Safari era quello con più bug
Il security team di Google ha reso disponibile un nuovo strumento di testing chiamato Domato, realizzato per testare i DOM engine dei più popolari Web browser. Dalle prove dei ricercatori, Safari era quello con più bug

L’ingegnere di Google Ivan Fantric ha reso disponibile
un nuovo tool chiamato Domato : un fuzzer , ossia uno strumento che consente di iniettare input casuali nei punti critici di un software per scovare anomalie negli output, utilizzabile per individuare bug negli engine DOM .

DOM sta per Document Object Model, ed è lo standard W3C utilizzato per interagire con gli elementi dei documenti HTML con un approccio orientato agli oggetti; i DOM engine, ovvero i componenti che implementano questo standard, costituiscono una superficie di attacco molto ampia: eventuali vulnerabilità possono facilmente avere un impatto elevato sulla privacy dell’utente, sulle prestazioni del browser e sulla sicurezza dell’intera macchina. Ad esempio, nel mese di novembre dello scorso anno un exploit di DOM in Firefox ha permesso di identificare degli utenti di siti di pornografia infantile sebbene utilizzassero Tor. Per tale ragione sono frequenti i rilasci di patch che contengono correzioni a questi componenti.

Sono stati sottoposti ai test di Domato cinque browser : Google Chrome, Mozilla Firefox, Internet Explorer, Microsoft Edge e Safari di Apple; ogni browser è stato testato circa 100 milioni di volte. Dal test è emerso un totale di 31 bug di sicurezza, tra cui 17 solo su Safari.

Domato

È opportuno tenere presente che, sebbene il costo computazionale del fuzzing sia generalmente alto, un’operazione di questa portata può essere portata a termine da un attaccante qualunque usando le tecnologie cloud. Un’operazione del genere, utilizzando Google Compute Engine ad esempio, potrebbe costare circa 1.000 dollari.

Prima di rendere Domato open source, Ivan Fratric ha lavorato con Safari per correggere i bug, permettendo così ad Apple di utilizzare il tool in anteprima.

Di seguito alcuni dei bug trovati con Domato, perlopiù riguardanti corruzioni di memoria che hanno come effetto la possibilità per l’attaccante di eseguire codice o provocare il crash del software:

  • Apple Safari: CVE-2017-2369, CVE-2017-2373, CVE-2017-2362, CVE-2017-2454, CVE-2017-2455, CVE-2017-2459, CVE-2017-2460, CVE-2017-2466, CVE-2017-2471, CVE-2017-2476, CVE-2017-7039, CVE-2017-7040, CVE-2017-7041, CVE-2017-7042, CVE-2017-7043, CVE-2017-7046, CVE-2017-7048, CVE-2017-7049
  • Google Chrome: Issues 666246 and 671328
  • Microsoft Internet Explorer 11: CVE-2017-0037, CVE-2017-0059, CVE-2017-0202, CVE-2017-8594
  • Microsoft Edge: CVE-2017-0037, CVE-2017-8496, CVE-2017-8652, CVE-2017-8644
  • Mozilla Firefox: CVE-2017-5404, CVE-2017-5447, CVE-2017-5465

È interessante notare come la differenza nel numero di bug tra Safari e Chrome si sia allargata dopo il fork di Webkit in Blink da parte di Google. Dopo la nascita di Blink il numero di vulnerabilità nell’engine di Mountain View si è notevolmente ridotto, mentre per Webkit è aumentato.

Fantric ha inoltre sottolineato i benefici dell’implementazione di MemGC in IE ed Edge, che hanno ostacolato l’attacco da parte del tool; se Microsoft non avesse adottato questa tecnica di mitigazione i numeri per questi browser sarebbero stati decisamente peggiori. L’attacco, se condotto con il flag OverrideMemoryProtectionSetting disabilitato sul registro di sistema, mostra infatti molte più vulnerabilità. I risultati dell’analisi svolta, pertanto, non necessariamente rappresentano il livello di sicurezza del browser .

Domato è ora disponibile su GitHub per consentire a chi lo desidera di migliorarlo, in modo che un maggior numero di persone possano trovare vulnerabilità zero day nelle proprie applicazioni e che sia possibile per gli sviluppatori correggere il maggior numero di bug possibili, sfruttando un tool facilmente estendibile e di facile comprensione.

Ilaria Di Maro

Link copiato negli appunti

Ti potrebbe interessare

Pubblicato il
25 set 2017
Link copiato negli appunti