IPC Namespace
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Informazioni di base
Un namespace IPC (Inter-Process Communication) è una funzionalità del kernel Linux che fornisce isolamento degli oggetti IPC di System V, come code di messaggi, segmenti di memoria condivisa e semafori. Questo isolamento garantisce che i processi in diversi namespace IPC non possano accedere o modificare direttamente gli oggetti IPC degli altri, fornendo un ulteriore livello di sicurezza e privacy tra i gruppi di processi.
Come funziona:
Quando viene creato un nuovo namespace IPC, inizia con un set completamente isolato di oggetti IPC di System V. Ciò significa che i processi in esecuzione nel nuovo namespace IPC non possono accedere o interferire con gli oggetti IPC in altri namespace o nel sistema host per impostazione predefinita.
Gli oggetti IPC creati all'interno di un namespace sono visibili e accessibili solo ai processi all'interno di quel namespace. Ogni oggetto IPC è identificato da una chiave unica all'interno del suo namespace. Sebbene la chiave possa essere identica in diversi namespace, gli oggetti stessi sono isolati e non possono essere accessibili tra i namespace.
I processi possono spostarsi tra i namespace utilizzando la chiamata di sistema
setns()
o creare nuovi namespace utilizzando le chiamate di sistemaunshare()
oclone()
con il flagCLONE_NEWIPC
. Quando un processo si sposta in un nuovo namespace o ne crea uno, inizierà a utilizzare gli oggetti IPC associati a quel namespace.
Lab:
Crea diversi Namespace
CLI
Montando una nuova istanza del filesystem /proc
se utilizzi il parametro --mount-proc
, garantisci che il nuovo namespace di mount abbia una visione accurata e isolata delle informazioni sui processi specifiche per quel namespace.
Docker
Controlla in quale namespace si trova il tuo processo
Trova tutti gli IPC namespace
Entra all'interno di un namespace IPC
Inoltre, puoi entrare in un altro namespace di processo solo se sei root. E non puoi entrare in un altro namespace senza un descrittore che punti ad esso (come /proc/self/ns/net
).
Crea oggetto IPC
Riferimenti
Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Last updated