
Comprobador de evidencias de use-cache de Next.js sin conexión para GHSA-673q-mjm6-r5xr. Evidencias de caché y arrays tipados de Next.js. Python autónomo; informes JSON/CSV/HTML; sin payloads de explotación.
Triaje offline para el RCE de typed-array en use-cache de Next.js
GHSA-673q-mjm6-r5xr · offline, archivo único, sin dependencias
next-cache-rce-check evalúa las versiones reportadas de Next.js, los metadatos de dependencias de npm y el contexto acotado de código fuente JS/TS frente al aviso del mantenedor para este único problema. Exporta JSON canónico, CSV o un informe HTML con marca.
Nunca ejecuta el código del proyecto, invoca un gestor de paquetes ni contacta con la red. Informa la incertidumbre con honestidad: la evidencia ausente, conflictiva o cualificada es unknown, nunca "segura".
[!IMPORTANT] La exposición potencial no es explotabilidad confirmada. Cada resultado mantiene
exploitability: not_tested. Una versión reportada, un lockfile o un patrón de código fuente no pueden mostrar la configuración desplegada, los backports del proveedor ni el estado real del parche. Trate cada resultado como una indicación para que un mantenedor lo verifique.
Sigue el enfoque conservador de reporte y licenciamiento de node2shell-check y php2shell-check.
El aviso del mantenedor identifica Next.js 16.0.0 hasta 16.4.0 como afectadas y 16.4.1 como corregida. Sus condiciones de aplicación son App Router, Cache Components y una función use-cache que devuelve múltiples typed arrays. El mantenedor aconseja actualizar incluso cuando la aplicación no parezca contener funciones coincidentes, y no enumera ninguna solución alternativa conocida para el código afectado. Consulte el aviso y la versión 16.4.1.
| Línea de versión | Afectadas (reportadas) | Corregida en |
|---|---|---|
| Next.js 16.0 a 16.4 | 16.0.0 a 16.4.0 | 16.4.1 |
La instantánea embebida se verificó el 2026-10-23 contra el aviso del mantenedor. En el momento de la verificación no se había asignado ningún identificador CVE en el aviso.
Este verificador clasifica únicamente versiones exactas simples en las líneas de versión verificadas 16.0–16.4. Las versiones mayores anteriores, las preversiones, las versiones cualificadas por el proveedor y las futuras líneas 16.5+ permanecen como unknown. No determina si una compilación reportada fue publicada ni si está presente un backport del proveedor.
next_cache_rce_check.py o un clon de este repositorio.No se necesita Node.js, gestor de paquetes, conexión de red ni paquete de terceros.
# Compare a version obtained from your deployed dependency.
python next_cache_rce_check.py --next-version 16.4.0
# Inspect a project copy you are authorized to read.
python next_cache_rce_check.py /path/to/project --asset-id service-a
# Save an offline HTML report, with optional branding.
python next_cache_rce_check.py /path/to/project --format html --brand "Example team" --logo team.png --output report.html
# Save canonical JSON for automation; exit 1 on an affected reported version.
python next_cache_rce_check.py /path/to/project --format json --output report.json --fail-on-finding
# Try the artificial fixture without installing anything.
python next_cache_rce_check.py examples/synthetic-project --asset-id synthetic-demo
El fixture es artificial y debería reportar potentially_affected (véase examples). No lo instale ni lo despliegue.
Proporcione un directorio de proyecto, al menos una --next-version, o ambos. No hay un escaneo implícito del directorio actual. --help lista todos los argumentos y --version imprime la versión de la herramienta.
| Opción | Propósito |
|---|---|
PROJECT | Directorio raíz estable de la aplicación. Ejecútelo una vez por aplicación; los grafos de paquetes del workspace y las raíces anidadas arbitrarias no se resuelven. |
--next-version VERSION | Una versión reportada de la instancia raíz de Next.js. Repita para conservar múltiples observaciones; la discrepancia se reporta como un conflicto, no se resuelve. |
--asset-id LABEL | Etiqueta no sensible (por defecto project). |
--format {json,csv,html} | Formato del informe (por defecto json). |
--output PATH | Escribe el informe en un archivo fuera del directorio del proyecto evaluado en lugar de en stdout. |
--force | Reemplaza un archivo de informe existente. Sin esta opción, los archivos existentes se conservan. |
--brand NAME, --logo PATH | Nombre para mostrar en HTML (por defecto CompleteTech LLC) y un logotipo local opcional en PNG/JPEG/GIF/WebP. |
--fail-on-finding, --fail-on-unknown | Sale con código 1 ante un informe completado que contenga resultados potentially_affected o unknown, respectivamente. |
Los destinos del informe deben estar fuera del directorio del proyecto evaluado, incluso cuando se usa --force; el verificador nunca escribe dentro del árbol del proyecto. Las versiones exactas aceptadas permanecen asociadas a sus fuentes de evidencia individuales en JSON, CSV y HTML, incluso cuando la discrepancia hace que la versión seleccionada sea desconocida. Para evaluar una versión verificada por separado sin metadatos de proyecto no soportados, use --next-version por sí sola. La sintaxis de los argumentos, los límites de valores y las protecciones se encuentran en la referencia de la CLI.