기본 콘텐츠로 건너뛰기

사이버 보안 모델이란?

사이버 보안 모델은 추상적인 보안 정책을 시스템에 구현하기 위한 정형화된 프레임워크입니다. 이는 '누가(주체, Subject)', '무엇을(객체, Object)', '어떻게(접근 방식, Operation)' 할 수 있는지에 대한 규칙을 명확히 정의하여, 시스템 설계와 구현의 보안적 결함을 최소화하고 일관된 보안 수준을 유지하는 이론적 기반이 됩니다.

1. 보안 모델의 개념: 이론에서 현실로

보안 모델은 단순히 '규칙의 모음'이 아니라, 수학적 논리와 정형 기법(Formal Methods)에 기반하여 보안 정책의 완전성과 일관성을 증명하는 데 사용됩니다. 모델의 핵심 구성 요소는 다음과 같습니다.

  • 주체 (Subject): 시스템에 접근을 시도하는 능동적인 개체입니다. (예: 사용자, 프로세스, 프로그램)
  • 객체 (Object): 보호해야 할 수동적인 정보 자산입니다. (예: 파일, 데이터베이스, 메모리)
  • 접근 규칙 (Access Rules): 주체가 객체에 대해 수행할 수 있는 동작(읽기, 쓰기, 실행 등)의 허용 여부를 결정하는 규칙의 집합입니다.

이러한 구성 요소를 통해 보안 모델은 "A등급 사용자는 1급 비밀문서를 읽을 수 있지만, 수정할 수는 없다"와 같은 보안 정책을 시스템이 이해하고 강제할 수 있는 형태로 변환합니다.

2. 보안 모델의 종류

각 모델은 보호하려는 핵심 가치(기밀성, 무결성 등)에 따라 뚜렷한 특징을 가집니다.

① 벨-라파듈라 모델 (Bell-LaPadula Model): 기밀성 최우선

미 국방부에서 군사 기밀 정보를 보호하기 위해 개발한 최초의 수학적 모델입니다. 정보가 높은 등급에서 낮은 등급으로 유출되는 것을 원천적으로 차단하는 데 중점을 둡니다.

  • 주요 원칙:
    • 단순 보안 속성 (Simple Security Property - No Read Up): 주체는 자신보다 높은 등급의 객체를 읽을 수 없습니다. (예: '비밀' 등급의 사용자는 '대외비' 문서는 읽을 수 있지만, '1급 비밀' 문서는 읽을 수 없습니다.)
    • 스타 속성 (* Property - No Write Down): 주체는 자신보다 낮은 등급의 객체에 정보를 쓰거나 수정할 수 없습니다. 이는 악성코드나 사용자의 실수로 상위 등급의 정보가 하위 등급 파일에 복사되는 것을 방지합니다. (예: '1급 비밀' 정보를 다루는 프로세스는 '대외비' 등급의 파일에 그 내용을 저장할 수 없습니다.)
  • 한계: 데이터의 정확성(무결성)이나 서비스 가용성은 고려하지 않습니다.

② 비바 모델 (Biba Model): 무결성 최우선

벨-라파듈라 모델의 수학적 구조를 반대로 적용하여 데이터의 '오염'을 방지하는 데 초점을 맞춘 모델입니다. 인가되지 않은 사용자에 의한 데이터의 부적절한 변경을 막는 것이 목표입니다.

  • 주요 원칙:
    • 단순 무결성 공리 (Simple Integrity Axiom - No Read Down): 주체는 자신보다 낮은 무결성 등급의 객체를 읽을 수 없습니다. 신뢰할 수 없는 출처의 정보가 신뢰도 높은 시스템으로 유입되는 것을 막습니다. (예: '매우 신뢰' 등급의 시스템 파일은 '신뢰 불가' 등급의 인터넷 다운로드 파일을 참조할 수 없습니다.)
    • 스타 무결성 공리 (* Integrity Axiom - No Write Up): 주체는 자신보다 높은 무결성 등급의 객체를 수정할 수 없습니다. (예: 일반 사용자는 시스템의 핵심 운영체제 파일을 수정할 수 없습니다.)

③ 클락-윌슨 모델 (Clark-Wilson Model): 상업용 무결성

은행, 회계 시스템 등 상업적 환경의 요구사항을 반영한 무결성 모델입니다. 데이터 자체뿐만 아니라, 데이터를 처리하는 '절차'의 무결성을 강조하며 직무 분리(Separation of Duties) 원칙을 중요하게 다룹니다.

  • 핵심 요소:
    • CDI (Constrained Data Item): 무결성이 반드시 보장되어야 하는 데이터 (예: 계좌 잔액)
    • TP (Transformation Procedure): CDI를 수정할 수 있는 유일하게 허가된 절차 (예: '입금', '출금' 프로그램)
    • IVP (Integrity Verification Procedure): CDI가 유효한 상태인지 주기적으로 검증하는 절차 (예: 모든 계좌의 총합이 일치하는지 확인)
  • 작동 방식: 사용자는 TP를 통해서만 CDI에 접근할 수 있으며, 모든 TP의 실행 기록은 로그로 남아 감사를 받습니다. 이를 통해 내부자에 의한 부정행위를 방지합니다.

④ 만리장성 모델 (Chinese Wall Model - Brewer & Nash): 이해 상충 방지

컨설팅 회사, 법무법인, 증권사 등 여러 경쟁 관계의 고객 정보를 다루는 환경을 위해 설계되었습니다. 한 사용자가 특정 정보에 접근한 이력을 바탕으로, 이후 접근 가능한 정보를 동적으로 제한합니다.

  • 작동 방식: 시스템은 기업 정보를 '이해 상충 집단(Conflict of Interest Class)'으로 분류합니다. 분석가가 A은행의 데이터에 접근하면, 시스템은 A은행의 경쟁사인 B은행, C은행의 데이터에 대한 접근을 자동으로 차단하는 '벽'을 세웁니다.

3. 보안 모델 적용 예시

  • 운영체제 (SELinux): 리눅스의 보안 강화 커널 모듈인 SELinux는 벨-라파듈라와 같은 강제적 접근 제어(MAC) 모델을 구현한 대표적인 사례입니다. 모든 파일과 프로세스에 '보안 문맥(Security Context)'이라는 레이블을 부여하고, 커널 수준에서 미리 정의된 정책에 따라 이들의 상호작용을 강제적으로 통제합니다. 이는 root 권한을 탈취당하더라도 시스템 전체 피해를 최소화하는 효과가 있습니다.
  • 데이터베이스 (트랜잭션 관리): 클락-윌슨 모델의 사상은 현대 데이터베이스의 트랜잭션(Transaction) 개념에 깊숙이 녹아 있습니다. 계좌 이체 시 'A 계좌 출금'과 'B 계좌 입금'이 하나의 논리적 단위(TP)로 묶여, 둘 중 하나라도 실패하면 모든 작업이 원상 복구(Rollback)됩니다. 이를 통해 데이터베이스는 항상 일관되고 무결한 상태(CDI)를 유지합니다.
  • 클라우드 및 최신 아키텍처 (제로 트러스트): 제로 트러스트(Zero Trust)는 "절대 신뢰하지 말고, 항상 검증하라"는 원칙에 기반한 현대적인 보안 패러다임입니다. 이는 기존의 '내부 네트워크는 안전하다'는 경계 기반 보안 모델을 폐기합니다.
    • 실제 적용: 사용자가 회사 클라우드 서비스에 접속할 때, 아이디/비밀번호 인증뿐만 아니라 MFA(다중 인증), 접속 위치, 기기 보안 상태, 시간 등을 종합적으로 평가하여 접근 권한을 동적으로 부여합니다. 네트워크를 마이크로세그멘테이션(Micro-segmentation)하여 서비스별로 잘게 나누고, 설령 한 서비스가 침해당하더라도 다른 서비스로의 확산을 막습니다.

4. 보안 모델 관련 핵심 기술

보안 모델이라는 이론을 현실 시스템에 구현하기 위해 다음과 같은 기술들이 사용됩니다.

  • 접근 제어 구현 기술:
    • MAC (강제적 접근 제어): 시스템 관리자가 설정한 보안 정책에 따라 모든 접근을 강제. 보안성은 높지만 유연성이 떨어집니다. (예: SELinux)
    • DAC (임의적 접근 제어): 객체 소유자가 자신의 판단에 따라 접근 권한을 부여. 유연하지만 관리가 복잡하고 보안에 취약할 수 있습니다. (예: Windows/Linux 파일 권한)
    • RBAC (역할 기반 접근 제어): 사용자에게 '역할'을 부여하고, 역할에 권한을 할당합니다. 대규모 조직에서 권한 관리를 효율적으로 만듭니다. (예: '회계팀' 역할은 재무 시스템에만 접근 가능)
    • ABAC (속성 기반 접근 제어): 사용자의 속성, 객체의 속성, 환경 조건 등 다양한 '속성'을 기반으로 동적인 접근 제어를 수행하는 가장 진보된 방식입니다. (예: '의사'는 '근무 시간'에 '자신이 담당하는 환자'의 '의료 기록'만 조회 가능)
  • 보안 모델 지원 기술:
    • IAM (계정 및 접근 관리): 사용자의 신원을 확인(인증)하고, 부여된 권한(인가)을 관리하는 솔루션의 총칭입니다. SSO(Single Sign-On), MFA 등이 포함됩니다.
    • 암호화 (Cryptography): 데이터를 암호화하여 접근 권한이 없는 사용자가 데이터를 탈취하더라도 내용을 알 수 없게 만들어 기밀성을 보장하는 최후의 보루입니다.
    • SIEM (보안 정보 및 이벤트 관리): 시스템 전반의 로그와 이벤트를 수집 및 분석하여 보안 정책 위반 행위나 침입 시도를 실시간으로 탐지하고 대응하는 감사 및 모니터링 기술입니다.

댓글

이 블로그의 인기 게시물

Windows에 AMP와 MediaWiki 설치하기

1. 들어가기     AMP는 Apache + MySQL +  Perl/PHP/Python에 대한 줄임말이다. LAMP (Linux + AMP)라고 하여 Linux에 설치하는 것으로 많이 소개하고 있지만 Windows에서도 간편하게 설치하여 사용할 수 있다.       이 글은 Windows 7에 Apache + MySQL + PHP를 설치하고 그 기반에서 MediaWiki를 설치하여 실행하는 과정을 간략히 정리한 것이다. 2. MySQL     * 버전 5.6.12     1) 다운로드         http://dev.mysql.com/downloads/installer/         MySQL Installer 5.6.12         Windows (x86, 32-bit), MSI Installer         (mysql-installer-web-community-5.6.12.0.msi)     2) 다운로드한 MSI 파일을 더블클릭하여 설치를 진행한다.           설치 위치:                   C:\Program Files\MySQL               선택 사항:                       Install MySQL Products             Choosing a Se...

MATLAB Rutime 설치하기

MATLAB Rutime 설치하기 미설치시 에러 MATLAB Runtime 을 설치하지 않은 환경에서 MATLAB 응용프로그램이나 공유 라이브러리를 사용하려고 하면 아래와 같은 에러 메시지가 표시될 것입니다. 처리되지 않은 예외: System.TypeInitializationException: 'MathWorks.MATLAB.NET.Utility.MWMCR'의 형식 이니셜라이저에서 예 외를 Throw했습니다. ---> System.TypeInitializationException: 'MathWorks.MATLAB.NET.Arrays.MWArray'의 형식 이니셜라이저에서 예외를 Throw했습니다. ---> System.DllNotFoundException: DLL 'mclmcrrt9_3.dll'을(를) 로드할 수 없습니다. 지정된 모듈을 찾을 수 없습니다. (예외가 발생한 HRESULT: 0x8007007E) 위치: MathWorks.MATLAB.NET.Arrays.MWArray.mclmcrInitialize2(Int32 primaryMode) 위치: MathWorks.MATLAB.NET.Arrays.MWArray..cctor() --- 내부 예외 스택 추적의 끝 --- 위치: MathWorks.MATLAB.NET.Utility.MWMCR..cctor() --- 내부 예외 스택 추적의 끝 --- 위치: MathWorks.MATLAB.NET.Utility.MWMCR.processExiting(Exception exception) 해결 방법 이 문제를 해결하기 위해서는 MATLAB Runtime 을 설치해야 합니다. 여러 가지 방법으로 MATLAB Runtime 을 설치할 수 있습니다. MATLAB 이 설치되어 있는 경우에는 MATLAB 설치 폴더 아래에 있는 MATLAB Runtime 설치 프로그램을 실행하여 설치합니다. ...

Wi-Fi 카드 2.4GHz로만 동작시키기

Wi-Fi 카드 2.4GHz로만 동작시키기 별도의 Wi-Fi AP 장치를 두지 않고 아래와 같은 기기들로만 Wi-Fi 네트워크를 구성하고자 할 때 주변 기기들이 2.4GHz만 지원하기 때문에 PC에서 실행하는 AP가 항상 2.4GHz를 사용하도록 Wi-Fi 카드를 설정해 주어야 합니다. 기기 Wi-Fi 카드 주파수 대역 Wi-Fi Direct 지원 PC (Windows 10) 2.4GHz, 5GHz O 주변 기기들 2.4GHz X Wi-Fi 카드별 주파수 대역 선택 방법 Windows 시작 메뉴에서 설정 을 클릭합니다. Windows 설정 화면에서 네트워크 및 인터넷 을 클릭합니다. 설정 화면의 왼쪽 메뉴바에서 Wi-Fi 를 클릭합니다. 화면 오른쪽 관련 설정 구역에 있는 어댑터 옵션 변경 을 클릭합니다. 설정을 바꾸고자 하는 Wi-Fi 카드 항목을 선택하고 마우스 오른쪽을 누른 다음 속성 메뉴를 클릭합니다. 대화상자의 네트워킹 탭 화면에 있는 구성 버튼을 클릭합니다. 장치 속성 대화상자의 고급 탭 화면으로 이동합니다. 제시되는 속성 항목들은 제품별로 다르며 자세한 사항은 아래의 제품별 설명을 참고하여 값을 설정하시기 바랍니다. Intel Dual Band Wireless-AC 7265 기술 사양 주파수 대역: 2.4GHz, 5GHz 무선 표준: 802.11ac 주파수 대역 선택 장치 속성 대화상자에서 아래와 같이 선택합니다. Wireless Mode 1. 802.11a => 5GHz 4. 802.11b/g => 2.4GHz (이 항목 선택) 6. 802.11a/b/g => 2.4GHz, 5GHz Intel Dual Band Wireless-AC 8265 기술 사양 주파수 대역: 2.4GHz, 5GHz 무선 표준: 802.11ac 주파수 대역 선택 장치 속성 대화상자에서 아래와 같이 ...