Skip to content

리눅스 특수권한(rws)

보통 리눅스 권한은

  • r : read
  • w : write
  • x : execute

이지만 x 자리에 s 가 들어가는 경우가 있다.

setuid (Set User ID)

목적

  • 실행파일을 그 파일의 소유자 권한으로 실행하게 함.

표시

  • -rwsr-xr-x: 소유자 위치에 s -> setuid 실행 가능
  • '-rwSr-xr-x: S의 경우 setuid는 설정되어 있지만 실행 비트(x)가 꺼져있음 (비정상적)
  • 숫자(octet): 4000 (ex: chmod 4755 file > setuid + rwxr-xr-x)

자주보이는 setuid 바이너리

  • /usr/bin/passwd: 사용자 비밀번호 변경 시 암호DB(예: /etc/shadow) 에 쓰기 권한이 필요하기 때문에 root 권한으로 동작.

setgid (Set Grop ID)

목적

  • 파일: 실행파일을 그 파일의 그룹 권한으로 실행하게 함.
  • 그룹: 디렉토리에 setgid가 있을 경우 해당 디렉토리 안에 새로 생성된 파일, 디렉토리는 부모 디렉토리 그룹을 상속 받음.

표시

  • 파일 : -rwxr-sr-x
  • 그룹 : drwxr-sr-x
  • 숫자(octet): 2000 (ex: chmod 2755 dir)