Learning
토픽 76 / 85·보안과 보호

Unix 특수 권한 (setuid, setgid, Sticky Bit)

Unix 특수 권한 (setuid, setgid, Sticky Bit)

Unix/Linux 파일시스템에서 파일이나 디렉토리에 설정하는 특수 권한 비트로, 실행 파일의 권한 상승(setuid/setgid)과 디렉토리 삭제 제한(Sticky Bit)을 제공하는 보안 메커니즘

특징: 특수 권한 비트(4000/2000/1000), 보안 민감, chmod로 설정

구성요소

  • setuid(4000): 실행 파일에 설정 시 소유자 권한으로 실행, 예: passwd(root 소유) → 일반 사용자가 /etc/shadow 수정 가능
  • setgid(2000): 실행 파일에 설정 시 그룹 권한으로 실행, 디렉토리에 설정 시 새 파일이 디렉토리 그룹 상속
  • Sticky Bit(1000): 디렉토리에 설정 시 파일 소유자만 삭제 가능, 예: /tmp 디렉토리

보안 위험: setuid root 프로그램의 취약점 → 권한 상승 공격, 최소 setuid 원칙 적용

비교: setuid(실행시소유자권한/보안위험) vs 일반권한(실행자권한/안전) vs sudo(명시적권한상승/감사가능)

연관: 파일 시스템, 권한, 보안, DAC, chmod