권한 분리

Privilege separation

컴퓨터 프로그래밍컴퓨터 보안에서 권한 분리는 최소 권한 원칙을 구현하기 위한 소프트웨어 기반 기술 중 하나입니다.권한 분리를 사용하면 프로그램은 특정 작업을 수행하기 위해 필요한 특정 권한으로 제한된 부분으로 분할됩니다.이는 컴퓨터 보안 취약성의 잠재적 손상을 완화하기 위해 사용됩니다.

권한 분리를 구현하는 일반적인 방법은 컴퓨터 프로그램을 두 의 프로세스로 나누는 것입니다.메인 프로그램은 권한을 폐기하고 작은 프로그램은 특정 작업을 수행하기 위해 권한을 유지합니다.그런 다음 소켓 쌍을 통해 두 이 통신합니다.따라서 프로그램 쌍이 특권 조작을 수행할 수 있더라도 대형 프로그램에 대한 공격이 성공하면 최소한의 접근권을 얻을 수 있습니다.

특권 분리는 기존에는 POSIX에 의해 지정된setuid(2)/setgid(2) 및 관련 시스템콜을 사용하여 실제 사용자 ID/그룹 ID와 유효한 사용자 ID/그룹 ID를 구별함으로써 이루어집니다.이들 위치가 올바르지 않으면 갭에 의해 네트워크에 광범위하게 침투할 수 있습니다.

많은 네트워크 서비스 데몬은 이미 알려진 포트 범위의 원시 소켓이나 인터넷 소켓을 여는 등의 특정 특권 작업을 수행해야 합니다.관리 유틸리티는 런타임에 특정 권한이 필요할 수도 있습니다.이러한 소프트웨어는 중요한 섹션이 완료된 후 권한을 완전히 취소함으로써 권한을 분리하는 경향이 있으며, 권한 없는 계정으로 실행 중인 사용자를 변경합니다.이 액션은 Unix 계열 운영체제에서는 루트 드롭이라고 불립니다.권한 없는 부분은 일반적으로 "nobody" 사용자 또는 동등한 개별 사용자 계정으로 실행됩니다.

권한 분리는 단일 프로그램의 기능을 여러 개의 작은 프로그램으로 분할한 다음 파일 시스템 권한을 사용하여 특정 부분에 확장된 권한을 할당하는 방법으로도 수행할 수 있습니다.이렇게 하면 서로 다른 프로그램이 운영 체제를 통해 서로 통신해야 하므로 잠재적인 취약성의 범위가 제한됩니다(특권이 낮은 부분의 크래시는 단순히 서비스 거부 공격을 유발하는 데 악용될 수 없기 때문입니다).

권한 분리는 주요 OpenB 중 하나입니다.SD 보안 기능Postfix의 구현은 포괄적인 권한 분리를 구현하는 데 초점을 맞췄습니다.권한 분리 및 보안을 염두에 두고 설계된 또 다른 이메일 서버 소프트웨어는 Dovcot입니다.Solaris는 특권 브라켓에 대해 별도의 기능 세트를 구현합니다.

「 」를 참조해 주세요.

외부 링크