Kaspersky a découvert une vulnérabilité qui affecte Google Chrome

Récemment, Kaspersky a découvert un nouvel exploit qui a profité d'une faille inconnue dans Chrome, ce que Google a confirmé une vulnérabilité zero-day dans votre navigateur et qu'il est déjà catalogué comme CVE-2019-13720.

Cette vulnérabilité peut être exploitée à l'aide d'une attaque utilisant une injection similaire à une attaque de "Abreuvoir". Ce type d'attaque fait référence à un prédateur qui, au lieu de chercher une proie, préfère attendre dans un endroit où il est sûr qu'elle viendra (dans ce cas, dans un point d'eau à boire).

Car l'attaque a été découverte sur un portail d'information en coréen, dans lequel un code JavaScript malveillant a été inséré dans la page principale, qui à son tour charge un script de profilage à partir d'un site distant.

Un petit insert de code JavaScript a été logé dans l'index de la page web qui a chargé un script distant depuis code.jquery.cdn.behindcrown

Le script charge ensuite un autre script. Ce script vérifie si le système de la victime peut être infecté en effectuant une comparaison avec l'agent utilisateur du navigateur, qui doit être exécuté sur une version 64 bits de Windows et non être un processus WOW64.

Aussi essayez d'obtenir le nom et la version du navigateur. La vulnérabilité tente d'exploiter le bogue dans le navigateur Google Chrome et le script vérifie si la version est supérieure ou égale à 65 (la version actuelle de Chrome est 78).

La version Chrome vérifie le script de profilage. Si la version du navigateur est validée, le script commence à exécuter une série de requêtes AJAX sur le serveur contrôlé par l'attaquant, où le nom d'un chemin pointe vers l'argument passé au script.

La première demande est nécessaire pour des informations importantes pour une utilisation ultérieure. Ces informations comprennent plusieurs chaînes codées en hexadécimal qui indiquent au script le nombre de morceaux du code d'exploitation réel à télécharger à partir du serveur, ainsi qu'une URL vers le fichier image qui comprend une clé pour le téléchargement final et une clé RC4 pour déchiffrer des morceaux de code de l'exploit.

La plupart du code utilise diverses classes liées à un certain composant de navigateur vulnérable. Comme ce bogue n'avait pas encore été corrigé au moment de la rédaction de cet article, Kaspersky a décidé de ne pas inclure de détails sur le composant vulnérable spécifique.

Il existe de grandes tables avec des nombres représentant un bloc de shellcode et une image PE intégrée.

L'exploit utilisé une erreur de condition de concurrence entre deux threads en raison d'un manque de synchronisation entre eux. Cela donne à l'attaquant une condition d'utilisation après publication (UaF) très dangereuse car cela peut conduire à des scénarios d'exécution de code, ce qui est exactement ce qui se passe dans ce cas.

L'exploit tente d'abord de faire perdre à UaF des informations importantes Adresse 64 bits (comme un pointeur). Cela se traduit par plusieurs choses:

  1.  si une adresse est divulguée avec succès, cela signifie que l'exploit fonctionne correctement
  2.  une adresse révélée est utilisée pour savoir où se trouve le tas / pile et qui remplace la technique de randomisation du format d'espace d'adressage (ASLR)
  3. quelques autres indicateurs utiles pour une exploitation ultérieure pourraient être localisés en regardant près de cette direction.

Après cela, vous essayez de créer un grand groupe d'objets à l'aide d'une fonction récursive. Ceci est fait pour créer une disposition de tas déterministe, ce qui est important pour une exploitation réussie.

Dans le même temps, vous essayez d'utiliser une technique de pulvérisation de tas qui vise à réutiliser le même pointeur qui était précédemment publié dans la partie UaF.

Cette astuce pourrait être utilisée pour confondre et donner à l'attaquant la possibilité d'opérer sur deux objets différents (d'un point de vue JavaScript), même s'ils sont en fait dans la même région mémoire.

Google a publié une mise à jour de Chrome qui corrige la faille sur Windows, macOS et Linux, et les utilisateurs sont encouragés à mettre à jour vers la version 78.0.3904.87 de Chrome.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.