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

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-101894 — PoC en Python para CVE-2026-101894: path traversal mediante cadena de symlinks en @xhmikosr/decompress. Incluye laboratorio local de Node, escaneo de versión en lockfile y exploit de carga masiva de evil.tar. | Kitploit
Herramientas/GitHubGitHub/murrez/cve-2026-101894
ReconocimientoEscáneres de VulnerabilidadesAnálisis de VulnerabilidadesExplotaciónScripting y AutomatizaciónExplotación de Aplicaciones WebRecopilación de InformaciónPruebas de PenetraciónSeguridad de Cadena de Suministro
GitHubmurrez/cve-2026-101894

CVE-2026-101894

hace 4 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 →

PoC en Python para CVE-2026-101894: path traversal mediante cadena de symlinks en @xhmikosr/decompress. Incluye laboratorio local de Node, escaneo de versión en lockfile y exploit de carga masiva de evil.tar.

Ver Repositorio
Compartir

CVE-2026-101894 — @xhmikosr/decompress traversal de rutas mediante cadena de symlinks

PoC en Python 3 para CVE-2026-101894 — la extracción de archivos de Node.js en @xhmikosr/decompress (y en el paquete sin mantenimiento decompress) permite leer/escribir fuera del directorio de salida mediante una cadena de entradas symlink. Omite el endurecimiento de CVE-2026-53486. CVSS 3.1 9.1 Crítico.

PoCbithttps://pocbit.org/pocs/cve-2026-101894
Catálogohttps://pocbit.org/pocs/
Paquete@xhmikosr/decompress (mantenido), decompress (kevva, sin parchear)
APIPor defecto decompress(input, output)
CWECWE-22 traversal de rutas, CWE-59 seguimiento de enlaces
Corregido10.2.2 (10.x), 11.1.4 (11.x)
GHSAGHSA-hrh2-vp3x-79xf

Resumen de la vulnerabilidad (Türkçe)

decompress, al extraer archivos tar/zip, etc. en la carpeta de destino, aplica comprobaciones léxicas de rutas; sin embargo, con entradas symlink consecutivas el kernel puede resolver las entradas posteriores fuera del directorio de salida. Con un archivo controlado por el atacante, se puede sobrescribir / leer config, startup script o archivos sensibles → escenario de RCE (CI, contenedor, servicios de upload+extract).

Parche para @xhmikosr/decompress: 10.2.2 y 11.1.4. El paquete antiguo decompress hasta la versión 4.2.1 pertenece a la misma clase y no recibe parches — migre a @xhmikosr/[email protected]+.


Qué hace este PoC

ModoPropósito
--labInstala 11.1.3 dentro de lab/, verifica la escritura hacia fuera con la cadena de symlinks evil.tar
--write-evil-tarEscribe el archivo payload en disco (marcador POCBIT-101894-ESCAPED)
checkEn el objetivo remoto, ¿package.json / lockfile → versión ≤ vulnerable?
exploitPOST con evil.tar de cadena de symlinks a rutas comunes de upload (mass bulk)
mass--list + -j; hits.txt / exploited.txt

El exploit remoto no demuestra que el servidor realmente abra el archivo con decompress; se considera exploited la aceptación de upload 2xx + fingerprint de versión vulnerable. Para una prueba concluyente, use --lab.

hits.txt vs exploited.txt (caso frecuente)

EtapaQué demuestra
check → hits.txt/package.json o /package-lock.json expuesto y contiene decompress vulnerable
exploit → exploited.txtAl menos una de las URLs genéricas de upload probadas por el PoC devolvió HTTP 2xx

En la lista FOFA de Express, 500 escaneos → 2 hits es normal. 2 hits + 0 exploits (vulnerable_dep_no_upload_endpoint) también es normal: fuga de dependencia ≠ upload de archivo abierto al público. Para explotar este CVE, la aplicación debe abrir el archivo no confiable con decompress(); en sitios HID / aleatorios en :8088, las 8–11 rutas por defecto del PoC a menudo no existen.

# Prueba de la cadena (local)
python poc.py --lab

# Hits: solo dependencia + intento de upload
python poc.py --list hits.txt --mode exploit -j 2
# Esperado: upload_ok=0, status vulnerable_dep_no_upload_endpoint

Versiones afectadas

PaqueteVulnerableParcheado
@xhmikosr/decompress 11.x11.0.0 – 11.1.3≥ 11.1.4
@xhmikosr/decompress 10.x< 10.2.2≥ 10.2.2
decompress (kevva)≤ 4.2.1ninguno — migrar

Requisitos

cd CVE-2026-101894
pip install -r requirements.txt

Lab: Node.js + npm en PATH (se recomienda Linux/macOS para el comportamiento de extracción de symlinks).


Uso

Lab local (prueba recomendada)

python poc.py --lab
python poc.py --write-evil-tar evil.tar

Comprobación remota

python poc.py -u https://app.example --mode check
python poc.py --list targets.example.txt --mode check -j 30 --vuln-list hits.txt

Exploit remoto (mass)

python poc.py -u https://app.example --mode exploit --aggressive
python poc.py --list hits.txt --mode exploit -j 10 --aggressive --upload-paths /api/upload,/upload
FlagSignificado
--labPoC de extracción local con Node
--aggressiveExplotar incluso sin lockfile vulnerable expuesto
--upload-pathsRutas POST personalizadas separadas por comas
--exploited-listObjetivos donde el upload devolvió 2xx

Estructura de evil.tar (concepto)

Cadena de symlinks (simplificada):

  1. a/b/c/up → ../..
  2. a/b/escape → c/up/../..
  3. esc → ..
  4. Archivos regulares …/pocbit_escape.txt con payload marcador

Coincide con la clase de omisión mediante cadena de symlinks descrita en las notas de la versión 11.1.4 (corrección de realpath / contención).


Flujo de trabajo masivo

FOFA JSON → python _format_fofa.py fofa_results_1000.json
           → fofa_results_1000.json (url), fofa_results_1000.csv, fofa_targets_1000.txt

python poc.py --list fofa_targets_1000.txt --mode check -j 40  → hits.txt
python poc.py --list fofa_results_1000.csv --mode check -j 40   # url column
python poc.py --list hits.txt --mode exploit -j 8 --aggressive  → exploited.txt

La lista de dorks FOFA de upload/zip (fofa_results_1000) es más adecuada para la superficie de exploit que una lista de 500 solo de Express; aun así, hit = lockfile + decompress vulnerable, exploit = upload 2xx.


FOFA / descubrimiento (aplicaciones Node)

body="node_modules/@xhmikosr/decompress"
body="\"decompress\"" && body="package-lock.json"
header="X-Powered-By: Express" && body="/package.json"

(El lockfile rara vez es público en producción; la comprobación suele encontrar staging, artefactos de CI, hosting estático mal configurado.)


Referencias

  • PoCbit CVE-2026-101894
  • CVE.report
  • v11.1.4 release
  • Anterior: CVE-2026-53486 / GHSA-mp2f-45pm-3cg9

Legal

Pruebe únicamente sistemas que esté autorizado a evaluar. No suba archivos maliciosos a servicios de producción de terceros.


Descripción del repositorio de GitHub

CVE-2026-101894 PoC: @xhmikosr/decompress symlink-chain archive path traversal (bypass CVE-2026-53486). Node lab + lockfile scan + mass evil.tar upload exploit. CVSS 9.1. https://pocbit.org/pocs/cve-2026-101894
Descargar herramienta