UTS Namespace
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Namespace UTS (UNIX Time-Sharing System) to funkcja jądra Linux, która zapewnia izolację dwóch identyfikatorów systemowych: nazwy hosta i nazwy domeny NIS (Network Information Service). Ta izolacja pozwala każdemu namespace UTS mieć własną niezależną nazwę hosta i nazwę domeny NIS, co jest szczególnie przydatne w scenariuszach konteneryzacji, gdzie każdy kontener powinien wyglądać jak osobny system z własną nazwą hosta.
Gdy nowy namespace UTS jest tworzony, zaczyna od kopii nazwy hosta i nazwy domeny NIS z jego nadrzędnego namespace. Oznacza to, że w momencie utworzenia nowy namespace dzieli te same identyfikatory co jego nadrzędny. Jednak wszelkie późniejsze zmiany w nazwie hosta lub nazwie domeny NIS w obrębie namespace nie wpłyną na inne namespace.
Procesy w obrębie namespace UTS mogą zmieniać nazwę hosta i nazwę domeny NIS za pomocą wywołań systemowych sethostname()
i setdomainname()
, odpowiednio. Te zmiany są lokalne dla namespace i nie wpływają na inne namespace ani na system gospodarza.
Procesy mogą przemieszczać się między namespace za pomocą wywołania systemowego setns()
lub tworzyć nowe namespace za pomocą wywołań systemowych unshare()
lub clone()
z flagą CLONE_NEWUTS
. Gdy proces przemieszcza się do nowego namespace lub go tworzy, zacznie używać nazwy hosta i nazwy domeny NIS związanej z tym namespace.
Mountując nową instancję systemu plików /proc
, używając parametru --mount-proc
, zapewniasz, że nowa przestrzeń montowania ma dokładny i izolowany widok informacji o procesach specyficznych dla tej przestrzeni.
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)