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)
UTS(유닉스 시간 공유 시스템) 네임스페이스는 두 개의 시스템 식별자, 즉 호스트 이름과 NIS(네트워크 정보 서비스) 도메인 이름의 격리를 제공하는 리눅스 커널 기능입니다. 이 격리는 각 UTS 네임스페이스가 자신의 독립적인 호스트 이름과 NIS 도메인 이름을 가질 수 있게 하며, 이는 각 컨테이너가 자신의 호스트 이름을 가진 별도의 시스템처럼 보이도록 해야 하는 컨테이너화 시나리오에서 특히 유용합니다.
새로운 UTS 네임스페이스가 생성되면, 부모 네임스페이스의 호스트 이름과 NIS 도메인 이름의 복사본으로 시작합니다. 이는 생성 시 새로운 네임스페이스가 부모와 동일한 식별자를 공유함을 의미합니다. 그러나 네임스페이스 내에서 호스트 이름이나 NIS 도메인 이름에 대한 이후의 변경은 다른 네임스페이스에 영향을 미치지 않습니다.
UTS 네임스페이스 내의 프로세스는 각각 sethostname()
및 setdomainname()
시스템 호출을 사용하여 호스트 이름과 NIS 도메인 이름을 변경할 수 있습니다. 이러한 변경은 네임스페이스에 국한되며 다른 네임스페이스나 호스트 시스템에 영향을 미치지 않습니다.
프로세스는 setns()
시스템 호출을 사용하여 네임스페이스 간에 이동하거나 unshare()
또는 clone()
시스템 호출을 사용하여 CLONE_NEWUTS
플래그와 함께 새로운 네임스페이스를 생성할 수 있습니다. 프로세스가 새로운 네임스페이스로 이동하거나 생성할 때, 해당 네임스페이스와 연결된 호스트 이름과 NIS 도메인 이름을 사용하기 시작합니다.
새로운 인스턴스의 /proc
파일 시스템을 마운트하면 --mount-proc
매개변수를 사용하여 새로운 마운트 네임스페이스가 해당 네임스페이스에 특정한 프로세스 정보에 대한 정확하고 격리된 뷰를 갖도록 보장합니다.
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE) GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)