V8 motoru Sentinel değer sızıntısı açığı: Chrome sandık kaçışının yeni yöntem analizi

Chrome V8 motorundaki Sentinel Value'nin güvenlik risklerini tartışmak

Sentinel değeri, algoritmalardaki özel bir değerdir ve genellikle döngü veya özyinelemeli algoritmalarda sonlandırma koşulu olarak bulunur. Chrome kaynak kodunda birçok Sentinel değeri bulunmaktadır. Son araştırmalar, belirli Sentinel değeri nesnelerinin sızdırılmasının Chrome kumanda içinde rastgele kod yürütülmesine yol açabileceğini göstermektedir.

Bu makale, yeni bir Sentinel value nesnesini tartışacaktır: Uninitialized Oddball. Bu istismar yöntemi, ilk olarak bir güvenlik açığı raporunda ortaya çıkmış ve güvenlik araştırmacıları tarafından tam kod sağlanmıştır. Dikkate değer bir nokta, bu yöntemin halen V8'in en son sürümünde kullanılabilir olması ve henüz düzeltilmemiş olmasıdır.

Bu yöntem güçlü bir genel geçerliliğe sahiptir:

  1. Belirli bir CVE açığında, ilk PoC, internal uninitialized oddball'ın sızdırılmasıdır.

  2. Başka bir CVE güvenlik açığı raporunda, araştırmacılar UninitializedOddball'ı doğrudan ifşa etti, o zaman saldırı zinciri eksik olmasına rağmen, güvenlik riski gösterdi.

  3. Son bir güvenlik açığı raporunda tam istismar yöntemi verilmiştir.

Bu örnekler, sorunun yaygınlığını ve ciddiyetini göstermektedir. Şu ana kadar, bir iletişim yazılımı bu açığı henüz düzeltmemiştir.

Sentinel değerinin V8'deki kullanımı

V8 kaynak kodunda çok sayıda yerel nesne tanımlanmıştır; bunlar bellek içinde ardışık olarak yan yana dizilir. Eğer ifşa edilmemesi gereken yerel nesneler JavaScript'e açılırsa, sandbox içinde herhangi bir kodun çalıştırılması mümkün hale gelebilir.

Bu yöntemin en son V8'deki geçerliliğini doğrulamak için, V8'in yerel işlevini değiştirebiliriz ve Uninitialized Oddball'ı JavaScript'e sızdırabiliriz.

Özel Açıklama: Sentinel Value ile Chrome v8 HardenProtect'i Aşma

HardenType korumasını geçme

Belirli bir işlev UninitializedOddball döndüğünde, görece olarak herhangi bir okunabilirlik sağlamak için kod oluşturabiliriz. Optimize edilmiş derleme kodunu analiz ettiğimizde, işlevin yalnızca nesnenin özelliklerinin doğru olup olmadığını kontrol ettiğini, ancak özelliklere karşılık gelen değerleri kontrol etmediğini, doğrudan JavaScript semantiğine göre kaydırma hesaplayarak dizi elemanlarını elde ettiğini, böylece tür karışıklığına neden olduğunu ve herhangi bir okunabilirlik sağladığını görebiliriz.

Özel Keşif: Sentinel Value İfşası ile Chrome v8 HardenProtect'i Aşma

Özel ifşa: Sentinel Value ile Chrome v8 HardenProtect'i aşmanın yolu

Özel Açıklama: Sentinel Value ile Chrome v8 HardenProtect'i Aşma

Özel ifşa Sentinel Value ile Chrome v8 HardenProtect'i aşma

Özel keşif Sentinel Value sızıntısı ile Chrome v8 HardenProtect'i aşma

Özel Açıklama Sentinel Value ile Chrome v8 HardenProtect'i Aşma

Benzer şekilde, rastgele yazma da benzer yöntemlerle oluşturulabilir. Fonksiyonun döndürdüğü dizi elemanlarını optimize ederken, doğrudan ofset döndürme değerlerini hesaplamaktan kaçınmak için dizi haritasının kontrolünü eklemenizi öneririm.

Güvenlik Tehlikesi Hatırlatması

Analizler, belirli bir iletişim yazılımının şu anda bu açığı henüz düzeltmediğini göstermektedir. x86 sisteminde, adres sıkıştırması eksik olduğu için, herhangi bir okuma/yazma işlemi doğrudan tüm süreçle ilişkilidir. ASLR etkinleştirilmiş olmasına rağmen, dosyanın boyutu nedeniyle kritik içeriklere okuma/yazma yapılma olasılığı hala yüksektir. PE çözümleme gibi yöntemler bir araya getirildiğinde, tam bir istismar zincirinin kısa sürede tamamlanması mümkün olabilir.

Bu güvenlik açığı sadece tek bir açıkla ilgili değil, aynı zamanda daha önceki bazı benzer açıkların istismar edilme zorluğunu da büyük ölçüde azaltmıştır. Hackerlar, daha önce rapor edilen tüm benzer açıklar dahil olmak üzere, tam istismar sağlamak için neredeyse ek bir araştırma yapmaya ihtiyaç duymuyor.

Özel Keşif: Sentinel Value ile Chrome v8 HardenProtect'i Aşmak

Özet

Bu makale, Uninitialized Oddball'ın sızdırılması yoluyla rastgele okuma yöntemini kısaca tartışmaktadır. V8'de başka birçok Sentinel değeri bulunmaktadır, benzer güvenlik açıkları bulunabilir. Bu bize bazı ipuçları veriyor:

  1. Diğer Sentinel değer sızıntıları V8 sandbox kaçışına neden olabilir mi?

  2. Bu tür sorunlar resmi olarak bir güvenlik açığı olarak mı değerlendirilmelidir?

  3. Fuzz testlerinde daha fazla potansiyel sorun keşfetmek için Sentinel value ile ilgili değişkenlerin eklenmesi gerekli mi?

Her halükarda, bu tür sorunlar, hackerların tam istismar süresini büyük ölçüde kısaltabilir, bu nedenle büyük önem taşımaktadır.

Özel Açıklama Sentinel Value sızdırarak Chrome v8 HardenProtect'i aşma

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 4
  • Share
Comment
0/400
ArbitrageBotvip
· 07-11 10:52
Google ne yapıyor? Bu nasıl bir açık olabilir?
View OriginalReply0
SelfSovereignStevevip
· 07-10 20:07
Tarayıcı koruması nerede?
View OriginalReply0
StablecoinArbitrageurvip
· 07-10 19:58
hmm başka bir açığın, anlamlı bir arb fırsatı ortaya çıkmadan önce %99,8 düzeltme olasılığı olması...
View OriginalReply0
DefiPlaybookvip
· 07-10 19:45
Tarayıcıda da airdrop mu oldu? Bu dalgadan yararlanabilir miyiz?
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)