Vulnerabilidad de fuga de valores Sentinel del motor V8: Análisis de un nuevo método de escape de sandbox en Chrome

Discusión sobre los riesgos de seguridad del Valor Centinela en el motor V8 de Chrome

El valor centinela es un valor especial en los algoritmos, que a menudo se utiliza como condición de terminación en algoritmos de bucle o recursivos. En el código fuente de Chrome hay muchos valores centinela. Investigaciones recientes han demostrado que la divulgación de objetos específicos de valor centinela puede llevar a la ejecución arbitraria de código dentro de la sandbox de Chrome.

Este artículo discutirá un nuevo objeto de valor Sentinel: Oddball No Inicializado. Este método de bypass apareció por primera vez en un informe de vulnerabilidad, proporcionado por investigadores de seguridad con el código completo. Es notable que este método aún se puede utilizar en la última versión de V8 y no ha sido reparado.

Este método tiene una gran versatilidad:

  1. En una vulnerabilidad CVE determinada, el poc inicial era la filtración de un oddball interno no inicializado.

  2. En otro informe de vulnerabilidad CVE, los investigadores filtraron directamente UninitializedOddball; aunque la cadena de explotación estaba incompleta en ese momento, ya se mostraron riesgos de seguridad.

  3. En un informe reciente sobre vulnerabilidades se presentó un método completo de explotación.

Estos casos ilustran la universalidad y gravedad del problema. Hasta ahora, cierto software de mensajería no ha corregido esta vulnerabilidad.

Aplicación del valor centinela en V8

En el código fuente de V8 se definen una gran cantidad de objetos nativos, que se organizan en memoria de manera adyacente. Una vez que se exponen objetos nativos que no deberían filtrarse a JavaScript, es posible ejecutar cualquier código dentro de la sandbox.

Para verificar la efectividad de este método en la última V8, podemos modificar la función nativa de V8 para filtrar Oddball no inicializado en JavaScript.

Revelación exclusiva sobre cómo el valor de Sentinel filtrado elude Chrome v8 HardenProtect

Evitar la protección HardenType

Podemos construir código que, cuando una función devuelve UninitializedOddball, implementa una lectura arbitraria. Al analizar el código ensamblador optimizado, se puede observar que la función solo verifica si las propiedades del objeto son correctas, pero no comprueba los valores correspondientes a las propiedades, calculando directamente el desplazamiento para obtener elementos del arreglo según la semántica de JavaScript, lo que provoca confusión de tipos y permite la lectura arbitraria.

Revelación exclusiva sobre cómo el valor de Sentinel filtrado evita Chrome v8 HardenProtect

Revelación exclusiva sobre cómo el valor de Sentinel se filtró para eludir Chrome v8 HardenProtect

Revelación exclusiva sobre cómo el valor de Sentinel se filtra para eludir Chrome v8 HardenProtect

Revelación exclusiva sobre cómo eludir Chrome v8 HardenProtect mediante la filtración de Sentinel Value

Revelación exclusiva sobre cómo eludir Chrome v8 HardenProtect a través de la filtración de Sentinel Value

Revelación exclusiva sobre cómo eludir Chrome v8 HardenProtect a través de la filtración de Sentinel Value

De manera similar, cualquier escritura también se puede construir mediante un método similar. Se sugiere al optimizar la función que devuelve elementos de la matriz, añadir una verificación del mapa de la matriz para evitar calcular directamente el valor de retorno del desplazamiento.

Aviso de riesgos de seguridad

El análisis indica que cierto software de mensajería aún no ha reparado esta vulnerabilidad. En sistemas x86, debido a la falta de compresión de direcciones, la lectura y escritura arbitrarias son directas con respecto a todo el proceso. Aunque se ha activado ASLR, debido a que el archivo es grande, todavía hay una alta probabilidad de leer y escribir contenido crítico. Combinando métodos como el análisis PE, puede ser posible completar una cadena de explotación completa en un corto período de tiempo.

Esta vez, la vulnerabilidad de seguridad no solo involucra un solo fallo, sino que también ha reducido drásticamente la dificultad de explotación de algunas vulnerabilidades similares anteriores. Los hackers casi no necesitan investigar más para lograr una explotación completa, incluyendo todas las vulnerabilidades similares que se reportaron anteriormente.

Exclusiva: Revelando cómo el valor de Sentinel se utiliza para eludir Chrome v8 HardenProtect

Resumen

Este artículo discute brevemente el método para realizar lecturas arbitrarias a través de la filtración de Uninitialized Oddball. En V8 hay muchos otros valores centinela que pueden presentar riesgos de seguridad similares. Esto nos da algunas pistas:

  1. ¿La filtración de otros valores Sentinel también podría llevar a una fuga de sandbox V8?

  2. ¿Deberían considerarse oficialmente este tipo de problemas como vulnerabilidades de seguridad?

  3. ¿Es necesario incluir variables relacionadas con el valor centinela en las pruebas de fuzz para descubrir más problemas potenciales?

En cualquier caso, este tipo de problemas puede acortar significativamente el período en que los hackers pueden realizar un aprovechamiento completo, lo cual merece una alta atención.

Revelación exclusiva sobre cómo el valor de centinela filtrado elude Chrome v8 HardenProtect

Ver originales
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.
  • Recompensa
  • 4
  • Compartir
Comentar
0/400
ArbitrageBotvip
· 07-11 10:52
¿Qué está haciendo Google? Esto puede tener vulnerabilidades.
Ver originalesResponder0
SelfSovereignStevevip
· 07-10 20:07
¿Dónde está la protección del navegador?
Ver originalesResponder0
StablecoinArbitrageurvip
· 07-10 19:58
hmm otro exploit con un 99.8% de probabilidad de ser parcheado antes de cualquier oportunidad de arbitraje significativa...
Ver originalesResponder0
DefiPlaybookvip
· 07-10 19:45
¿También hay airdrop en el navegador? ¿Se puede aprovechar esta oportunidad?
Ver originalesResponder0
  • Anclado
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)