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
CVE-2023-26136 — Este repositorio contiene una solución para la vulnerabilidad CVE-2023-26136. | Kitploit
Herramientas/GitHubGitHub/morrisel/cve-2023-26136
Análisis EstáticoAnálisis de VulnerabilidadesAnálisis de CódigoSeguridad de Cadena de SuministroPapers e InvestigaciónAprendizaje y Educación
GitHubmorrisel/cve-2023-26136

CVE-2023-26136

Este repositorio contiene una solución para la vulnerabilidad CVE-2023-26136.

Ver Repositorio
hace 1 añoAú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

Investigación sobre la vulnerabilidad CVE-2023-26136

Descripción

Las versiones del paquete tough-cookie anteriores a la 4.1.3 son vulnerables a la contaminación de prototipos (Prototype Pollution) debido al manejo inadecuado de cookies cuando se usa CookieJar en modo rejectPublicSuffixes=false. Este problema surge por la forma en que se inicializan los objetos.

Objetivo y corrección

Este proyecto tiene como objetivo proporcionar una versión parcheada de [email protected] que elimine la vulnerabilidad CVE-2023-26136 garantizando al mismo tiempo la compatibilidad hacia atrás.

Para corregir la vulnerabilidad, modificamos memstore.js para asegurar que las cookies se almacenen en un objeto sin riesgos de contaminación de prototipos, reemplazando la inicialización estándar de objetos por Object.create(null). Esto evita la manipulación del prototipo mediante nombres de cookies maliciosamente diseñados.

Estructura

En el directorio tough-cookie/ podemos encontrar dos directorios adicionales que contienen las versiones original y parcheada de tough-cookie:

  1. Versión original (Original v2.5.0/) – tough-cookie 2.5.0 sin modificar, que es vulnerable.
  2. Versión parcheada (v2.5.0-PATCHED/) – Una versión modificada que incluye una corrección para CVE-2023-26136.

Instalación

Para instalar la versión original vulnerable:

root@kitploit:~
npm install [email protected]

Detalles del parche

El parche aplicado cambia la forma en que se almacenan las cookies: this.idx = {}; se cambió a: this.idx = Object.create(null);

Esto evita que los atacantes inyecten propiedades en la cadena de prototipos y exploten la vulnerabilidad.

La vulnerabilidad en tough-cookie (CVE-2023-26136) surge debido al uso de un objeto JavaScript plano {} para almacenar cookies. Dado que {} hereda de Object.prototype, puede ser explotado inyectando propiedades como proto, lo que conduce a la contaminación de prototipos. Esto podría permitir a un atacante manipular el comportamiento de la aplicación o causar problemas de seguridad.

Para mitigar esto, el parche reemplaza {} con Object.create(null), que crea un objeto sin prototipo ([[Prototype]]: null). Esto garantiza que el objeto no herede ninguna propiedad de Object.prototype, impidiendo que los atacantes inyecten propiedades maliciosas.

Al usar Object.create(null), aislamos eficazmente el almacén de cookies de la herencia de prototipos no deseada, haciéndolo más seguro frente a ataques de contaminación de prototipos.

Guía de instalación e instrucciones de parcheo

Para instalar la versión parcheada localmente, sigue estos pasos:

  1. Extrae el paquete parcheado (opcional para verificación):

tar -tzf tough-cookie-2.5.0.tgz

Si es necesario, extráelo:

tar -xzf tough-cookie-2.5.0.tgz

  1. Instala el paquete parcheado:

npm install ./tough-cookie-2.5.0.tgz

  1. Verifica la corrección: Ejecuta el script de prueba:

node index.js

Salida esperada:

EXPLOITED SUCCESSFULLY - para la versión original

EXPLOIT FAILED - para la versión parcheada

Compatibilidad con Node.js

La versión parcheada ha sido probada en Node.js 20 (LTS) para garantizar la compatibilidad con el entorno de ejecución estable más reciente.

Repositorio y fork

El repositorio original de tough-cookie (Salesforce) se encuentra actualmente en la versión 5.1.1. Dado que estamos trabajando con la versión 2.5.0, no es posible hacer un fork directo del repositorio principal. En su lugar, creamos un repositorio separado que contiene tanto la versión original como la parcheada. Puedes encontrarlo aquí:

Repositorio de GitHub - Versión bifurcada

CI/CD

  • No se utilizaron herramientas de CI/CD en esta investigación.
  • Familiarizado con Docker (nivel básico).

Referencia

Para más detalles, visita la página oficial de CVE: CVE-2023-26136 - NVD

Descargar herramienta