Domato Fuzzer gratuit a trouvé 31 bogues dans les principaux navigateurs

Les pirates du projet Project Zero de Google ont publié un outil d'accès ouvert pour tester automatiquement les programmes pour les bugs - le Duzzo fuzzer . L'efficacité du programme a été prouvée dans la pratique: il a trouvé 31 bugs dans cinq navigateurs populaires. Les résultats des tests sont indiqués dans le tableau.
Vendeur
Navigateur
Moteur
Nombre de bugs
Project Zero Bug IDs
Google
Chrome
Cligner des yeux
2
994, 1024
Mozilla
Firefox
Gecko
4 **
1130, 1155, 1160, 1185
Microsoft
Internet explorer
Trident
4
1011, 1076, 1118, 1233
Microsoft
Bord
Edgehtml
6
1011, 1254, 1255, 1264, 1301, 1309
Apple
Safari
Webkit
17
999, 1038, 1044, 1080, 1082, 1087,
1090, 1097, 1105, 1114, 1241, 1242,
1243, 1244, 1246, 1249, 1250
Total
31 *
* Deux bogues concernent deux navigateurs, donc le nombre total est de 31, pas 33, comme suit à partir de la somme des nombres dans la colonne
** L'un des bogues se trouve en fait dans la bibliothèque graphique Skia, et non dans le code source de Firefox lui-même. Mais puisque ce code a été ajouté au navigateur par les développeurs de Firefox, il sera juste de le considérer dans le tableau

Domato est spécialement conçu pour ouvrir des bogues dans les moteurs DOM du navigateur. Les moteurs DOM font partie du moteur de rendu de chaque navigateur, et c'est dans cette partie que de nombreux bugs sont souvent cachés. Parfois, ils sont même utilisés par des attaquants particulièrement avancés, y compris ceux des services de renseignement de l'État. Par exemple, c'était un bogue dans le moteur Firefox DOM que les services spéciaux utilisaient pour créer un exploit malveillant pour le navigateur Tor . L'exploit a été découvert par des experts en sécurité en novembre de l'année dernière. Plus précisément, comme ils l'ont découvert: il a accidentellement fuité d'Exodus Intel, qui se spécialise dans l'achat et le développement d'exploits dans le but de les revendre à des agences de renseignement et des forces de l'ordre de différents pays.

Les gars de Google se battent traditionnellement avec de telles méthodes de surveillance de l'État. Peut-être que ce cas avec le navigateur Tor a donné l'idée de créer un fuzzer pour identifier les vulnérabilités dans les moteurs DOM. Son auteur était le célèbre hacker Ivan Fratric. Cependant, même sans ce cas, la création d'un tel outil était évidente: Fratrich écrit qu'une rare mise à jour de sécurité pour certains navigateurs fait sans fermer les bogues dans le moteur DOM, ils sont si courants. Auparavant, le titre du trou principal appartenait à Flash, mais comme cette technologie est abandonnée, ce titre passe progressivement au moteur DOM.

Fratrich a maintenant rendu Domato accessible au public dans l'espoir que d'autres amélioreront cet outil utile. Soit dit en passant, presque tous les principaux fournisseurs paient pour les vulnérabilités trouvées, donc un bon fuzzer peut vous rapporter plusieurs milliers de dollars.

Lors d'un test de navigateur, dont les résultats sont donnés ci-dessus, le fuzzing a consisté à générer du code aléatoire et à le soumettre au navigateur dans l'espoir qu'il planterait, et donc environ 100 millions de fois. Selon Fratrich, un fuzz de cette ampleur dans le cloud de Google Compute Engine coûterait environ 1 000 $.

Fazzer a trouvé environ le même nombre de bogues dans Chrome, Firefox, Internet Explorer et Edge, mais beaucoup plus de bogues dans Safari, qui se distinguent des autres. Pour le moment, tous ces bogues sont fermés car Apple a eu accès à Domato à l'avance en embauchant un membre de l'équipe Project Zero qui a demandé à Ivan de le laisser utiliser le fuzzer (auparavant Fratrich lui-même l'avait proposé à Apple en raison du grand nombre de bogues dans Safari, mais la société est fière refusé). Fratrich écrit que trop de bogues dans Safari sont particulièrement alarmants, étant donné l'intérêt des cybercriminels pour cette plate-forme, comme en témoignent les prix d'exploitation et les récentes attaques ciblées.

Il est également intéressant de comparer le nombre de bogues dans les navigateurs Chrome et Safari, qui fonctionnaient il y a plusieurs années sur le même moteur WebKit, jusqu'à ce que Google le crée, créant Blink. Apparemment, depuis le fork de 2013, un grand nombre de bogues ont été éliminés dans le moteur Blink ou un grand nombre de bogues ont été ajoutés au moteur WebKit.

Ivan Fratrich a également rendu hommage aux développeurs de Microsoft, qui ont créé un garbage collector dans la mémoire MemGC pour se protéger contre les exploits qui utilisent des bogues comme use-after-free. La fonction est intégrée dans Edge et Internet Explorer 11. Il est dit que l'effet MemGC est évident: si vous désactivez cette fonction via l'indicateur OverrideMemoryProtectionSetting, alors beaucoup plus de bugs sont détectés qui sont réellement présents dans le code.

Source: https://habr.com/ru/post/fr406859/


All Articles