Trusted Solaris 관리 개요

Trusted Software 관리 이해

표준 UNIX 시스템에서는 루트(수퍼유저)에게 모든 권한이 있으므로 모든 파일을 읽고 쓰고 모든 프로그램을 실행하며 모든 프로세스에 종료 신호를 보낼 수 있습니다. Trusted Solaris 환경에서는 루트의 시스템 보호 무시 권한이 별개의 사용 권한- 즉, 사용자에게 할당되는 인증 및 응용프로그램에게 할당되는 특권으로 분리되어 있습니다. 특권, 인증 또는 유효 UID/GID를 사용하는 응용프로그램을 트러스트 응용프로그램이라고 합니다. 다른 응용프로그램에서와 같이 트러스트 응용프로그램은 실행 프로파일이라는 번들형 체계를 통해 사용자 및 역할에 할당됩니다. 실행 프로파일에는 응용프로그램, 인증, 특권 및 유효 UID/GID가 포함될 수 있습니다. 특정 트러스트 응용프로그램을 실행하려면 인증과 특권의 권한 조합이 필요합니다.

그림 1-9 다음 그림은 사용자와 역할이 Trusted Solaris 환경에서 실행 프로파일을 사용하여 트러스트 응용프로그램에 액세스하는 방식을 나타내고 있습니다. 사용자는 직접 또는 역할을 통해 프로파일에 액세스할 수 있습니다. 프로파일에는 이름이 있으며 CDE 동작, 명령, 인증, 특권 및 유효 UID/GID 등의 조합이 일부 포함되어 있습니다. 이들 개념은 다음 절에서 더 자세히 설명합니다.

그림 1-9 Trusted Solaris에서 트러스트 응용프로그램이 할당되는 방식

Graphic

실행 프로파일 이해

실행 프로파일은 개별 사용자나 역할에게 트러스트 응용프로그램과 기능을 할당하기 위한 기초 구실을 하는 번들형 체계입니다. 실행 프로파일은 다음과 같은 내용을 포함할 수 있습니다.

Trusted Solaris에서 사용할 수 있는 프로파일

Trusted Solaris는 아래 표에 수록된 실행 프로파일을 제공합니다. 이 표에는 네 가지 기본값 역할에 대한 할당도 수록됩니다.

표 1-4 기본 역할에 대한 할당이 있는 실행 프로파일

프로파일 이름 

목적 

보안 관리 

시스템 관리 

시스템 운영 

루트 

All

모든 실행 가능 항목에 액세스할 수 있지만 특권은 없습니다. 

 

 

 

All Actions 

모든 실행 항목에 액세스할 수 있지만 특권은 없습니다. 

 

 

 

 

All Authorizations

모든 인증을 제공합니다. 시험용 

 

 

 

 

All Commands 

모든 명령에 액세스할 수 있지만 특권은 없습니다.  

 

 

 

 

Audit Control

감사 하위 시스템 관리용이지만 파일을 읽을 수는 없습니다. 

 

 

 

Audit Review

감사 내역 읽기 

 

 

 

Base Actions

필요한 특권을 사용하여 프론트 패널의 응용프로그램에 액세스할 수 있습니다. 

Basic Commands

모든 역할에 필요한 기본 명령에 액세스할 수 있습니다. 

boot 

시스템 시작 및 종료 

 

 

 

 

Convenient Authorizations

일반 사용자에게 인증을 제공합니다. 

 

 

 

 

cron

크론 작업에 필요한 명령을 제공합니다. 

 

 

 

Cron Management

크론 및 작업 관리 

 

 

 

Cron Security

관리 역할을 위한 크론 및 작업 관리 

 

 

 

Customs Admin Role

비어 있는 프로파일이며, 기본 Admin 역할에 보안 속성을 추가합니다. 

 

 

 

Custom Oper Role

비어 있는 프로파일이며, 기본 Oper 역할에 보안 속성을 추가합니다. 

 

 

 

Custom Root Role

비어 있는 프로파일이며, 기본 Root 역할에 보안 속성을 추가합니다. 

 

 

 

Custom Secadmin Role

비어 있는 프로파일이며, 기본 Secadmin 역할에 보안 속성을 추가합니다. 

 

 

 

Device Management 

장치를 할당 및 해제하고 오류 조건을 수정합니다. 

 

 

Device Security

장치의 관리 및 구성 

 

 

 

dtwm 

윈도우 관리자 사용 

 

 

 

 

Login Enable

부팅 후 관리자와 다른 사용자가 로그인할 수 있는 인증을 제공합니다. 

 

 

 

File System Management

파일 시스템 관리 

 

 

File System Security

파일 시스템 레이블 및 기타 보안 속성 관리 

 

 

 

inetd 

inetd 대몬에 의해 실행되는 프로그램 

 

 

 

 

Mail Management

우편 전송의 구성, 별명의 구성 및 우편 대기열 점검 

 

 

 

Maintenance and Repair

시스템의 유지보수 또는 수리에 필요한 명령을 제공합니다. 

 

 

 

Media Backup

파일을 백업합니다. 

 

 

 

Media Restore

백업된 파일을 복원합니다. 

 

 

 

Network Management

호스트 및 네트워크 구성 관리 

 

 

Network Security 

트러스트 네트워크 데이터베이스 수정을 위한 인증으로 네트워크 및 호스트 보안 관리 

 

 

NIS+ Management

보안에 관련하지 않은 NIS+ 스크립트/명령에 액세스할 수 있습니다. 

 

 

 

NIS+ Security Administration

NIS+ 보안 관련 스크립트/명령에 액세스할 수 있습니다. 

 

 

Object Access Management

파일에 대한 소유권 및 허용 변경 

 

 

 

Object Label Management

파일의 레이블 변경 및 전체 시스템에 있는 레이블 설정 

 

 

 

Object Privilege Management

실행 파일에 대한 특권 변경 

 

 

 

Outside Accred

외부 시스템 인가 범위를 운영합니다. 

Printer Security

프린터 장치의 관리 

 

 

Privileged Shell

개발자들이 모든 특권을 사용하여 Bourne 쉘, Korn 쉘 및 C 쉘을 실행하게 합니다. 보안 환경용이 아닙니다. 

 

 

 

 

Process Management

크론 및 작업을 포함한 현재 프로세스 관리 

 

 

Software Installation 

응용프로그램 소프트웨어을 시스템에 추가 

 

 

User Management

사용자 생성 및 수정. (보안 조치로서) 자체적으로 수정할 수는 없습니다. 

 

 

User Security

사용자 보안 속성 생성 및 수정. (보안 조치로서) 자체적으로 수정할 수는 없습니다. 

 

 

실행 프로파일의 내용은 Trusted Solaris Administror's Procedure의 부록 A "Profile Summary table "을 참조하십시오.

보완 프로파일 쌍

표 1-4를 보면 다음의 실행 프로파일 쌍들이 상호 보완적임을 알 수 있습니다. 즉, 서로가 논리적으로 관련되어 있지만 보안 목적을 위해 Trusted Solaris 환경에서는 서로 분리되어 있습니다.

실행 프로파일 재구성

관리자의 작업 중 하나는 사용 가능한 트러스트 프로그램을 확인하여 그 프로그램의 민감도 레이블 범위, 작업을 수행하는 데 필요한 특권 및 그 프로그램이 수록된 프로파일을 파악하는 일입니다. 관리자는 이 정보를 사용하여 사용자 및 역할에게 프로파일을 할당하기 위한 전략을 수립할 수 있습니다. 기본 프로파일 및 프로파일 내용에 관한 전체 목록은 tsolprof(4)Trusted Solaris Administrator's Procedures의 부록 A "Profiles"를 참조하십시오.

역할 재구성

사이트에서 네 개의 기본 역할을 사용하지 않는 경우, 관리자는 사용자 관리자의 프로파일 대화 상자를 사용하여 다른 역할에 프로파일을 재할당할 수 있습니다(Trusted Solaris Administrator's Procedures의 제4장 "사용자의 실행 프로파일 지정" 참조).

사용자가 실행 프로파일에서 응용프로그램에 액세스하는 방법

사용자는 프론트 패널, 응용프로그램 관리자 및 파일 관리자를 통해 프로파일의 CDE 동작에 액세스할 수 있습니다. 사용자는 사용자 및 역할 각자에 대한 프로파일의 응용프로그램으로 제한하도록 수정된 프로파일 쉘이라는 Bourne 쉘 버전을 통해 프로파일의 명령에 액세스합니다. 관리자는 사용자 관리자를 통해 사용자 또는 역할에 프로파일 쉘을 할당합니다("사용자의 실행 프로파일 지정" 참조). 프로파일 쉘은 사용자 활성화를 위해, 즉 일반 사용자는 사용할 수 없는 명령, 특권 및 인증에 대한 액세스를 사용자에게 제공하기 위해 사용되거나 또는 사용자를 제한하기 위해, 즉 사용자의 특정 명령 집합에 대한 액세스를 제한하기 위해 사용됩니다. 프로파일 쉘은 관리자가 특권이나 인증을 포함한 프로파일을 가진 역할 계정 또는 사용자를 설정할 때 필요합니다.

사용자로서 운영하거나 또는 트러스트 역할을 가정함으로써 사용자는 해당 사용자 또는 역할의 프로파일을 통해 사용할 수 있는 응용프로그램 및 보안 속성에 액세스할 수 있습니다. 두 개의 프로파일이 하나의 응용프로그램에 액세스하지만 특권 및 인증에 따라 서로 다른 기능 레벨을 통해 액세스합니다. 예를 들어, Basic 실행 프로파일에서 파일 관리자로 액세스하는 사용자에게는 별도의 특권이나 인증이 없습니다. Object Label Management 프로파일에서 파일 관리자로 액세스하는 사용자는 파일에 쓸 때 file_mac_write 특권을 행사하여 MAC 보호를 무시하거나 또는 file_dac_read 특권을 행사하여 기본 UNIX 사용 권한 없이도 파일을 읽을 수 있습니다.

역할 이해

역할은 사용자가 특정 응용프로그램과 실행에 필요한 인증 및 특권에 액세스하기 위해 일반적으로 사용되는 특수 사용자 계정입니다. 동일한 역할을 담당할 수 있는 모든 사용자는 동일한 역할 홈 디렉토리를 가지며, 동일한 환경에서 운영하고 동일한 파일에 액세스합니다. 사용자는 역할로 직접 로그인하는 것이 불가능하며 역할을 담당하기 전에 자신의 사용자 계정으로 로그인해야 합니다(이 요구 사항은 감사를 위해 사용자의 실제 UID가 기록되도록 하기 위함입니다). 각각의 역할에는 프론트 패널에서 버튼을 누르면 액세스할 수 있는 각자의 작업 공간이 있습니다. 사용자는 역할을 담당하기 전에 역할 암호를 입력하여 허가를 받아야 합니다.

관리자에게는 세 개의 사전 정의된 관리 역할 이외에도 새로운 역할을 작성해야 할 경우가 있습니다(실제로 시스템 운영자는 비관리 역할입니다). 역할을 작성하는 주요 이유는 특수 명령, 동작 및 필요한 특권을 사용할 수 있고, 일반 사용자와 구분할 필요가 있으며, 공유 홈 디렉토리, 파일 및 환경을 사용하는 명확한 작업 책임을 정의하기 위함입니다.(명령과 특권을 다른 사용자의 홈 디렉토리와 파일로부터 분리해야 하는 경우, 역할이 아닌 특수 실행 프로파일을 작성해야 합니다. "실행 프로파일 이해" 참조)

역할에는 관리 및 비관리라는 두 가지 유형이 있습니다. 관리 역할은 보안 관련 작업에 사용됩니다. 관리 역할은 시스템 관리 그룹 14에 할당된 특권 NIS+ 원칙들로서, 대부분의 관리 응용프로그램의 실행에 모두 필요한 트러스트 경로 속성을 포함하고 있는 프로세스를 시작할 수 있습니다. 비관리 역할은 보안에 관련하지 않는 작업과 공유 파일 및 디렉토리의 장점을 활용하는 작업에 사용됩니다. 소유권 순환 작업은 비관리 역할을 응용한 좋은 예입니다.

인증 이해

인증은 사용자 또는 역할이 Trusted Solaris가 금지한 작업을 수행하도록 허가하는 별도의 권한입니다. 예를 들어, 정상적인 경우 사용자는 특정 윈도우로부터 민감도 레이블이 그 특정 윈도우의 민감도 레이블에 대해 지배 관계에 있는 다른 윈도우로 정보를 붙여 넣을 수 없습니다. 업그레이드된 윈도우에 붙여넣기를 승인하면 사용자는 이러한 상황에서도 정보를 붙여 넣을 수 있습니다.

Trusted Solaris에서는 관리자가 40번 이상의 인증을 할당할 수 있습니다. 이들 인증은 아래의 표에 수록된 범주 중 하나에 속합니다.

표 1-5 인증 범주

인증 범주 

범주에 속한 인증의 예제 

로그인

로그인 활성화 - 재부팅 후 사용자가 로그인을 할 수 있습니다.

원격 로그인 - 사용자가 Telnet이나 FTP 등의 프로그램을 사용하여 원격으로 로그인할 수 있습니다.

파일 제어

파일 민감도 레이블의 업그레이드 - 사용자가 파일의 민감도 레이블을 업그레이드할 수 있습니다.

파일 감사 플래그의 설정 - 사용자가 파일에 대해 감사 플래그를 설정할 수 있습니다.

장치 제어

장치 할당 - 사용자가 장치, 장치의 민감도 레이블 및 정보 레이블을 할당할 수 있습니다.

윈도우 제어

다운그레이드된 윈도우에 붙여넣기 - 사용자가 다운그레이드된 윈도우로 정보를 붙여 넣을 수 있습니다.

다른 SL 작업 공간 사용 - 사용자가 응용프로그램 윈도우를 다른 민감도 레이블을 가진 작업 공간으로 이동할 수 있습니다.

레이블 제어

정의된 모든 레이블의 사용 - 사용자가 시스템 인가 범위에서 모든 레이블을 사용할 수 있습니다.

파일 관리

끌어 놓기로 파일 내용을 우회하여 보기 - 사용자가 끌어 놓기로 파일의 내용을 볼 수 있습니다.

응용프로그램 검색 경로 설정 - 사용자가 CDE 실행 가능 동작을 위한 응용프로그램의 읽어들이기 경로를 변경할 수 있습니다.

admin 도구

사용자 ID 설정 - 사용자가 사용자 ID 정보를 설정할 수 있습니다.

사용자 프로파일 설정 - 사용자가 실행 프로파일을 설정할 수 있습니다.

전체 인증 목록은 auth_desc(4)의 온라인 참조 페이지를 참고하십시오. 인증은 "프로파일 관리자 사용"에 설명된 프로파일 관리자를 통해 실행 프로파일에 할당됩니다.

특권 이해

특권은 Trusted Solaris가 금지한 작업을 프로세스가 수행하도록 허가하는 권한입니다. 예를 들어 정상적인 경우 프로세스는 적절한 파일 사용 권한이 없으면 데이터 파일을 열 수 없습니다. Trusted Solaris 환경에서, file_dac_read 특권은 파일을 읽기 위해 UNIX 파일 사용 권한에 우선하는 기능을 프로세스에 부여합니다.

Trusted Solaris는 응용프로그램의 실행 파일에 할당된 특권 및 응용프로그램 프로세스나 상위 프로세스에 관련된 특권에 기초하여 프로세스가 행사할 수 있는 특권을 결정합니다. 응용프로그램이 특권을 사용하게 만들려면 관리자는 사용자가 응용프로그램을 사용하는 방법에 따라 다음 특권 중 두 개 집합 이상을 할당해야 합니다.

프로세스는 특권을 획득하는 방법

프로세스는 다음 조건을 충족하는 경우 특권을 행사할 수 있습니다.

Trusted Solaris에서 제공하는 기본 특권

Trusted Solaris는 보안 정책에 우선하여 응용프로그램에 적용할 수 있는 80 가지 이상의 특권을 제공합니다. 전체 특권 목록은 priv_desc(4)온라인 참조 페이지를 참조하십시오. 각 특권들은 아래 표에 표시된 범주별로 분류됩니다.

표 1-6 특권 범주

특권 범주 

요약 

범주에 속한 특권 예제 

파일 시스템 보안

사용자와 그룹 ID에 대한 파일 시스템 제한, 액세스 권한, 레이블 설정, 소유권 및 파일 특권 집합을 무시합니다. 

file_dac_chown - 프로세스가 파일의 소유권 사용자를 변경합니다.

시스템 V 프로세스 상호 통신(IPC) 보안

메시지 대기열, 신호 장치 집합 또는 공유 메모리 영역에 대한 제한을 무시합니다. 

ipc_dac_read - 사용 권한 비트나 ACL로 인해 허용을 읽지 못하는 경우, 프로세스가 System V IPC 메시지 대기열, 신호 장치 집합 또는 공유 메모리 역역을 읽을 수 있습니다.

네트워크 보안

예약된 포트 바인딩이나 다중 레벨 포트 바인딩, 브로드캐스트 메시지 전송 또는 보안 속성(레이블, 메시지의 특권 또는 네트워크 종단점 기본값 등의) 지정에 대한 제한을 무시합니다. 

net_broadcast - 프로세스가 지정된 네트워크에서 브로드캐스트 패킷을 전송합니다.

프로세스 보안

감사, 레이블 설정, 위장 채널 지연, 소유권, 클리어런스, 사용자 ID 또는 그룹 ID에 대한 제한을 무시합니다. 

proc_mac_read - 프로세스의 민감도 레이블을 읽는 것이 다른 프로세스의 민감도 레이블에 의해 지배되는 경우 프로세스가 다른 프로세스를 읽습니다.

시스템 보안

감사, 워크스테이션 부팅, 워크스테이션 구성 관리, 콘솔 출력 방향 재조정, 장치 관리, 파일 시스템, 디렉토리에 하드 링크 생성, 메시지 대기열 크기 증가, 프로세스 수 증가, 워크스테이션 네트워크 구성, 제삼자의 읽어들일 수 있는 모듈 또는 레이블 변환 등에 대한 제한을 무시합니다. 

sys_boot - 프로세스가 Trusted Solaris 워크스테이션을 정지 또는 재부팅합니다.

윈도우 보안

색상 맵, 윈도우에 읽기와 쓰기, 입력 장치, 레이블 설정, 글꼴 경로, 윈도우 이동, X 서버 자원 관리 또는 DGA(직접 그래픽 액세스) X 프로토콜 확장 등에 대한 제한을 무시합니다. 

win_selection - 선택 중재자의 개입 없이 프로세스가 윈도우 사이의 데이터 이동을 요청할 수 있습니다.

허용 특권 및 강제 특권 할당

관리자는 파일 관리자를 통해 실행 파일에 허용 특권 및 강제 특권을 할당합니다. 대개의 경우, 관리자는 허용 집합에 모든 특권을 포함시키고 있습니다. 이 응용프로그램에 행사할 수 없는 특권이 있는 경우 그러한 특권을 허용 집합에서 제외하십시오. 일반적으로 관리자는 해당 응용프로그램에 필수적일 때만 강제 특권을 사용합니다. 허용되었지만 강제되지 않는 특권은 프로세스의 상속 집합에 동일한 특권이 있는 경우에만 사용할 수 있습니다.

파일 관리자(File Manager) 팝업 메뉴의 특권 변경(Change Privileges)을 선택하면 해당 응용프로그램 아이콘에 대한 파일 관리자 특권(File Manager Privileges) 대화 상자가 나타납니다(다음 그림 참조). 특권 대화 상자는 실행 파일의 경로, 소유자, 그룹 및 파일 유형(실행 파일 또는 스크립트)을 식별하고 관리자가 특권 집합의 유형(허용 특권 또는 강제 특권)을 선택하게 하며, 제외(Excluded) 집합으로 특권을 이동하고, 그 집합으로부터 특권을 이동하기 위해 사용되는 두 개의 목록 필드를 제공합니다. 설명(Description) 필드는 선택한 특권을 설명합니다. 관리자는 세 개의 선택 제어를 사용하여 전체 특권 그룹을 지정할 수 있습니다.

그림 1-10 파일에 특권 할당

Graphic

상속 가능한 특권 할당

관리자는 프로파일 관리자를 사용하여 상속 가능한 특권을 실행 프로파일 내의 CDE 동작 및 명령에 할당합니다. 프로파일에 있는 응용프로그램의 상속 집합 특권은, 그 특권이 해당 실행 파일에 대한 허용 집합에서 허용된 경우에만 사용할 수 있습니다. 응용프로그램 프로세스는 다른 상속 가능한 특권과 함께 이 특권을, 응용프로그램이 분기하는 하위 프로세스에 상속할 수 있습니다.


주 -

다른 상속 가능한 특권 집합을 가진 다른 프로파일에 의해 동일한 응용프로그램이 포함될 수 있습니다.


특권 가용성의 예제

다음 표는 프로세스에 특권을 사용하는 방법을 나타냅니다. 이 표는 가정 응용프로그램에 대한 허용 특권 집합(A = 허용함, N = 허용하지 않음), 강제 특권 집합(F 표시) 및 상속 가능한 특권 집합(I 표시)을 나타냅니다.

표 1-7 응용프로그램 예제에 대한 특권 집합

특권 

허용 

강제 

상속 

file_mac_write [허용되지 않았기 때문에 사용할 수 없음 ]

 

file_upgrade_sl

 

win_dga [허용되고 강제되었기 때문에 사용할 수 있음. 상속 가능한 특권은 중복됨]

win_fontpath

win_colormap

file_dac_search [허용되고 상속할 수 있기 때문에 사용할 수 있음]

 

file_dac_read

 

file_chown [허용되지도 않고 상속할 수도 없기 때문에 사용할 수 없음]

 

 

file_dac_execute

 

 

예제의 해석 방법은 다음과 같습니다.