Basic Security/_System2008.06.18 12:02
Sticky Bit

Sticky Bit는 초기 유닉스에서 부터 사용되어 오던 용어이다. 초기에는 한번 사용한 프로그램의 text segment 들을 빠르게 사용하기 위해 가상메모리에 올려놓는 용도로 사용하여 프로그램의 속도를 향샹시키기 위해 사용하였다.

하지만 지금의 sticky bit의 의미는 보안적인 요소를 추가한 권한 관리를 위해 사용된다. 일반적으로 유닉스나 리눅스는 8진수나 문자의 권한 표현 방식을 사용한다. sticky bit는 8진수 1000, 문자형식 't', 'T' 로 설정한다.

유닉스나 리눅스 시스템은 "-rwx-wxr-x" 으로 권한이 표현되는데 sticky bit를 설정하게 되면 'other' 부분이 실행부분이 't'나 'T' 로 변경된다. 이렇게 sticky bit가 설정된 파일이나 디렉터리는 'other'에게 쓰기 권한이 부여되어 있어야 한다.

'other'에게 쓰기 권한이 있는 경우 파일을 생성, 수정, 삭제할 수 있는데 보안적인 이유로 'other'에게 파일이 사용권한은 부여하지만 지우지 못하게 할 필요가 있다. 이럴 경우 sticky bit를 사용해 파일의 삭제를 못하게 방지한다. sticky bit가 설정된 파일은 파일의 소유자(Owner)나 관리자(Superuser or root) 만이 삭제할 수 있다.

디렉터리 구조에서 /tmp 영역이 이와 같이 sticky bit 가 설정되어 사용된다.
Posted by Proneer

댓글을 달아 주세요