76. 데이터베이스 보안 - 접근통제

alpaka·2024년 1월 21일
0

정보처리기사

목록 보기
80/161
post-thumbnail

접근통제

  • 접근통제는 데이터가 저장된 객체와 이를 사용하려는 주체 사이의 정보 흐름을 제한하는 것이다.
  • 접근통제는 데이터에 대해 다음과 같은 통제를 함으로써 자원의 불법적인 접근 및 파괴를 예방한다.
    • 비인가된 사용자의 접근 감시
    • 접근 요구자의 사용자 식별
    • 접근 요구의 정당성 확인 및 기록
    • 보안 정책에 근거한 접근의 승인 및 거부 등
  • 임의 접근통제(DAC: Discretionary Access Control)
    • 임의 접근통제는 데이터에 접근하는 사용자의 신원에 따라 접근 권한을 부여 하는 방식이다.
    • 데이터 소유자가 접근통제 권한을 지정하고 제어한다.
    • 객체를 생성한 사용자가 생성된 객체에 대한 모든 권한을 부여받고, 부여된 권한을 다른 사용자에게 허가할 수도 있다.
    • 임의 접근통제에 사용되는 SQL 명령어에는 GRANT와 REVOKE가 있다.
  • 강제 접근통제(MAC: Mandatory Access Control)
    • 강제 접근통제는 주체와 객체의 등급을 비교하여 접근 권한을 부여하는 방식이다.
    • 시스템이 접근통제 권한을 지정한다.
    • 데이터베이스 객체별로 보안 등급을 부여할 수 있고, 사용자별로 인가 등급을 부여할 수 있다.
    • 주체는 자신보다 보안 등급이 높은 객체에 대해 읽기, 수정, 등록이 모두 불가능하고, 보안 등급이 같은 객체에 대해서는 읽기, 수정, 등록이 가능하고, 보안 등급이 낮은 객체는 읽기가 가능하다.
  • 역할기반 접근통제(RBAC: Role Based Access Control)
    • 역할기반 접근통제는 사용자의 역할에 따라 접근 권한을 부여하는 방식이다.
    • 중앙관리자가 접근 통제 권한을 지정한다.
    • 임의 접근통제와 강제 접근통제의 단점을 보완하였으며, 다중 프로그래밍 환경에 최적화된 방식이다.
    • 중앙관리자가 역할마다 권한을 부여하면, 책임과 자질에 따라 역할을 할당받은 사용자들은 역할에 해당하는 권한을 사용할 수 있다.

강제 접근통제(MAC)의 보안 모델

  • 벨 라파듈라 모델(Bell-LaPadula Model)
    • 군대의 보안 레벨처럼 정보의 기밀성에 따라 상하 관계가 구분된 정보를 보호하기 위해 사용한다.
    • 보안 취급자의 등급을 기준으로 읽기 권한과 쓰기 권한이 제한된다.
    • 자신의 보안 레벨 이상의 문서를 작성할 수 있고, 자신의 보안 레벨 이하의 문서를 읽을 수 있다.
      예) 보안 레벨이 2급인 보안 취급자의 읽기 권한과 쓰기 권한
      • 2·3급 비밀 문서를 조회할 수 있다.
      • 1·2급 비밀 문서를 작성할 수 있다.
  • 비바 무결성 모델 (Biba Integrity Model)
    • 벨 라파듈라 모델을 보완한 수학적 모델로, 무결성을 보장하는 최초의 모델이다.
    • 비인가자에 의한 데이터 변형을 방지한다.
  • 클락-윌슨 무결성 모델 (Clark-Wilson Integrity Model)
    • 무결성 중심의 상업용 모델로 사용자가 직접 객체에 접근할 수 없고 프로그램에 의해 접근이 가능한 보안 모델이다.
  • 만리장성 모델(Chinese Wall Model)
    • 서로 이해충돌 관계에 있는 객체 간의 정보 접근을 통제하는 모델이다.
  • 접근통제의 3요소는 접근통제 정책, 접근통제 메커니즘, 접근통제 보안모델이다.

접근통제 정책

  • 접근통제 정책은 어떤 주체가(Who)가 언제(When), 어디서(Where), 어떤 객체(What)에게, 어떤 행위(How)에 대한 허용 여부를 정의하는 것으로, 신분 기반 정책, 규칙 기반 정책, 역할 기반 정책이 있다.
  • 신분 기반 정책
    • 주체나 그룹의 신분에 근거하여 객체의 접근을 제한하는 방법으로, IBP 와 GBP가 있다.
    • IBP(Individual-Based Policy): 최소 권한 정책으로 단일 주체에게 하나의 객체에 대한 허가를 부여한다.
    • GBP(Group-Based Policy): 복수 주체에 하나의 객체에 대한 허가를 부여한다.
  • 규칙 기반 정책
    • 주체가 갖는 권한에 근거하여 객체의 접근을 제한하는 방법으로, MLP와 CBP가 있다.
    • MLP(Multi-Level Policy): 사용자 및 객체별로 지정된 기밀 분류에 따른 정책
    • CBP(Compartment-Based Policy): 집단별로 지정된 기밀 허가에 따른 정책
  • 역할 기반 정책
    • GBP의 변형된 정책으로 주체의 신분이 아니라 주체가 맡은 역할에 근거하여 객체의 접근을 제한하는 방법이다.
      예) 인사 담당자, DBA 등

접근통제 매커니즘

  • 접근통제 매커니즘은 정의된 접근통제 정책을 구현하는 기술적인 방법으로 접근통제 목록, 능력 리스트, 보안 등급, 패스워드, 암호화 등이 있다.
  • 접근통제 목록(Access Control List): 객체를 기준으로 특정 객체에 대해 어떤 주체가 어떤 행위를 할 수 있는지를 기록한 목록이다.
  • 능력 리스트(Capability List): 주체를 기준으로 주체에게 허가된 자원 및 권한을 기록한 목록이다.
  • 보안 등급(Security Level): 주체나 객체 등에 부여된 보안 속성의 집합으로, 이 등급을 기반으로 접근 승인 여부가 결정된다.
  • 패스워드: 주체가 자신임을 증명할 때 사용하는 인증 방법이다.
  • 암호화: 데이터를 보낼 때 지정된 수신자 이외에는 내용을 알 수 없도록 평문을 암호문으로 변환하는 것으로, 무단 도용을 방지하기 위해 주로 사용된다.

접근통제 보안 모델

  • 접근통제 보안 모델은 보안 정책을 구현하기 위한 정형화된 모델로, 기밀성 모델, 무결성 모델, 접근통제 모델이 있다.

기밀성 모델

  • 기밀성 모델은 군사적인 목적으로 개발된 최초의 수학적 모델로, 기밀성 보장이 최우선인 모델이다.
  • 기밀성 모델은 군대 시스템 등 특수 환경에서 주로 사용된다.
  • 제약 조건
    • 단순보안 규칙: 주체는 자신보다 높은 등급의 객체를 읽을 수 없다.
    • ★(스타)-보안 규칙: 주체는 자신보다 낮은 등급의 객체에 정보를 쓸 수 없다.
    • 강한 ★(스타) 보안 규칙: 주체는 자신과 등급이 다른 객체를 읽거나 쓸 수 없다.

    Level단순보안 규칙
    읽기 권한
    ★(스타)-보안 규칙
    쓰기 권한
    강한 ★(스타) 보안 규칙
    읽기/쓰기 권한
    높은 등급통제가능통제
    같은 등급가능가능가능
    낮은 등급가능통제통제

무결성 모델

  • 무결성 모델은 기밀성 모델에서 발생하는 불법적인 정보 변경을 방지하기 위해 무결성을 기반으로 개발된 모델이다.
  • 무결성 모델은 데이터의 일관성 유지에 중점을 두어 개발되었다.
  • 무결성 모델은 기밀성 모델과 동일하게 주체 및 객체의 보안 등급을 기반으로 한다.
  • 제약 조건
    • 단순 무결성 규칙: 주체는 자신보다 낮은 등급의 객체를 읽을 수 없다.
    • ★(스타)-무결성 규칙: 주체는 자신보다 높은 등급의 객체에 정보를 쓸 수 없다.

    Level단순 무결성 규칙
    읽기 권한
    ★(스타)-무결성 규칙
    쓰기 권한
    높은 등급가능통제
    같은 등급가능가능
    낮은 등급통제가능

접근통제 모델

  • 접근통제 모델은 접근통제 메커니즘을 보안 모델로 발전시킨 것으로, 대표적으로 접근통제 행렬(Access Control Matrix)이 있다.
  • 접근통제 행렬(Access Control Matrix)
    • 임의적인 접근통제를 관리하기 위한 보안 모델로, 행은 주체, 열은 객체 즉, 행과 열로 주체와 객체의 권한 유형을 나타낸다.
    • 행: 주체로서 객체에 접근을 시도하는 사용자이다.
    • 열: 객체로서 접근통제가 이뤄지는 테이블, 컬럼, 뷰 등과 같은 데이터베이스의 개체이다.
    • 규칙: 주체가 객체에 대하여 수행하는 입력, 수정, 삭제 등의 데이터베이스에 대한 조작이다.
    • 접근통제 행렬 모델

    이름사원부서상품판매현황거래업체
    김상민ALLALLRRR
    우지경R/WR/WRRR
    하석민RRRR/WR/W
    양구성RRR/W

접근통제 조건

  • 접근통제 조건은 접근통제 매커니즘의 취약점을 보완하기 위해 접근통제 정책에 부가하여 적용할 수 있는 조건이다.
  • 값 종속 통제(Value-Dependent Control): 일반적으로는 객체에 저장된 값에 상관없이 접근통제를 동일하게 허용하지만 객체에 저장된 값에 따라 다르게 접근통제를 허용해야 하는 경우에 사용한다.
    • 납입한 금액에 따라 보안 등급이 설정되고, 보안 등급에 따라 접근 여부가 결정되는 경우
  • 다중 사용자 통제(Multi-User Control): 지정된 객체에 다수의 사용자가 동시에 접근을 요구하는 경우에 사용된다.
    • 여러명으로 구성된 한 팀에서 다수결에 따라 접근 여부가 결정되는 경우
  • 컨텍스트 기반 통제(Context-Based Control): 특정 시간, 네트워크 주소, 접근 경로, 인증 수준 등에 근거하여 접근을 제어하는 방법으로, 다른 보안 정책과 결합하여 보안시스템의 취약점을 보완할 때 사용된다.
    • 근무시간, 즉 월요일~금요일 9:00~18:00 사이에만 접근 가능

감사 추적

  • 감사 추적은 사용자나 애플리케이션이 데이터베이스에 접근하여 수행한 모든 활동을 기록하는 기능이다.
  • 감사 추적은 오류가 발생한 데이터베이스를 복구하거나 부적절한 데이터 조작을 파악하기 위해 사용된다.
  • 감사 추적 시 실행한 프로그램, 사용자, 날짜 및 시간, 접근한 데이터의 이전 값 및 이후 값 등이 저장된다.
profile
alpaka의 자격증 공부장

0개의 댓글

관련 채용 정보