Analyse des risques de sécurité et d'exploitation liés à la fuite de la valeur Sentinel du moteur Chrome V8

robot
Création du résumé en cours

Explorer les risques de sécurité liés à la fuite de la valeur Sentinel dans le moteur Chrome V8

La valeur Sentinel est une valeur utilisée comme un marqueur spécial dans les algorithmes, généralement comme condition d'arrêt dans les boucles ou les récursions. Dans le code source de l'engin Chrome V8, il existe plusieurs valeurs Sentinel, dont certaines ne doivent pas être divulguées dans l'environnement JavaScript. Cet article discutera des méthodes permettant de contourner le mécanisme HardenProtect de Chrome V8 en divulguant des objets Uninitialized Oddball.

Valeur Sentinel dans V8

Le fichier roots.h du code source V8 définit un grand nombre d'objets natifs, qui sont disposés de manière adjacente en mémoire. Une fois que ces objets sont divulgués dans JavaScript, cela peut entraîner une évasion de la sandbox.

Nous pouvons vérifier cela en modifiant les fonctions natives de V8. Par exemple, en modifiant le décalage de la fonction %TheHole() pour qu'elle renvoie un objet Oddball non initialisé plutôt qu'un objet TheHole.

Révélation exclusive sur la contournement de Chrome v8 HardenProtect via la fuite de Sentinel Value

Contourner la protection HardenType

L'utilisation d'objets Oddball non initialisés permet d'effectuer des lectures de mémoire relativement arbitraires. La clé réside dans la fonction de lecture JavaScript optimisée, qui ne vérifie que si l'attribut prop de l'objet est correct, mais ne vérifie pas la valeur correspondant à obj.prop. Cela entraîne une confusion de type lors du calcul, permettant ainsi une lecture arbitraire.

L'analyse du code assembleur optimisé montre que, lorsqu'un uninitialized_oddball est passé, le programme calcule directement le décalage et lit les données, sans effectuer de vérification de type. Cette méthode est plus facile à construire et à exploiter par rapport à l'objet TheHole.

Révélation exclusive sur la manière de contourner Chrome v8 HardenProtect en divulguant la valeur Sentinel

Révélation exclusive sur le contournement de Chrome v8 HardenProtect via la fuite de la valeur Sentinel

Révélation exclusive sur la façon de contourner Chrome v8 HardenProtect en divulguant la valeur Sentinel

Révélation exclusive sur la manière de contourner Chrome v8 HardenProtect en dévoilant la valeur Sentinel

Révélation exclusive sur la façon de contourner Chrome v8 HardenProtect via la fuite de Sentinel Value

La solution de contournement suggérée consiste à ajouter une vérification de la carte du tableau lors du retour des éléments du tableau dans la fonction optimisée, afin d'éviter de renvoyer les valeurs du tableau par calcul d'offset.

Révélation exclusive sur la façon de contourner Chrome v8 HardenProtect en divulguant Sentinel Value

Avertissement de sécurité PatchGap

En plus de prêter attention aux vulnérabilités historiques connues, nous devons également tenir compte des problèmes que les fabricants ont discrètement corrigés dans les composants de base. Après analyse, il a été constaté que le logiciel Skype n'avait toujours pas corrigé cette vulnérabilité. Sur la plateforme x86, en raison de l'absence de compression d'adresses, la portée de lecture et d'écriture arbitraire est plus grande, pouvant presque lire et écrire tout l'espace de processus.

Le patch Gap concerne non seulement l'Issue 1352549, mais également des vulnérabilités similaires telles que l'Issue 1314616 et l'Issue 1216437. Une fois que la nouvelle méthode d'esquive a été rendue publique, la difficulté d'exploitation de ces vulnérabilités a considérablement diminué, permettant aux attaquants de réaliser une chaîne d'exploitation complète sans nécessiter de recherches supplémentaires.

Révélation exclusive sur la façon de contourner le HardenProtect de Chrome v8 en révélant la valeur Sentinel

Résumé

Cet article explore brièvement les méthodes permettant de lire arbitrairement via la fuite d'Uninitialized Oddball. Il existe également plusieurs autres valeurs Sentinel dans V8, qui pourraient également entraîner des problèmes similaires. Cela nous rappelle:

  1. D'autres fuites uninitialized_Oddball peuvent également entraîner une évasion du bac à sable V8.

  2. Il existe encore des débats sur la question de savoir si de tels problèmes doivent être considérés comme des vulnérabilités de sécurité officielles.

  3. Envisagez d'ajouter la valeur Sentinel en tant que variable dans les tests de flou pour découvrir de nouvelles méthodes d'exploitation.

Quoi qu'il en soit, ce type de problème réduira considérablement le temps nécessaire aux attaquants pour réaliser une exploitation complète, ce qui mérite une attention particulière.

Révélation exclusive sur la façon de contourner Chrome v8 HardenProtect via la fuite de la valeur Sentinel

SENC-0.03%
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
  • Récompense
  • 4
  • Partager
Commentaire
0/400
MoonBoi42vip
· Il y a 14h
J'ai un peu peur, il y a trop de failles.
Voir l'originalRépondre0
SleepyArbCatvip
· 08-02 05:40
Le chat qui est si fatigué qu'il ne peut que coder...zZz
Voir l'originalRépondre0
ChainDetectivevip
· 08-02 05:38
Putain, vulnérabilité du moteur v8, c'est bon.
Voir l'originalRépondre0
LadderToolGuyvip
· 08-02 05:36
Étonné, encore en train de jouer avec le décryptage.
Voir l'originalRépondre0
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)