Saltar enlaces

¿Explotaciones en CSS? !

Bien, respira hondo.

Será interesante conocer esta vulnerabilidad una vez que se asegure de que su navegador no se vea afectado utilizando la siguiente tabla.

Navegador basado en Chromium ¿Estoy a salvo?
Google Chrome Asegúrate de estar corriendo Versión 145.7632.75 o superior. Ir a Configuración > Acerca de Chrome y buscar actualizaciones.
borde de microsoft Asegúrate de estar ejecutando la versión. 145.0.3800.58 O más tarde. Haga clic en los tres puntos (…) en el lado derecho de la ventana. Hacer clic Ayuda y comentarios> Acerca de Microsoft Edge.
vivaldi Asegúrate de estar ejecutando la versión. 7.8 O más tarde. Hacer clic icono V (Menú) En la esquina superior izquierda, seleccione Ayuda > Acerca de.
corajudo Asegúrate de estar ejecutando la versión. v1.87.188 O más tarde. Haga clic en el menú de hamburguesas en la esquina superior derecha y seleccione Ayuda > Acerca de Brave.

Entonces, actualizaste tu navegador y cruzaste los dedos. Cuando puedas volver a unir toda la oración, tu primera pregunta es: ¿CSS realmente tiene una reputación dudosa? La primera vulnerabilidad de día cero en navegadores basados ​​en Chromium en 2026?

Quiero decir, El canal de actualización de Chrome dice Arreglaron una vulnerabilidad de alta gravedad descrita como “(u)ser after free en CSS” el viernes 13th ¡Bastante! Si no puedes confiar en una versión con una descripción y fecha como esta, ¿en qué más puedes confiar? Google le da crédito al investigador de seguridad Shaheen Fazim por informar sobre la vulnerabilidad. El LinkedIn de este chico dice que lo es. Cazador de errores profesionalyo diría que se lo merece La mayor recompensa de errores posible encontrar algo agencia gubernamental Dice “CSS en Google Chrome anterior a 145.0.7632.75 permite a atacantes remotos ejecutar código arbitrario dentro de un sandbox a través de una página HTML diseñada”.

¿Es esto realmente una vulnerabilidad de CSS?

Algo no cuadraba. incluso Este investigador de seguridad promete usar CSS en lugar de JavaScriptpor lo que sus lectores preocupados por la seguridad no necesitan habilitar JavaScript cuando leen su blog. Ella cree en la seguridad de CSS, aunque sabe lo suficiente sobre CSS como para crear una Emulador CSS x86 puro (P.D. guau). A estas alturas, la mayoría de nosotros lo damos por sentado. Posibles problemas de seguridad en CSS Relativamente leve. Seguramente no estamos viviendo de repente en un mundo donde CSS puede secuestrar el sistema operativo de alguien, ¿verdad?

Bueno, en mi opinión, los titulares que describen este error como una vulnerabilidad de CSS en Chrome acaparan un poco los titulares, porque lo hacen parecer una vulnerabilidad de CSS pura, como si CSS y HTML maliciosos fueran suficientes para ejecutarla. Para ser honesto, cuando leí estos artículos por primera vez por la mañana antes de salir corriendo a tomar el tren para ir al trabajo, la forma en que estaban redactados me hizo imaginar CSS malicioso, como por ejemplo:

.malicious-class {
  vulnerable-property: 'rm -rf *';
}

En una versión ficticia y de pesadilla del error imaginado por mi imaginación maliciosa, parte de este CSS podría “diseñarse” para inyectar un comando de shell en algún lugar ejecutándose en la máquina de la víctima. Incluso al releer los informes con más atención, sienten que fueron deliberadamente engañosos, y no se trata sólo de mí. Una de las primeras preguntas que me hizo un amigo preocupado por la seguridad fue: “Pero… ¿no es CSS súper verificable?” Luego profundicé y descubrí qué hay en CSS. prueba de concepto Dado que la vulnerabilidad no es maliciosa, ¡la validación de CSS no ayuda!

cuando Artículo de SitePoint sobre CVE-2026-2441 Curiosamente, le miente al lector acerca de cuál es la vulnerabilidad y, en lugar de eso, describe un error diferente de gravedad media que permite que el valor de representación de un campo de entrada se pase a un servidor malicioso a través de una imagen cargada en CSS. Ese no es el caso con esta vulnerabilidad.

Esta no es una verdadera vulnerabilidad de CSS en el sentido de que JavaScript es la parte que explota el error. Reconozco que las líneas de código que crean las condiciones necesarias para que un script malicioso realice este ataque se encuentran Google Chrome parpadeando Elementos del motor CSS, pero el CSS involucrado no es la parte maliciosa.

Entonces, ¿cómo funciona esta vulnerabilidad?

La forma en que CSS participa en la vulnerabilidad es que el motor de renderizado de Chrome convierte algo de CSS en modelo de objetos CSS. Considere el siguiente CSS:

@font-feature-values VulnTestFont {
  @styleset {
    entry_a: 1;
    entry_b: 2;
    entry_c: 3;
    entry_d: 4;
    entry_e: 5;
    entry_f: 6;
    entry_g: 7;
    entry_h: 8;
  }
}

Cuando se analiza este CSS, CSSFontFeaturesValueMap ser añadido a la colección CSSRule objetos en document.styleSheets(0).cssRules. Hay un error en la forma en que Chrome administra la memoria HashMap Estructura de datos representada por JavaScript CSSFontFeaturesValueMapque inadvertidamente permite que un script malicioso acceda a la memoria que no debería. Esto por sí solo no es suficiente para causar ningún daño aparte de bloquear el navegador, pero puede constituir Vulnerabilidad de uso después de la liberación (UAF).

La descripción de Chrome del parche menciona que “Google es consciente de que la vulnerabilidad CVE-2026-2441 existe en estado salvaje”, aunque guardan silencio sobre los detalles del exploit completo de extremo a extremo, por razones obvias. Preocupantemente, @font-feature-values Esto no es nada nuevo (existe desde principios de 2023), pero el descubrimiento de la vulnerabilidad de uso después de la liberación de un extremo a otro puede ser relativamente reciente. Esto tendría sentido si el código que creó la vulnerabilidad fuera antiguo, pero alguien hubiera completado recientemente un exploit funcional. si miras esto Explicación detallada de la vulnerabilidad Use After Free 2020 en Chrome Adentro API de audio de Internetsentirá que acceder a la memoria liberada es solo una pequeña parte de lo que hace que una vulnerabilidad UAF sea efectiva. sistema operativo moderno Crea aros por los que los atacantes deben pasar.lo que haría este ataque bastante difícil.

Los ejemplos reales de este tipo de vulnerabilidades son bastante complejos, especialmente en el caso de Chrome, donde sólo se pueden activar declaraciones de bajo nivel de forma indirecta. Pero si conoce C y quiere comprender los principios básicos mediante un ejemplo simplificado, puede Prueba este desafío de programación. Otra forma de ayudar a comprender estas ideas es esta Publicación mediana sobre Chrome reciente CSSFontFeaturesValueMap desarrollarque incluye una hermosa analogía en la que puntero La sujeción del objeto es como una correa, incluso después de soltar a su perro, usted todavía sostiene la correa, pero el atacante cuelga la correa del gato (llamado confusión de tipos), por lo que cuando le ordenas a tu “perro” que ladre, el agresor le enseña a su gato a pensar que la orden “ladrar” significa hacer algo malicioso.

El mundo vuelve a estar seguro, pero ¿por cuánto tiempo?

Mencioné que la solución de una línea que hizo Chrome fue cambiar el código Blink para usar copia profunda de HashMap La base es CSSFontFeaturesValueMap en lugar de un puntero a él, por lo que no es posible hacer referencia a la memoria liberada. En comparación, Firefox parece Representador CSS reescrito en Rust Por tanto, la gestión de la memoria tiende a realizarse automáticamente. cromo Soporte para Rust a partir de 2023. Una de las motivaciones mencionadas fue “más seguro (En general, C++ menos complejo, sin errores de seguridad de memoria en el sandbox)” y “Mejorar la seguridad (Aumente la cantidad de líneas de código sin errores de seguridad de la memoria y reduzca la densidad de errores del código) aleación de cromo” Dado que las vulnerabilidades similares a UAF parecen haber surgido en Chromium a lo largo de los años, y estas vulnerabilidades tienden a ser muy graves cuando se descubren, es posible que se necesite un enfoque más integral para defenderse contra tales vulnerabilidades, por lo que no tengo que asustarlo con otro artículo similar.

Home
Account
Cart
Search
¡Hola! ¡Pregúntame lo que quieras!
Explore
Drag