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-2022-0847-Docker — Exploit Docker | Kitploit
Strumenti/GitHubGitHub/mrchucu1/cve-2022-0847-docker
Escalation di PrivilegiSicurezza dei ContenitoriAnalisi delle VulnerabilitàExploitApprendimento e FormazioneBinary ExploitationLab e Pratica
GitHubmrchucu1/cve-2022-0847-docker

CVE-2022-0847-Docker

Exploit Docker

Vedi Repository
121 anno 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

Dirty Pipe (CVE-2022-0847): Dimostrazione Pratica di un Exploit in Docker

CVE-2022-0847 Docker C Language

Questo repository fornisce un ambiente Docker interattivo e autonomo per dimostrare e analizzare in sicurezza la vulnerabilità di escalation dei privilegi "Dirty Pipe". È progettato come strumento educativo per i professionisti della sicurezza per comprendere i meccanismi di un exploit critico a livello di kernel in un ambiente controllato.


1. La Vulnerabilità Spiegata: Cos'è Dirty Pipe?

Dirty Pipe era una vulnerabilità critica scoperta nel kernel Linux (che colpiva le versioni dalla 5.8 in poi). Consentiva a un utente locale senza privilegi di sovrascrivere dati in file di sola lettura arbitrari.

L'impatto è grave: sovrascrivendo un file sensibile come /etc/passwd o un binario SUID, un attaccante poteva facilmente elevare i propri privilegi a root, ottenendo il controllo completo del sistema. Questa vulnerabilità era particolarmente pericolosa perché bypassava i controlli standard dei permessi dei file, un controllo di sicurezza fondamentale in Linux.

2. Architettura del Progetto: Usare Docker per un Laboratorio Sicuro

Questo progetto sfrutta Docker per creare un ambiente sicuro, isolato e intenzionalmente vulnerabile. Ciò consente a chiunque di studiare l'exploit senza rischiare la propria macchina host.

I componenti chiave sono:

  • Dockerfile: Definisce il modello del nostro container vulnerabile. Utilizza un'immagine base più datata (debian:bullseye-20210927-slim) nota per avere un kernel suscettibile a Dirty Pipe e automatizza il processo di configurazione.
  • exploit.c: Il codice C che implementa la logica dell'exploit, basato sul proof-of-concept originale di Max Kellermann.
  • Makefile: Un semplice makefile per compilare il codice C in un binario eseguibile all'interno del container.

3. Dimostrazione Pratica: Da Utente a Root

Questa guida ti accompagnerà nella creazione dell'ambiente e nell'esecuzione dell'exploit.

Prerequisiti: Devi avere Docker installato e in esecuzione sul tuo sistema.

Passo 1: Clona il Repository

Apri il terminale e clona questo progetto.

root@kitploit:~
git clone https://github.com/mrchucu1/CVE-2022-0847-Docker.git
cd CVE-2022-0847-Docker

Passo 2: Crea l'Immagine Docker Vulnerabile

Usa il comando docker build per creare l'immagine del container. Il Dockerfile gestirà tutte le dipendenze e compilerà il codice dell'exploit.

root@kitploit:~
docker build -t dirty-pipe-demo .

Passo 3: Esegui il Container ed Esegui l'Exploit

Ora esegui il container in modalità interattiva. Il flag --rm garantisce che il container venga eliminato all'uscita e -it ti fornisce una shell interattiva.

root@kitploit:~
docker run --rm -it dirty-pipe-demo

Ti ritroverai in una shell all'interno del container come utente senza privilegi (hacker@...:/$).

Ora esegui l'exploit precompilato:

root@kitploit:~
# You are currently an unprivileged user.
# Your prompt looks like this: hacker@<container_id>:/$
#
# Now run the exploit...
./exploit

Successo! L'exploit sovrascrive un binario SUID per concederti una shell di root. Il prompt del tuo terminale cambierà da $ a #, indicando che ora hai privilegi di root.

root@kitploit:~
# The exploit has succeeded.
# Your prompt is now a root shell: # whoami
root
#

4. Concetti Chiave di Sicurezza e Insegnamenti

Questo progetto è più che semplicemente eseguire uno script; è una dimostrazione pratica di principi di sicurezza critici rilevanti per il mio lavoro di Cloud Security Engineer:

  • Gli Exploit del Kernel Bypassano la Sicurezza a Livello di Applicazione: Questo dimostra che anche con permessi dei file perfetti, una vulnerabilità del kernel può minare l'intero modello di sicurezza di un sistema operativo, provando che la difesa in profondità è essenziale.
  • La Sicurezza dei Container è la Sicurezza dell'Host: Fornisce una prova tangibile che i container condividono il kernel dell'host. Un exploit del kernel eseguito all'interno di un container può portare a una fuga completa e al compromesso della macchina host. Ciò evidenzia l'importanza di utilizzare profili seccomp, gVisor o sistemi operativi ottimizzati per container in produzione.
  • La Criticità del Patch Management: Questo è un esempio concreto del perché gli aggiornamenti tempestivi del kernel siano una pratica di sicurezza non negoziabile in qualsiasi ambiente di produzione, specialmente sugli host dei container.
  • Comprendere la Superficie di Attacco: Costruendo l'ambiente dell'exploit, ho acquisito una maggiore consapevolezza di come gli attaccanti analizzano i sistemi e sfruttano difetti apparentemente minori nella gestione della memoria (come pipe e page cache) per ottenere il compromesso totale del sistema.

Avvertenza

Questo progetto e il suo codice sono destinati esclusivamente a scopi educativi e di ricerca. Non tentare di utilizzare questo exploit su alcun sistema per il quale non disponi di un'autorizzazione esplicita.

Scarica lo strumento