55. SELinux, TOMOYO Linux - 보안의 기본 |
* SELinux( Security-Enhanced Linux )
-
SELinux 는 TE(Type Enforcement)와 RBAC(Role Based Access Control)를 사용하여 시큐어 OS 의 요건인 강제 엑세스 제어(MAC)와 최소 특권을 구현하고 있다.
-
SELinux 에서는 사용자가 갖고 있는 권한보다 프로그램에 대해 허가된 조작이 더 우선시되는데, 이 조작을 기술하는 것이 TE 이며 RBAC 이다.
-
SELinux 에서는 프로그램에 대해 뭔가를 시킨다는 것을 ‘도메인'으로, 파일 등의 자원에 대해 ‘누구에 대해’, ‘뭔가를 시킨다’는 것을 ‘타입’으로 각각 정의할 수 있다.
이것을 TE 라고 부른다.
사용자에 대한 권한 부여도 도메인을 여러 개 묶은 ‘롤’을 사용하여 구현한다.
* TOMOYO linux
-
SELinux 는 제대로 운용할 수 있으면 상당히 강력한 보안을 구현할 수 있지만 TE 와 RBAC 가 난해하다는 것이 문제이다.
이를 해결하기 위한 어프로치 중 하나로 TOMOYO Linux이다.
이는 시큐어 OS 의 요건인 MAC(강제 엑세스 제어)와 최소 특권을 구현하기 위해 학습, 확인, 강제라는 세 가지 모드를 구분하여 사용한다.
-
학습 모드에서 TOMOYO Linux 를 가동시켜 평소의 운용 관리를 함으로써 평소에 해야 할 것을 시스템에게 가르친다. (강제 엑세스 권한은 적용되지 않으며, 폴리시를 생성하게 된다.)
확인 모드에서는 가르쳐 놓은 내용이 적절한지를 확인한다. (폴리시 적용 시의 시스템 동작을 확인하며, 위반 시 로그를 출력한다. 폴리시를 조정하기도 하며, 강제 엑세스 권한은 마찬가지로 적용되지 않는다.)
강제 모드에서는 MAC 과 최소 특권 상태를 구현한다. (폴리시와 강제 엑세스 권한을 적용한다.)
SELinux 와 비교하여 운용이 직관적이고 알기 쉽다는 특징이 있다.
* 시큐어 OS 의 예
-
기존의 Linux 에서는 Root 권한을 갖고 있는 사용자는 시스템에 대한 조작을 무엇이든 실행할 수 있다.
-
SELinux 에서는 각 사용자의 ‘롤’에 따라 액세스 권한이 부여된다.
root 라도 RBAC 에서 결정된 것 이상의 일은 아무 것도 실행할 수 없다.
-
SELinux 는 세세한 폴리시 할당을 할 수 있다는 장점이 있지만, SELinux 자체의 운용 관리가 상당히 난해하다는 단점이 있다.
TOMOYO Linux 는 동작 모드로 실시하는 작업을 알고 있으면 일련의 폴리시를 설정할 수 있다는 장점이 있으나, 세세한 폴리시 할당에는 전문 지식이 필요하다.
'프로그래밍 놀이터 > 보안' 카테고리의 다른 글
[도서 정리] 57. 포트 스캔 - 보안의 기본 (0) | 2019.12.06 |
---|---|
[도서 정리] 56. 씬 클라이언트 - 보안의 기본 (0) | 2019.12.05 |
[도서 정리] 54. 시큐어 OS - 보안의 기본 (0) | 2019.12.03 |
[도서 정리] 53. 랜섬웨어 - 보안의 기본 (0) | 2019.12.02 |
[도서 정리] 52. 크로스 사이트 리퀘스트 포저리(CSRF) - 보안의 기본 (0) | 2019.12.01 |
댓글