Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Palimpsest — CVE-2026-74945 · Divulgación de heap sin inicializar mediante una fuente web manipulada (sec-high) | Kitploit
Herramientas/GitHubGitHub/defineid/palimpsest
Generación de PayloadsAnálisis de VulnerabilidadesExplotaciónSeguridad Web
GitHubdefineid/palimpsest

Palimpsest

CVE-2026-74945 · Divulgación de heap sin inicializar mediante una fuente web manipulada (sec-high)

Ver Repositorio
hace 3 díasAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Palimpsest

CVE-2026-74945 · Divulgación de montón no inicializado a través de una fuente web manipulada

Severidad alta (seguridad). CWE 908 y CWE 200. Corregido en Firefox 154. Bugzilla 2057808. Alcanzable desde una página web ordinaria mediante @font-face.

Resumen

Firefox sanea las fuentes web mediante OTS antes de usarlas. Tres defectos se alinean para que una fuente manipulada entregue montón de proceso no inicializado de vuelta a la página. Una única llamada a measureText lo lee aproximadamente dos bytes a la vez en una ventana de 64 KB.

Causa raíz

El flujo de salida de OTS crece con moz_xrealloc, que nunca pone a cero la memoria. Su Seek acepta cualquier posición hasta el tamaño de la asignación y nunca rellena el hueco con ceros. forget dimensiona el búfer hasta el mayor desplazamiento alcanzado. Cualquier hueco entre la última escritura y un Seek hacia adelante se entrega a la persona que llama con montón antiguo.

Una subtabla cmap de formato 14 con un nonDefaultUVSOffset grande hace que el serializador avance con Seek y deje el hueco dentro de la fuente emitida. Una subtabla complementaria de formato 4 con un id_range_offset impar en el último segmento se emite literalmente. La comprobación de límites de la búsqueda de glifos usa el resto de la cmap completa en lugar de la subtabla. Un salto a la región de la subtabla vecina pasa.

MapCharToGlyphFormat4 aterriza en el segmento manipulado y devuelve un id de glifo leído del hueco. Su avance hmtx se puede medir directamente desde canvas.

El flujo

Hueco no inicializado filtrado mediante measureText

Reproducción

root@kitploit:~
pip install fonttools brotli
python3 make_poc_font.py        # builds poc.woff
# serve this folder and open poc.html

poc.html imprime el ancho de avance de U+FFFF en cada lectura. Cada valor sigue un id de glifo leído del hueco. Para ver bytes no inicializados distintos de cero, usa una compilación de mozjemalloc con MSan o relleno de basura. Afecta a Windows a través de DWrite y a macOS a través de CoreText. OTS se ejecuta dentro del proceso y no está aislado.

Impacto

Una divulgación controlable y repetible desde la web de montón de proceso no inicializado. Puede revelar punteros o secretos.

Corrección

Dos cambios. Cualquiera de ellos rompe la cadena. Pon a cero el rango recién asignado en el flujo de salida de OTS. Comprueba la longitud de la subtabla de formato 4 para que la búsqueda no pueda acotar contra el resto de la cmap. Firefox incorporó ambos.

Créditos

Abdulaziz Alasaiqah · https://azoz.my/writeups.html

Descargar herramienta