그룹 0에 있다는 것은 무엇을 의미합니까?


11

상속받은 시스템의 여러 사용자는 / etc / passwd에서 그룹을 0으로 설정했습니다. 그게 무슨 뜻이야? 그들은 본질적으로 완전한 루트 권한을 얻습니까?

시스템은 CentOS 5를 실행하고 있으며 이전 관리자도 해당 그룹에 있지만 사용자는 주로 시스템 관련 항목 인 것으로 보입니다.

$ grep :0: /etc/passwd
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
operator:x:11:0:operator:/root:/sbin/nologin
jsmith:x:500:0:Joe Smith:/home/jsmith:/bin/bash
$

답변:


12

사용자 0 (루트 사용자)과 달리 그룹 0에는 커널 수준에서 특별한 권한이 없습니다.

전통적으로 그룹 0은 많은 유닉스 변형에 대해 특별한 권한을 가졌습니다. su루트 (root 암호를 입력 한 후)가 될 수있는 권한 또는 암호를 입력하지 않고 루트가 될 수있는 권한입니다. 기본적으로 그룹 0의 사용자는 시스템 관리자입니다. 그룹 0에 특별한 권한이 있으면이를 호출합니다.wheel

리눅스에서, 그룹 0과 같은 권한 상승 유틸리티에 특별한 의미가없는 sudo및 su중. 왜 데비안이 기본적으로 '휠'그룹을 만들지 않습니까?를 참조하십시오 .

내가 아는 한 CentOS에서 그룹 0은 특별한 의미가 없습니다. 기본 sudoers파일 에서 참조되지 않습니다 . 해당 시스템의 관리자가 유닉스 전통을 에뮬레이션하기로 결정하고 그룹 0의 구성원에게 일부 특수 권한을 부여 할 수 있습니다. PAM 구성 ( /etc/pam.conf, /etc/pam.d/*) 및 sudoers 파일 ( /etc/sudoers)을 확인하십시오 (이것은 그룹 0이 특수 권한을 부여받은 유일한 장소는 아니지만 가장 가능성이 높은 장소입니다).


3

커널은 사용자 ID 0과 달리 그룹 0에 대한 특별한 권한을 부여하지 않습니다. 그러나 0은 일반적으로 root사용자 의 기본 그룹 이므로,이 사람들은 루트가 소유 한 파일에 액세스하거나 수정할 수 있음을 의미합니다. 종종 그룹 0이 소유합니다).

또한 일부 프로그램 은 그룹 0을 특별하게 취급 할 수 있습니다. 예를 들어, su일부 BSD 시스템 에서는 그룹 0 멤버에게 비밀번호없는 루트 액세스 권한을 부여합니다 .

따라서 수퍼 유저 클래스는 아니지만 여전히 누가 멤버인지주의해야합니다.


2

이는 단순히 기본 그룹이 root다른 그룹이 아니라 그룹 설정이있는 파일에 액세스 할 때 그룹 설정을 사용 한다는 것을 의미합니다 root.

대부분의 표준 시스템 파일은 소유 root.root하지만 그룹 권한은 일반적으로 세계 권한과 동일하므로 시스템에서 표준 파일에 대한 그룹 권한을 변경하지 않은 한 그 자체로는 아무런 이점이 없습니다.

전체 루트 권한을 부여하지 않습니다.


0

나는 파티에 조금 늦었지만 오늘 나에게 같은 질문을하고 다음 결론에 도달했다.

이것은 최소 권한 의 원칙에 위배 되므로 피해야합니다.

보다 구체적으로 이것은 많은 일반 파일과 디렉토리뿐만 아니라 시스템 커널과 대화하는 많은 특수한 파일에 대한 사용자 (읽기, 쓰기 또는 실행) 권한을 부여 할 수 있습니다.

그러나 이것은 시스템마다 다를 수 있으므로 모두 찾아서 검사하기 위해 이것을 실행해야합니다 (첫 번째 읽기, 두 번째 쓰기, eXecute는 독자를위한 운동으로 남습니다).

find / -group 0 -perm -g+r ! -perm -o+r  -ls | less 
find / -group 0 -perm -g+w ! -perm -o+w  -ls | less

이들 중 일부는 일반 파일 및 디렉토리 (예 : 홈 디렉토리 / root) 일 수 있지만 다른 일부는 커널에 대한 인터페이스 인 의사 파일 일 수 있습니다 (/ proc 및 / sys와 같이).

예 :

find /sys -type f -group 0 -perm -g+w ! -perm -o+w  -name 'remove'
/sys/devices/pci0000:00/0000:00:17.0/0000:13:00.0/remove
/sys/devices/pci0000:00/0000:00:17.0/remove
/sys/devices/pci0000:00/0000:00:16.6/remove
...
etc.

lspci -v |less해당 장치가 무엇인지 확인하는 데 사용 합니다 (예 : 저장소 컨트롤러, USB 컨트롤러, 네트워크 및 비디오 카드 등).


귀하가 링크 한 Wikipedia 페이지는 "이 원칙은 사용자 계정을 부여하거나 의도 된 기능을 수행하는 데 필수적인 권한 만 처리하는 것을 의미합니다"라고 말합니다. 그러나 이러한 계정에 그룹 0에 속한 액세스 권한이 필요하지 않다는 주장은 없습니다.
— Scott
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.