강제적 접근 제어

위키백과, 우리 모두의 백과사전.

강제적 접근 제어(Mandatory access control, MAC)는 컴퓨터 보안에서 운영체제나 데이터베이스가 주체나 개시자가 개체나 대상에 액세스하거나 일반적으로 일종의 작업을 수행하는 능력을 제한하는 접근 제어 유형을 의미한다. 운영체제의 경우 주제는 일반적으로 프로세스 또는 스레드이다. 객체는 파일, 디렉터리, TCP/UDP 포트, 공유 메모리 세그먼트, IO 장치 등과 같은 구성물이다. 주체와 객체는 각각 일련의 보안 속성을 갖는다. 주체가 객체에 액세스하려고 시도할 때마다 운영 체제 커널에 의해 시행되는 권한 부여 규칙은 이러한 보안 속성을 검사하고 액세스가 발생할 수 있는지 여부를 결정한다. 개체에 대한 주체의 모든 작업은 작업이 허용되는지 확인하기 위해 일련의 권한 부여 규칙(즉, 정책)에 대해 테스트된다. 데이터베이스 관리 시스템은 액세스 제어 메커니즘에서 강제적 접근 제어를 적용할 수도 있다. 이 경우 개체는 테이블, 뷰, 프로시저 등이다.

강제적 접근 제어를 사용하면 이 보안 정책은 보안 정책 관리자가 중앙에서 제어한다. 사용자는 정책을 무시할 수 없으며, 예를 들어 제한될 파일에 대한 액세스 권한을 부여할 수 없다. 대조적으로, 객체에 접근하는 주체의 능력을 통제하는 임의 접근 제어(DAC)는 사용자가 정책 결정을 내리거나 보안 속성을 할당할 수 있는 능력을 허용한다. (사용자, 그룹 및 읽기-쓰기-실행 권한으로 구성된 기존 유닉스 시스템이 DAC의 예이다.) MAC 지원 시스템을 사용하면 정책 관리자가 조직 전체의 보안 정책을 구현할 수 있다. MAC에서는(DAC와는 달리) 사용자가 실수로든 의도적으로든 이 정책을 재정의하거나 수정할 수 없다. 이를 통해 보안 관리자는 원칙적으로 모든 사용자에게 시행되도록 보장되는 중앙 정책을 정의할 수 있다.

역사적으로나 전통적으로 MAC는 다단계 보안(MLS) 및 특수 군사 시스템과 밀접하게 연관되어 왔다. 이러한 맥락에서 MAC는 MLS 시스템의 제약 조건을 충족하기 위한 높은 수준의 엄격함을 의미한다. 그러나 최근에는 MAC가 MLS 틈새 시장에서 벗어나 더욱 주류가 되기 시작했다. 리눅스용 SELinuxAppArmor, 윈도우용 필수 무결성 제어(Mandatory Integrity Control)와 같은 최신 MAC 구현을 통해 관리자는 MLS의 엄격함이나 제약 없이 네트워크 공격 및 맬웨어와 같은 문제에 집중할 수 있다.

같이 보기[편집]

출처[편집]

외부 링크[편집]

  • Weblog post on the how virtualization can be used to implement Mandatory Access Control.
  • Weblog post from a Microsoft employee detailing Mandatory Integrity Control and how it differs from MAC implementations.
  • GWV Formal Security Policy Model A Separation Kernel Formal Security Policy, David Greve, Matthew Wilding, and W. Mark Vanfleet.