특수 권한
🛠️set-uid(set-gid)
- 소유자(그룹) UID 상속
- 실행 파일에 set-uid(set-gid) 비트가 설정되어있으면, 그 프로그램을 누가 실행하든 실행하는 동안에는 실 UID가 해당 파일의 소유자(그룹) UID로 바뀜.
ex) ls -l /usr/bin/passwd -rwsr-x-r-x 1 root root ...
-rws -> set-uid 비트(s)가 설정 passwd 실행파일을 실행하는 동안 root권한으로 실행.
- 필요한 시스템 자원 접근
- passwd는 /etc/passwd와 같은 root 전용 파일을 수정해야 하므로 일시적으로 루트 권한이 필요.
- set-uid(set-gid) 덕분에 별도 sudo 없이도 안전하게 필요한 작업만 수행.
- 프로세스 전체가 아니라 "실행 파일" 한정(set-uid만)
- 루트 권한은 그 프로그램 코드가 실행되는 동안에만 유효.
- 프로그램이 종료되면 권한 승계도 끝남.
- set-uid 설정 방법
- chmod 4775 <file_name> : set-uid
- chmod 2775 <file_name> : set-gid
🛠️stick-bit