Filtres Adblock Plus exploiter d’exécuter du code arbitraire découvert

0
183

par Martin Brinkmann le 16 avril 2019 dans Internet – 4 commentaires

La plupart des bloqueurs de contenu utiliser et charger des listes de filtres inclure des instructions pour bloquer ou de modifier certaines de contenu sur les sites visités dans le navigateur web par défaut; c’est fait pour s’assurer que les configurations par défaut ne bloquer une bonne partie du contenu indésirable.

La plupart des extensions de soutien personnalisé listes et filtres individuels. Les utilisateurs peuvent charger des listes dans la plupart des extensions et ajouter leurs propres filtres à la liste.

Le chercheur en sécurité Armin Sebastian découvert un exploit dans certains adblockers tels que Adblock Plus qui pourrait être utilisé pour exécuter du code malveillant sur les sites visités dans le navigateur.

adblock plus exploit

L’exploit utilise un filtre appelé $de réécriture que Adblock Plus permet d’injecter du code arbitraire dans des pages web. L’ $réécrire filtre est utilisé pour remplacer le code sur des sites en la réécrivant. L’option de filtre limite la mise en oeuvre; il est conçu pour charger le contenu uniquement à partir de la première partie de la source, et non pas des sites tiers ou les serveurs, et certaines demandes, par exemple de script ou de l’objet, ne sont pas autorisées.

Sebastian a découvert une vulnérabilité dans $réécrire que les attaquants peuvent exploiter pour charger du contenu à partir d’emplacements distants. Les conditions qui doivent être respectées:

  1. Un JavaScript chaîne doit être chargé à l’aide de XMLHttpRequest ou Chercher, et le code de retour doit être exécutée.
  2. Origines ne peut pas être limitée sur la page, par exemple par l’utilisation d’un Contenu Politique de Sécurité des directives, et le final de l’URL de la requête ne peut pas être validée avant l’exécution.
  3. L’origine du code devez disposer d’un serveur-côté ouvert de redirection, ou doit hôte arbitraire contenu de l’utilisateur.

Les propriétés qui correspondent à ces trois exigences de Google Maps, Gmail ou Google Images, entre autres. Une preuve de concept a été publié sur le site de l’auteur et vous pouvez l’essayer sur Google Maps pour vérifier qu’il fonctionne.

J’ai essayé de l’exploiter dans Chrome et Firefox, et ne pouvait pas le faire fonctionner. Lawrence Abrams sur Bleeping Computer réussi à le faire fonctionner.

Le Mot De La Fin

L’attaque a une autre exigence, car elle repose sur des filtres. Un manipulés filtre doit être ajouté à la liste des filtres utilisés par le bloqueur de contenu. Les deux options les plus courantes sont les utilisateurs en ajoutant des filtres manuellement à leur contenu-bloquants, ou qu’un manipulés filtre est un filtre de la liste qui est chargé.

La deuxième option semble la plus probable, en particulier dans les cas étaient des utilisateurs de charger d’autres listes dans les extensions. Ce n’est pas la première fois que des listes manipulé, mais il n’arrive pas très souvent.

L’extension uBlock Origine n’est pas touché par le problème car il ne prend pas en charge $de réécriture.