시스템 보안 - 리눅스 특수권한(SetUID, SetGID, Stickybit)
SetUID와 SetGID가 설정된 모든 파일을 찾으려는 명령어가 바르게 기술된 것은? 2
① find / -type f \(-perm -1000 -0 perm -2000 \) -print
② find / -type f \(-perm -2000 -0 perm -4000 \) -print
③ find / -type f \(-perm -100 -0 perm -200 \) -print
④ find / -type f \(-perm -200 -0 perm -400 \) -print
리눅스 특수권한에 대해 살펴보겠습니다.
리눅스는 보통 사용자와 파일에 권한을 부여해 가장 기초적인 보안 체계를 이룹니다.
일반적으로 파일이나 디렉토리에는 user, group, other 권한이 존재하고
각각 읽기, 쓰기, 실행 권한을 부여할 수 있습니다.
이런 일반 권한 이외에도 리눅스에는 특수권한이란 것이 존재합니다.
- SetUID
SetUID가 설정된 파일을 실행할 때 일시적으로 파일 소유자의 권한을 얻어 실행할 수 있도록 합니다.
예를들어 root 권한으로 지정된 프로그램에 SetUID가 지정되어 있다면 실행할 때 root 권한으로 실행됩니다.
SetUID를 적용하기 위해서는 기존의 허가권 앞에 4를 붙이면 됩니다.
ex) # chmod 4644 파일이름
<기존 권한에 실행권한이 없으면 대문자 S, 있으면 소문자 s로 표시됩니다.>
SetUID가 적용되어 있는 파일 중 가장 대표적인 것은 /usr/bin/passwd 파일입니다.
해당 파일은 계정의 비밀번호를 변경할 수 있도록 하는 명령어 실행 파일로
/etc/passwd로 접근하여 비밀번호를 변경하도록 합니다.
실제 /etc/passwd의 권한은 소유주인 root만이 변경이 가능하도록 설정이 되어있습니다.
만약 /usr/bin/passwd에 SetUID가 적용되어있지 않다면 일반 사용자들은
항상 관리자를 거쳐 자신의 비밀번호를 변경해야합니다.
이런 번거로움을 줄이기위해 일반 사용자들도 root의 권한으로 /etc/passwd 파일을 수정 가능하도록 설정한 것입니다.
- SetGID
SetUID와 마찬가지로 SetGID가 설정된 파일을 실행할 때 일시적으로 파일 소유그룹의 권한을 얻어 실행하도록 합니다.
SetGID를 적용하기 위해서는 기존의 허가권 앞에 2를 붙이면 됩니다.
ex) # chmod 2644 파일이름
<기존 권한에 실행권한이 없으면 대문자 S, 있으면 소문자 s로 표시됩니다.>
- Sticky Bit
Sticky Bit가 설정된 디렉토리에 파일을 생성하면 해당 파일은 생성한 사람의 소유가 되며
소유자와 root만이 해당 파일에 대한 삭제 및 수정에 대한 권한을 가질 수 있습니다.
즉, Sticky Bit가 설정된 디렉토리안에 누구나 파일을 생성할 수는 있지만 삭제는 본인과 관리자만 가능하게 되는겁니다.
Sticky Bit를 적용하기 위해서는 기존의 허가권 앞에 1를 붙이면 됩니다.
ex) # chmod 1644 디렉토리이름
<기존 권한에 실행권한이 없으면 대문자 T, 있으면 소문자 t로 표시됩니다.>
일반적으로 유닉스 운영체제는 파일이나 디렉토리의 소유자, 소유그룹만이 삭제, 수정을 할 수 있도록 권한을 지정하지만
모든 사용자들이 파일 생성, 수정, 삭제 할 수 있는 디렉토리가 있습니다.
/tmp와 /var/tmp 디렉토리는 모든 사용자가 사용하는 공용 디렉토리입니다.
그렇다보니 파일의 소유자가 아닌 다른 사용자가 777권한인 파일을 삭제, 수정하는 부분에서 문제가 발생하게 됩니다.
이를 방지하기 위해 Sticky Bit를 설정하여 공용 디렉토리라 하더라도
그 파일의 소유자와 관리자만이 삭제, 수정 권한을 가질 수 있습니다.
- 참고로 특수 권한은 해당 자리의 기존 권한에 실행 권한이 있어야 정상적으로 적용이 됩니다.
[출처]:https://idchowto.com/?p=42667
'IT > 정보보안' 카테고리의 다른 글
최고의 무료 보안 도구 20선 - ITWORLD 에 소개된 글 (0) | 2019.08.27 |
---|---|
시스템 보안 - 취약점 점검용 도구 (0) | 2019.08.27 |
[정보보안기사] 시스템 보안 - 윈도우 계정과 권한 체계 (0) | 2019.08.27 |
시스템 보안 - 리눅스 프로세스 관리 (0) | 2019.08.27 |
정보보안 관리 및 법규 - 업무연속성 계획 BCP (0) | 2019.08.27 |
댓글