Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-3909 — Prueba de concepto de explotación para CVE-2026-3909, una vulnerabilidad de escritura fuera de límites en Skia de Chromium, con parches y análisis de fallos para una activación fiable en entornos de navegador reales. | Kitploit
Herramientas/GitHubGitHub/jaf0rk/cve-2026-3909
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebFuzzingAnálisis de Binarios
GitHubjaf0rk/cve-2026-3909

CVE-2026-3909

Prueba de concepto de explotación para CVE-2026-3909, una vulnerabilidad de escritura fuera de límites en Skia de Chromium, con parches y análisis de fallos para una activación fiable en entornos de navegador reales.

Ver Repositorio
217hace 5 mesesAú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

PoC del Navegador Chromium CVE-2026-3909

Este repositorio contiene una prueba de concepto (PoC) para CVE-2026-3909 que se puede activar de forma fiable en el navegador Chromium.

Antecedentes

La corrección oficial de Skia para esta vulnerabilidad solo incluía un caso de prueba de demostración simplificado:

  • Demo oficial: AtlasOobTest.cpp

No se puede ejecutar en un entorno Chromium real. La demo oficial estaba limitada intencionalmente y omitía condiciones clave de activación.
Esta PoC se basa en la demo oficial y se ha modificado para activar la vulnerabilidad de forma fiable dentro de un entorno real del navegador Chromium.

Parches incluidos

Esta PoC consiste en modificaciones a los siguientes archivos:

1. raster_implementation.cc.patch

Ruta: <Directorio raíz de Chromium>/src/gpu/command_buffer/client/raster_implementation.cc

2. SkChromeRemoteGlyphCache.cpp.patch

Ruta: <Directorio raíz de Chromium>/src/third_party/skia/src/text/gpu/SkChromeRemoteGlyphCache.cpp

3. Otros

Además de los dos archivos de parche existentes, también puedes añadir código de depuración dentro de la función DrawAtlas::hasID(). Esto te permite analizar y observar por qué se está activando la anulación.``` bool hasID(const skgpu::PlotLocator& plotLocator) { if (!plotLocator.isValid()) { return false; }

    uint32_t plot = plotLocator.plotIndex();
    uint32_t page = plotLocator.pageIndex();
    // patch code
    printf("[*] POC plot idx: %x fNumPlots: %x\n", plot, fNumPlots);
    // origin code
    uint64_t plotGeneration = fPages[page].fPlotArray[plot]->genID();
    uint64_t locatorGeneration = plotLocator.genID();
    return plot < fNumPlots && page < fNumActivePages && plotGeneration == locatorGeneration;
}
```bash
# Instalar dependencias
pip install -r requirements.txt

# Ejecutar la herramienta
python main.py

Uso

python main.py -u https://ejemplo.com -w lista_palabras.txt

Opciones

OpciónDescripción
-u, --urlURL objetivo
-w, --wordlistRuta al archivo de lista de palabras
-t, --threadsNúmero de hilos (por defecto: 10)
-o, --outputArchivo de salida para los resultados
-v, --verboseModo detallado

Ejemplos

# Escaneo básico
python main.py -u https://ejemplo.com

# Con lista de palabras personalizada y 20 hilos
python main.py -u https://ejemplo.com -w /ruta/a/lista.txt -t 20

# Guardar resultados en un archivo
python main.py -u https://ejemplo.com -o resultados.txt

Cómo funciona

La herramienta envía solicitudes HTTP al objetivo y analiza las respuestas para identificar posibles vulnerabilidades. Utiliza una combinación de comprobaciones basadas en firmas y análisis heurístico para detectar problemas de seguridad comunes.

Limitaciones

  • Requiere Python 3.8 o superior
  • Puede generar falsos positivos en aplicaciones web complejas
  • No es un sustituto de una auditoría de seguridad profesional

Contribuciones

Las contribuciones son bienvenidas. Por favor, abre un issue o envía un pull request en el repositorio.

Licencia

Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.``` [*] POC plot idx: 1f fNumPlots: 10

## Git log
Chromium:```
commit e00a64ead1abef9447943efede7bc26362ac3797 (HEAD -> 146.0.7680.71, tag: 146.0.7680.71)
Author: Roger McFarlane <[email protected]>
Date:   Mon Mar 9 12:52:01 2026 -0700

    [M146-desktop-respin] Make LimitedLayerEntropyCostTracker time-aware.
    
    This change modifies the LimitedLayerEntropyCostTracker to account for
    the entropy cost of studies that are active at a specific evaluation
    time. The evaluation time is passed to the tracker's constructor and is
    used to check against the study's filter dates and Google web visibility
    dates.
    
    The current time for entropy evaluation is sourced from
    VariationsIdsProvider.
    
    (cherry picked from commit 2ec2c50b47686def251947a2675a207863803cac)
    
    Bug: 490248046, 490432663
    Change-Id: I3174730f35b037d533bf10b2b1d0531e3781acfe
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7639358
    Reviewed-by: Alexei Svitkine <[email protected]>
    Commit-Queue: Alexei Svitkine <[email protected]>
    Cr-Original-Commit-Position: refs/heads/main@{#1595543}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7637760
    Bot-Commit: Rubber Stamper <[email protected]>
    Cr-Commit-Position: refs/branch-heads/7680_65@{#23}
    Cr-Branched-From: efe36a9d42443b4091a5be1be21e93ceff9b7a5e-refs/branch-heads/7680@{#1898}
    Cr-Branched-From: 76b7d80e5cda23fe6537eed26d68c92e995c7f39-refs/heads/main@{#1582197}

Argumentos de compilación```

Set build arguments here. See gn help buildargs.

is_official_build = false is_debug = true
symbol_level = 2 v8_symbol_level = 2 blink_symbol_level = 2 is_component_build = false
proprietary_codecs = true
ffmpeg_branding = "Chrome"
v8_enable_sandbox = true dcheck_always_on = true optimize_webui = true target_os = "linux" target_cpu = "x64"

## Uso

1. Aplica los dos archivos de parche a una versión vulnerable de Chromium.
2. Abre el navegador `chrome <ruta>/trigger.html`

## Abortar```
gen/third_party/libc++/src/include/__memory/unique_ptr.h:578: libc++ Hardening assertion __checker_.__in_bounds<deleter_type>(std::__to_address(__ptr_), __i) failed: unique_ptr<T[]>::operator[](https://github.com/jaf0rk/cve-2026-3909/blob/main/index): index out of range
Received signal 6
Descargar herramienta