KR20090103396A - 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로읽을 수 있는 기록매체 - Google Patents

다중 등급 보안 방식에 기초한 강제적 프로세스 메모리접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로읽을 수 있는 기록매체

Info

Publication number
KR20090103396A
KR20090103396A KR1020080028976A KR20080028976A KR20090103396A KR 20090103396 A KR20090103396 A KR 20090103396A KR 1020080028976 A KR1020080028976 A KR 1020080028976A KR 20080028976 A KR20080028976 A KR 20080028976A KR 20090103396 A KR20090103396 A KR 20090103396A
Authority
KR
South Korea
Prior art keywords
subject
security level
category information
security
memory
Prior art date
Application number
KR1020080028976A
Other languages
English (en)
Other versions
KR100960358B1 (ko
Inventor
임연호
박태규
정창성
Original Assignee
티에스온넷(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 티에스온넷(주) filed Critical 티에스온넷(주)
Priority to KR1020080028976A priority Critical patent/KR100960358B1/ko
Publication of KR20090103396A publication Critical patent/KR20090103396A/ko
Application granted granted Critical
Publication of KR100960358B1 publication Critical patent/KR100960358B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 컴퓨터 운영체제(OS: Operating System) 내에서 실행중인 프로세스가 프로세스 메모리에 접근하는 것을 제어하여 프로세스 메모리를 보호하는 방법에 관한 것이다.
본 발명에 따르면, (a) 시스템 보안관리자로 하여금 시스템에 설치되는 응용프로그램에 보안 등급과 카테고리 정보를 배정하여 설정하도록 하는 단계; (b) 시스템 내에 설치된 응용프로그램이 실행되어 프로세스가 생성될 때 프로세스 구조체에 필드를 할당하고 해당 응용프로그램에 설정된 보안 등급과 카테고리 정보를 수록하는 단계; 및 (c) 실행중인 프로세스가 주체가되고 다른 실행중인 프로세스를 객체로 하여 주체가 객체의 프로세스 메모리를 액세스할 때, 상기 객체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보를 서로 비교하여 수정된 BLP 모델에 따라 객체의 프로세스 메모리에 대한 주체의 접근 권한을 커널모드에서 결정하는 단계;를 포함하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법이 개시된다.

Description

다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체{Mandatory process memory access control method using multi-level security, and computer readable recording medium having thereon programmed mandatory process memory access control method using multi-level security}
본 발명은 컴퓨터 운영체제(OS: Operating System)에서의 보안 방법에 대한 것으로서, 보다 상세하게는 운영체제 내에서 실행중인 프로세스가 프로세스 메모리에 접근하는 것을 제어하여 프로세스 메모리를 보호하는 방법에 관한 것이다.
예전에 이루어진 컴퓨터 시스템의 보안기술 연구로는 컴퓨터 시스템에 암호화, 접근제어, 감사 추적 등의 하드웨어, 소프트웨어를 추가하는 애드온(Add-on) 방식이 진행되어 왔다. 그러나 이러한 방식으로는 기존에 알려진 우회, 수정 등의 문제점 및 새로운 보안상의 문제점인 트로이 목마, covert channel 등의 신종 컴퓨터 범죄를 해결할 수 없었고, 이러한 문제점이 발생할 때마다 새로운 보안 업데이트를 계속해서 추가해야하는 문제가 있었다.
또한, 최근 들어 정보화 분야가 비약적으로 확대됨에 따라 컴퓨터에 저장된 비밀 수준의 정보들에 대한 접근 권한이 없는 내부 및 외부 사용자, 또는 프로세스 주체가 객체인 비밀 파일 또는 장치에 임의적으로 접근하여 불법적으로 객체를 읽고 쓰거나 수행하는 등의 보안 문제가 발생하고 있다. 특히, 웹을 통한 콘텐츠 서비스에 있어서는, 해커 등에 의한 시스템 루트 권한의 도용과 접근 권한이 없는 사용자 등에 의한 홈 페이지 및 관련 콘텐츠의 불법 변조 문제가 사회적 물의를 일으키고 있다.
이에 따라, 최근에는 컴퓨터 시스템의 운영체제의 내부 커널에 보안 기능을 포함시키는 보안 커널의 연구 개발이 진행되고 있다. 이런 보안 커널의 개발에 따라 최근에는 사용자 또는 프로세스인 주체가 객체인 비밀 파일 또는 장치에 접근시에 보안성이 강화되었다.
기존에 개발된 보안 커널 또는 운영체제의 경우에는 객체를 크게 디스크에 저장된 정규 파일, 디렉터리, 특수 파일인 장치파일 등으로 구성하였다. 따라서, 사용자 또는 프로세스의 주체가 파일, 디렉터리 또는 장치파일에 접근할 경우에는 강화된 접근제어 방식으로 보안성을 유지할 수 있었다. 그러나 프로세스가 소유하고 있는 프로세스 메모리에 대한 접근 제어 및 보안 기술은 그 연구 및 개발이 부족한 점이 많았다.
따라서, 프로세스 메모리에 대한 해킹 및 덤프로 프로세스 메모리상에 적재된 정보들이 외부로 유출될 수 있는 보안상의 문제점이 발생할 수 있고, 기존의 보안 커널 및 운영체제로는 이러한 문제를 원천적으로 해결하기 힘든 문제가 있다.
본 발명은 상기와 같은 문제점을 해결하기 위해 창안한 것으로서, 컴퓨터 시스템에서 일정한 보안 등급을 보유하는 주체, 즉 프로세스가 비밀 수준의 보안 등급 객체 즉, 프로세스 메모리를 읽거나(read), 쓰거나(write) 하려고 할 때, 주체와 객체 사이의 등급과 카테고리 관계에 수정된 BLP(Bell & Lapadula) 보안모델을 적용하여 접근을 제어함으로써, 보안 등급을 가지는 프로세스가 타 프로세스에 의해 프로세스 메모리의 정보가 유출 또는 변형되지 않도록 보호될 수 있는 강제적 프로세스 메모리 접근 제어 방법을 제공하는 데 목적이 있다.
나아가, 본 발명은 컴퓨터 시스템에 응용프로그램이 설치될 때에 보안관리자로 하여금 보안 등급 및 카테고리 정보를 배정하고 이를 설정하도록 하여, 응용프로그램이 실행되어 생성되는 프로세스와, 프로세스에 의해서 생성되는 자식 프로세스에 보안관리자가 설정한 보안 등급 및 카테고리 정보가 계속 상속될 수 있도록 하는 방법을 제공하는 데 다른 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기에 설명될 것이며, 본 발명의 실시예에 의해 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 첨부된 특허 청구 범위에 나타낸 수단 및 조합에 의해 실현될 수 있다.
상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법은, (a) 시스템 보안관리자로 하여금 시스템에 설치되는 응용프로그램에 보안 등급과 카테고리 정보를 배정하여 설정하도록 하는 단계; (b) 시스템 내에 설치된 응용프로그램이 실행되어 프로세스가 생성될 때 프로세스 구조체에 필드를 할당하고 해당 응용프로그램에 설정된 보안 등급과 카테고리 정보를 수록하는 단계; 및 (c) 실행중인 프로세스가 주체가되고 다른 실행중인 프로세스를 객체로 하여 주체가 객체의 프로세스 메모리를 액세스할 때, 상기 객체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보를 서로 비교하여 수정된 BLP 모델에 따라 객체의 프로세스 메모리에 대한 주체의 접근 권한을 커널모드에서 결정하는 단계;를 포함한다.
본 발명의 다른 측면에 따르면, 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법을 제공하는 프로그램이 기록된 기록매체로서, (1) 시스템 보안관리자로 하여금 시스템에 설치되는 응용프로그램에 보안 등급과 카테고리 정보를 배정하여 설정하도록 하는 절차와, (2) 시스템 내에 설치된 응용프로그램이 실행되어 프로세스가 생성될 때 프로세스 구조체에 필드를 할당하고 해당 응용프로그램에 설정된 보안 등급과 카테고리 정보를 수록하는 절차 및 (3) 실행중인 프로세스가 주체가되고 다른 실행중인 프로세스를 객체로 하여 주체가 객체의 프로세스 메모리를 액세스할 때, 상기 객체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보를 서로 비교하여 수정된 BLP 모델에 따라 객체의 프로세스 메모리에 대한 주체의 접근 권한을 커널모드에서 결정하는 절차를 실행하는 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체가 제공된다.
본 발명에 따르면, 종래의 보안 등급이 없는 프로세스 또는 보안 등급이 맞지 않는 프로세스가 임의적으로 보안 등급을 갖는 프로세스에 대하여 프로세스가 소유한 프로세스 메모리에 읽기, 쓰기 등의 접근을 시도할 경우 수정된 BLP 모델이 기초하여 커널모드에서 원천적으로 차단할 수 있는 효과를 제공한다.
또한, 애초에 응용프로그램 설치시나 프로세스 생성시에 보안관리자로부터 배정되고 부여된 보안 등급이 계속해서 상속되므로, 접근하려는 프로세스에 유사한 프로세스로 변형하거나, 유사한 프로세스로 우회하여 프로세스 메모리에 접근하려 해도 상속된 보안 등급에 의해 접근이 차단되는 효과를 제공한다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 전술된 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니된다.
도 1은 본 발명의 일 실시예에 따른 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법에서 구현한 프로세스 구조체의 구성을 나타낸 도면이다.
도 2는 보안 등급이 부여된 프로세스 구조체의 필드에 대한 세부 구조도이다.
도 3은 카테고리 정보가 부여된 프로세스 구조체의 필드에 대한 세부 구조도이다.
도 4는 본 발명의 일 실시예에 따른 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법의 전체적인 흐름을 도시한 순서도이다.
도 5는 본 발명의 일 실시예에 따른 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법에 따라 설정된 보안 정보가 상속되는 원리를 개략적으로 도시한 개념도이다.
도 6은 본 발명의 일 실시예에 따른 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법에 따라 프로세스 메모리 접근에 대한 강제적 접근 제어가 수행되는 처리 절차를 나타낸 구성도이다.
<도면의 주요 부분에 대한 부호의 설명>
10 : 프로세스 구조체
20 : 보안 등급 필드
30 : 카테고리 정보 필드
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
이하에서는 먼저 본 발명이 채용하고 있는 수정된 BLP 모델을 상세하게 설명한 다음, 이를 바탕으로 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명하기로 한다. 그러나 이하에서 설명되는 본 발명의 바람직한 실시예는 본 발명의 기술적 범위를 한정하려는 것이 아니고, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에게 본 발명을 보다 명확하고 용이하게 설명하려고 하는 것이다. 도면상에서 동일한 도면부호는 동일한 요소를 지칭한다.
본 발명에 따른 다중 등급 보안 방식에 의한 강제적 프로세스 메모리 접근 제어 방법에 적용된 BLP 모델에 있어서는, 주체가 객체에 대해 읽기(read, execute), 쓰기(write, create, append, delete)를 수행할 수 있는지에 대한 여부를 판단하기 위해 아래와 같은 방식의 판단조건을 부가하게 된다.
(1) 주체는 아래와 같은 조건이 모두 만족되는 경우에만 객체에 대해 읽기(read, execute) 권한이 부여된다.
조건1: 주체의 보안 등급이 객체의 보안 등급보다 같거나 높을 것
조건2: 주체의 카테고리가 객체의 카테고리를 지배(포함)할 것
여기에서, 보안 등급이라 함은 0급, 1급, 2급 등과 같은 정보의 등급을 말하는 것이고, 카테고리라 함은 인사, 군수, 행정 등 정보의 범주를 의미하는 것이다.
상기와 같은 조건 1 및 2가 부여된 경우, 주체는 자신의 보안 등급보다 낮은 보안 등급과 자신의 카테고리와 포함관계에 있는 카테고리를 가진 객체에 대해서는 읽기 권한을 가진다. 그리고, 자신의 보안 등급보다 높은 보안 등급을 가지고 있거나, 자신의 카테고리와 포함관계에 있지 않은 객체에 대해서는 읽을 수 있는 권한을 가질 수 없다.
(2) 주체는 아래와 같은 조건이 모두 만족되는 경우에만 객체에 대해 쓰기(write, create, append, delete)권한을 가지게 된다.
조건3: 주체의 보안 등급이 객체의 보안 등급과 같을 것
조건4: 객체의 카테고리가 주체의 카테고리와 같을 것
상기와 같은 조건3 및 4가 주어진 경우, 주체의 보안 등급보다 낮거나 높은 보안 등급을 가지는 객체에 대해서는 주체가 생성, 수정, 삭제할 수 있는 권한을 가질 수 없고, 주체와 객체의 등급과 카테고리가 같은 경우에만 주체가 객체를 생성, 수정, 삭제할 수 있게 된다.
이상에서와 같은 수정된 BLP 모델에 따라 다중 등급 보안 방식에 의한 강제적 프로세스 메모리 접근 제어 방법을 구현하기 위해, 본 발명에서는 주체를 프로세스 메모리에 접근하려는 프로세스로 객체를 주체가 접근하려는 프로세스 메모리를 소유하고 있는 프로세스로 각각 정의한다. 또한, 주체와 객체인 프로세스에 대해 보안 등급과 카테고리 정보를 부가하는 대상으로 커널 메모리에 저장된 프로세스 구조체를 채택한다. 상기 프로세스 구조체는 윈도우즈 기반의 운영체제에서는 EPROCESS(Executive Process) 구조체인 것이 바람직하다.
도 1은 본 발명의 일 실시예에 따른 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법에서 구현한 프로세스 구조체의 구성을 나타낸 도면이다.
도 1을 참조하면, 본 발명에 따른 프로세스 구조체(10)의 구성은 기존의 윈도우즈 운영체제에서 정의된 프로세스 구조체에 다중 등급 보안 정보의 수록을 위한 2개의 필드(clearance 및 category; 20 및 30)를 추가로 정의하여 사용한다. 본 발명에 따라 프로세스 구조체(10)에 추가된 2개의 필드 중 보안 등급 필드(20)의 세부 구성은 도 2에 도시된 바와 같고, 카테고리 정보 필드(30)의 세부 구성은 도 3에 도시된 바와 같다.
도 2를 참조하면, 보안 등급 필드(20)는 보안 등급 수록부(40)를 포함하도록 구성된다. 필요에 따라, 상기 보안 등급 필드(20)는 예약부(50), 암호화 플래그(70) 등이 포함되도록 구성될 수도 있다. 본 발명의 실시예에 따른 보안 등급 필드(20)를 도시한 도 2의 경우, 총 비트수가 32비트로 할당되어 있고 그 중 8비트가 보안 등급의 수록을 위해 사용되었고; 그 중 22비트가 타 용도를 위해 예약되었고; 그 중 1비트가 암호화 플래그를 위해 사용되었다. 이처럼, 8비트가 보안 등급의 수록을 위해 사용될 경우, 256가지의 등급을 프로세스에게 부여할 수 있다. 물론, 보안 등급 필드(20)를 구성하는 총 비트수와 그 구성요소인 보안 등급 수록부(40), 예약부(50) 및 암호화 플래그(70)를 이루는 비트수는 변경가능하다. 또한, 보안 등급 필드(20)를 구성함에 있어서, 암호화 플래그(70)를 위한 비트수는 경우에 따라서 할당되지 않아도 무방하다. 예를 들어, 암호화 플래그(70)의 경우 주체인 경우에는 사용되지 않을 수 있다.
도 3을 참조하면, 카테고리 정보 필드(30)는 카테고리 표시부(80)를 포함하도록 구성된다. 본 발명에 따른 실시예를 도시한 도 3에 있어서는, 카테고리 정보 필드(30)가 32비트로 할당되었고, 전체 비트가 카테고리 표시부(80)로 사용되고 있다. 하지만, 카테고리 정보 필드(30)의 총 비트수와 그 안에 포함되는 카테고리 표시부(80)의 비트수는 필요에 따라서 변경될 수 있다.
본 발명에 있어서 카테고리 정보 필드(30)에 카테고리 정보를 부여하는 방법은, 배정되거나 상속받은 카테고리 정보를 이에 해당하는 소정 위치의 비트에 1로 세팅하는 것이다. 예를 들어, 배정된 카테고리 정보가 AB인 경우는 A 및 B에 해당하는 특정 비트부에 1을 세팅하면 된다. 따라서, 카테고리 표시부 내의 여러 개 비트가 1로 세팅되어 있으면, 1로 세팅된 비트수 만큼의 복수 카테고리 정보를 가지게 된다. 이러한 카테고리 정보 표시 방법은 카테고리 표시부(80)로 할당된 비트수 만큼의 카테고리를 주체 또는 객체가 가질 수 있도록 해 준다. 도 3에 도시된 카테고리 정보 필드(30)의 경우 32비트 전체가 카테고리 표시부(80)로 예약되어 사용되므로 주체 및 객체가 최대 32개까지의 카테고리를 갖도록 할 수 있게 된다.
본 발명에 있어서, 시스템 내에서 프로세스를 생성하는 응용프로그램에 보안정보 즉 보안 등급 및 카테고리 정보를 부여하는 방법을 설명하기로 한다. 상기 응용프로그램에 보안정보를 부여할 때에는 시스템 관리자나 시스템 보안관리자로 하여금 시스템 내에서 응용프로그램이 설치될 시에 보안 정보를 부여하도록 할 수 있고, 또는 설치된 응용프로그램에 보안 정보를 부여할 수도 있다. 이와 같은 응용프로그램에 보안정보를 부여하기 위해서는 응용프로그램의 실행파일에 파일정보 영역 또는 헤더영역 등에 따로 필드를 할당하여 상기 보안 등급 및 카테고리 정보를 부가하게 된다.
구체적으로 윈도우즈 계열의 운영체제의 경우 응용프로그램의 실행파일에 대한 정보가 저장된 영역은 확장 파일 속성이라는 데이터 구조에 위치한다. 따라서, 해당 실행파일의 확장 파일 속성의 예약 필드 중 2개의 필드를 새롭게 할당하고 여기에 보안 등급과 카테고리 정보를 각각 수록하여 보안 정보를 부가하게 된다. 또한, 이때에는 2개의 필드를 새롭게 할당하되, 각 필드의 비트수를 32비트로 할당하고 그 중 한 필드는 보안 등급을 수록하고 나머지 한 필드에는 카테고리 정보를 수록하기 위해 사용하게 된다. 물론, 보안 등급과 카테고리 정보의 수록을 위해 사용하는 필드에 할당되는 총 비트수와 이들 필드간의 상대적인 위치는 경우에 따라 변동될 수 있다. 아울러, 응용프로그램에 보안 등급과 카테고리 정보를 수록하기 위해 확장 파일 속성에 할당된 2개의 필드의 세부 구성은, 프로세스의 보안 등급과 카테고리 정보를 수록하기 위해 프로세스 구조체에 할당된 필드(도 2 및 도 3 참조)의 그것과 실질적으로 동일하다. 따라서, 확장 파일 속성에 할당된 보안 등급과 카테고리 정보 수록용 필드의 세부구성은 도 2 및 도 3에 도시된 보안 등급 필드(20)와 카테고리 정보 필드(30)의 세부구성을 참조할 수 있다. 따라서, 확장 파일 속성의 보안 등급 필드에 보안 등급을 수록하기 위해 8비트가 할당된 경우 최대 256개까지의 보안 등급을 부여할 수 있다. 그리고, 확장 파일 속성의 카테고리 정보 필드에 카테고리 정보를 수록하기 위해 32비트가 할당된 경우 최대 32개까지의 카테고리를 부여할 수 있다. 이처럼, 확장 파일 속성에 보안 등급과 카테고리 정보를 부가하는 것은 시스템 보안관리자에 의하여 이루어질 수 있다.
다만, 확장 파일 속성의 보안 등급 필드의 경우는 암호화된 파일임을 표시하기 위해 한 비트를 암호화 플래그인 MSB(Most Significant Bit)로 할당하여 사용할 수 있다. 예를 들어, 암호화 플래그인 MSB가 1로 세팅되어 있으면 이는 응용프로그램의 실행 파일이 암호화된 파일임을 의미하게 된다.
상술한 바와 같은 방식으로 본 발명에 따라 응용프로그램에 대해 보안 정보 즉, 보안 등급과 카테고리 정보를 부가한 다음, 응용프로그램이 실행되어 프로세스가 생성되면 보안 정보를 상속시켜 프로세스에서 프로세스 메모리의 접근을 시도할 경우 다중 등급 보안 방식의 강제적 프로세스 메모리 접근 제어 방법을 구현하게 된다.
도 4는 본 발명의 일 실시예에 따른 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법의 전체적인 흐름을 도시한 순서도이다.
도 4를 참조하여, 본 발명에 따른 다중 등급 보안 방식의 강제적 프로세스 메모리 접근 제어 방법을 구현한 예를 설명하기로 한다.
먼저, 시스템 보안관리자로 하여금 시스템 내의 응용프로그램에 대하여 보안 정보를 배정하도록 하고, 각 응용프로그램에 배정된 보안 정보를 부여하는 절차가 진행된다. 이때에는 응용프로그램이 시스템에 설치될 때에 보안 정보를 설정하는 것이 바람직하다. 아울러, 보안 정보를 배정할 때에도 보안 등급 및 카테고리 정보로 구분하며 상술한 확장 파일 속성의 할당된 필드에 배정된 보안 정보를 각각 수록하여 보안 정보를 설정하는 처리를 진행한다. 여기에서, 보안 등급이라 함은 0급, 1급, 2급 등과 같은 정보의 등급을 말하는 것이고, 카테고리라 함은 인사, 군수, 행정 등 정보의 범주를 의미하는 것이다.(S10)
이렇게 보안 정보가 설정되어 설치된 응용프로그램은 사용자 또는 실행 중인 다른 프로세스에 의해 실행이 된다. 응용프로그램의 실행은 응용프로그램의 실행 파일을 실행함으로써 이루어진다. 또한, 사용자(또는 관리자)에 의해 실행될 수도 있고, 실행 중인 다른 프로세스에 의해 실행될 수도 있으며, 네트워크를 통해 외부로부터 실행 명령을 전달받아 실행될 수도 있다.(S20)
응용프로그램이 실행되면, 프로세스가 생성된다. 구체적으로 말하면, 프로그램 로더에 의해 실행 파일이 로드되어 응용프로그램과 그에 링크된 DLL들이 함께 메모리에 적재되어 운영체제의 제어를 받는 상태인 프로세스가 생성된다. 아울러, 응용프로그램의 실행에 의해 생성되는 프로세스는 하나 또는 그 이상이 될 수도 있다. 즉, 하나의 응용프로그램 실행으로도 시스템 내에 다수의 프로세스가 생성될 수도 있다.(S30)
응용프로그램의 실행에 의해 프로세스가 생성되기도 하지만, 생성되어 실행중인 프로세스에 의해서도 또 다른 프로세스가 생성될 수도 있다. 이를 자식 프로세스라고 한다. 즉, 실행중인 프로세스가 계속해서 다른 자식 프로세스를 생성할 수 있다.(S35)
이와 같이, 시스템 내에 프로세스가 생성되면, 프로세스 메모리에 프로그램이 적재되며, 이와 함께 커널 메모리에는 생성된 프로세스에 대한 정보들이 프로세스 구조체에 수록된다. 이 커널 메모리는 커널모드에서만 액세스할 수 있는 메모리 영역이고 시스템 내의 프로세스들에 대한 관리와 구분을 할 수 있도록 한다. 이처럼 프로세스 생성과 함께 프로세스 구조체에 정보를 수록할 때에 상기 응용프로그램에서 설정된 보안정보가 상속되어 수록된다. 즉, 도 1 내지 도 3을 통해 설명한 프로세스 구조체의 보안 등급 필드(20)와 카테고리 정보 필드(30)에 상속받은 보안 정보가 각각 복사되어 수록된다. 아울러, S35 단계에서처럼 프로세스에 의해 프로세스가 생성된 경우에도, 부모 프로세스의 보안 정보를 상속받아 자식 프로세스의 프로세스 구조체에 수록한다.(S40)
다음으로, 실행중인 프로세스에서(이때의 각 프로세스들은 각각 부모 프로세스 또는 실행된 응용프로그램의 보안정보를 상속받은 상태임) 프로세스 메모리에 대한 접근을 시도하는 이벤트가 발생한다. 이때에는 다른 프로세스가 소유하고 있는 프로세스 메모리에 대한 접근 시도인 경우와, 자신이 소유하고 있는 프로세스 메모리에 대한 접근 시도인 경우를 모두 포함할 수 있다. 여기서, 프로세스 메모리의 접근을 시도하는 프로세스를 주체로 정의하고, 상기 주체에 의해 접근 시도를 받은 프로세스 메모리를 소유한 프로세스를 객체로 정의한다. 이때 역시, 주체와 객체가 동일할 수도 있고 다를 수도 있다.(S50)
접근 시도가 발생하면 커널 모드에서는 주체와 객체 프로세스의 보안 정보를 추출하는 절차를 진행한다. 즉, 주체, 객체 프로세스의 프로세스 구조체에서 보안 등급과 카테고리 정보를 추출한다. 이때 역시, 상술한 바와 같이 프로세스 구조체에 할당된 2개의 필드에서 각각 보안 등급과 카테고리 정보를 조회하여 추출하게 된다.(S60)
이렇게 주체와 객체의 보안 정보가 각각 추출되면, 수정된 BLP 모델을 이용하여 각각의 보안 정보를 비교하는 절차를 진행한다. 이 절차는 BLP 모델에 기초하여 위에 정의한 주체와 객체에 대하여 각각의 보안 등급과 카테고리 정보를 비교하게 된다. 구체적으로 주체의 보안 등급이 객체의 보안 등급과 같은가 또는 높은가를 비교하고, 주체의 카테고리가 객체의 카테고리와 같은가 또는 포함하는가를 비교하는 등의 절차가 진행된다.(S70)
BLP 모델에 기초한 보안정보의 비교 절차를 거친 후에, 주체의 객체에 대한 접근 권한을 결정하게 된다. 이 역시, 상술한 수정된 BLP 모델을 적용하여 접근 권한을 결정한다. 즉, 주체가 객체에 대해 읽기(read, execute), 쓰기(write, create, append, delete)를 할 수 있는지의 여부를 확인하고 이를 권한으로 결정한다. 예를 들면, 주체가 자신의 보안 등급보다 낮은 보안 등급과 포함관계에 있는 카테고리를 가진 객체에 대한 접근을 시도한 경우에는 읽기 권한을 부여해주고, 자신의 보안 등급보다 높은 등급을 가지거나 포함관계가 없는 카테고리를 가진 객체에 대해 접근을 시도한 경우라면, 읽기 권한을 부여하지 않는다. 또한, 주체가 자신의 보안 등급보다 낮거나 높은 보안 등급을 가지는 객체에 쓰기를 시도하면 그 권한을 부여해주지 않고, 객체의 보안 등급과 카테고리가 주체의 보안 정보와 같은 경우에만 쓰기 권한을 부여한다. 이때의, 읽기, 쓰기의 대상은 객체 프로세스가 소유한 프로세스 메모리이다.(S80)
운영체제 또는 커널모드에서는 상술한 절차에 따라 접근 권한이 결정되면 그에 따라 주체의 프로세스 메모리에 대한 접근을 제어한다. 즉, 주체가 객체에 대한 접근(읽기, 쓰기) 권한이 부여된 경우라면, 상기 S50 단계에서 주체가 객체의 프로세스 메모리에 대한 접근 시도는 허가되어 주체는 객체의 프로세스 메모리에 접근(읽기, 쓰기)하고 작업을 수행한다. 반면, 주체가 객체에 대한 접근 권한이 부여되지 않은 경우라면, 주체의 프로세스 메모리에 대한 접근 시도는 거절되어 주체의 객체에 대한 프로세스 메모리 접근은 실패하게 된다.(S90)
이하에서는 도 4의 S10 단계부터 S40 단계까지의 절차인 응용프로그램에 설정된 보안정보가 생성되는 프로세스와 그 자식 프로세스까지 계속적으로 상속되도록 구현하는 구체적인 방법을 설명한다.
도 5를 참조하면, 먼저 저장영역의 디스크에는 P1 프로그램 실행 파일이 저장되어 있고, 이 프로그램 실행 파일(100)의 파일 정보가 기록된 영역인 확장 파일 속성에는 시스템 보안관리자로부터 부여된 보안정보가 2개의 필드에 구분되어 보안 등급과 카테고리 정보로 수록되어 있다.
이렇게 보안정보가 설정된 P1 응용프로그램이 실행영역에서 실행되는 절차(S150)를 거치게 된다. 응용프로그램 실행에 따라 프로세스가 생성(250)된다. 즉, 프로그램 로더에 의해 응용프로그램이 링크된 DLL과 함께 저장 영역의 프로세스 메모리에 적재되고, 커널 메모리에는 생성되는 프로세스의 정보를 담은 프로세스 구조체가 생성된다. 이와 같이 P1 응용프로그램이 실행되면 프로세스 메모리에는 P1 프로세스(200)가 적재되고 커널 메모리에는 P1 프로세스 구조체(300)가 생성된다.
P1 프로세스(200)에 따라 프로세스 메모리에 프로그램이 적재되는 구조를 살펴보면, 각각 텍스트, 데이터, 힙, 스택으로 구분된 구조인 네 개의 영역으로 적재되며 이를 각각 세그먼트라 한다. 각 세그먼트에 대해 간단히 살펴보면, 텍스트는 프로그램의 실행 코드인 기계어 코드와 읽기 전용 데이터 등을 가진다. 데이터는 전역 변수, 정적 변수 등으로 선언된 변수 영역이다. 힙은 프로그램 수행 중 시스템 콜로 할당되고, 해지되는 메모리 영역이다. 스택은 함수 호출시 지역 변수와 인수, 함수의 수행이 끝났을 때 리턴할 주소를 푸시한다.
다음, 커널 메모리에 저장된 P1 프로세스 구조체(300)는 도 1 내지 도 3에서 설명한 바와 같으며, 응용프로그램의 확장 파일 속성에 수록된 보안 정보인 보안 등급과 카테고리 정보(101)를 그대로 상속받아 수록하고 있다.
이와 같이 생성되어 실행중인 P1 프로세스에서 추가로 다른 프로세스를 생성(260)할 수도 있다. 이때 P1 프로세스에 의해 추가로 생성되는 프로세스를 자식 프로세스인 P2 프로세스라 하겠다. 이렇게 프로세스에 의해 추가로 프로세스가 생성(270)되면, 상술한 바와 동일하게 프로세스 메모리와 커널 메모리에 각각 프로그램이 적재되고 프로세스 구조체가 생성된다. 이렇게 생성된 P2 프로세스(210)는 프로세스 메모리에 프로그램이 적재되고, P2 프로세스 구조체(310)는 커널 메모리에 생성되어 저장된다. 이때에 P2 프로세스 구조체(310)의 보안 정보는 역시 P1 프로세스 구조체에 할당되어 수록된 보안 등급과 카테고리 정보(102)를 그대로 상속받아 수록한다.
따라서, 최초 시스템 보안관리자가 설정한 보안 정보는 계속해서 프로세스 내에 유지되어(정확하게는 커널 메모리 내의 프로세스 구조체) 본 발명에 따른 강제적 접근 제어에 적용할 수 있게 된다.
다음으로, 아래에서는 도 4의 S50 단계부터 S90 단계까지의 절차인 수정된 BLP 모델을 적용하여 프로세스에서 시도한 프로세스 메모리 접근에 대한 강제적 접근 제어를 구현하는 구체적인 방법을 설명한다.
참고로, 이하에서 설명하는 실시예는 윈도우즈 기반의 운영체제에서 처리되는 절차이며, 유닉스 계열 또는 다른 계열에서 이루어지는 처리 절차와 다소 차이가 있을 수 있으나 그 개념은 동일한 것으로 이해하여야 한다.
도 6을 참조하면, 먼저 시스템 내에서 실행중인 프로세스의 접근 요청(이벤트)이 발생한다. 이러한 접근 요청 중 프로세스 메모리에 대한 접근 요청이 발생한다.(1) 구체적으로 프로세스 메모리에 대한 접근 요청으로는 API 중 Kernel32.dll의 ReadProcessMemory 또는 WriteProcessMemory 함수의 호출을 예로 들 수 있다. 여기서, ReadProcessMemory 함수는 프로세스 메모리에 액세스하여 읽기 작업을 수행하는 함수이고, WriteProcessMemory 함수는 프로세스 메모리에 액세스하여 쓰기 작업을 수행하는 함수이다.
이와 같은 프로세스 메모리에 대한 접근 요청이 발생하면 이를 포착하여 후킹하는 절차가 이루어진다.(2) 이때에 상술한 ReadProcessMemory 또는 WriteProcessMemory 함수를 후킹하는 함수를 HookReadProcessMemory 또는 HookWriteProcessMemory 함수로 정의한다. 여기서, 후킹은 코드를 실행하는 특정 섹션을 가로채는 기술을 의미한다. 즉, 특정 목적으로 파일의 생성이나 혹은 메모리 접근 등의 이벤트를 추적하고자 할 때 해당 이벤트 관련 API를 후킹할 수 있다. 후킹은 운영체제의 동작을 수정하기 위한 유용한 방법으로 이용되고 있다. 주어진 인자 또는 리턴값을 수정하여 프로그램의 동작을 제어하거나 API 호출을 로그에 남길 수 있다. 이런 식으로 API 후킹을 가로챈 뒤에 어떠한 작업을 해주는 함수 즉, API 후킹 프로시저를 선언, 정의하여 API 후킹을 시도할 수 있다. 본 발명에서는 프로세스 메모리에 접근을 요청(이벤트)하는 함수를 후킹하는 함수를 정의한다.
이렇게 프로세스 메모리 접근 요청에 해당하는 함수를 후킹하여 접근 권한을 체크하는 절차를 진행한다.(3) 여기서 도면에 도시된 MAC는 Mandatory Access Control의 약자이다. 이때에는 주체 및 객체의 보안 등급, 카테고리 정보가 저장된 데이터베이스를 참조(4)하여 권한 체크 절차를 진행한다. 구체적인 권한 체크 절차는 이상에서 설명한 내용에 다수 포함되므로 생략하기로 한다.
권한 체크 절차 이후에 그 결과 정보를 다시 후킹 함수로 되돌린다.(5) 후킹 함수는 반환된 권한 체크 결과 정보를 기초로 후킹한 함수 즉, ReadProcessMemory 또는 WriteProcessMemory 함수에 대한 처리를 허용할 것인지 차단할 것인지를 판단한다.
허용하는 경우(6)에는 윈도우즈 시스템에 후킹한 함수를 그대로 되돌려 주어 함수 처리를 수행하도록 한다. 이를 통해 프로세스 메모리에 접근을 시도하는 함수는 HAL(Hardware Abstraction Layer)과 정상적인 작업을 처리한다.(7,8) 윈도우즈 시스템은 정상적으로 처리된 결과를 프로세스 메모리 접근을 시도한 함수로 되돌려 주고(9,10) 이 함수는 정상적으로 작업(프로세스의 접근 요청에 따른 작업)을 마치게 된다.(11)
반면에, 후킹 함수에서 권한 체크 결과 프로세스 메모리에 대한 접근 권한이 없는 것으로 판단되는 경우에는 해당 API 함수를 호출하지 않고 연산 결과로 실패 값을 리턴하여 돌리보내게 된다.(12) 이를 통해 프로세스 접근 요청에 따른 ReadProcessMemory 또는 WriteProcessMemory 함수의 호출은 실패하고 프로세스 접근 역시 차단된다.
아울러, 프로세스 접근 요청이 프로세스 메모리의 접근에 관련된 ReadProcessMemory 또는 WriteProcessMemory 함수와 관련되지 않은 경우라면, 기타 API를 호출(13)하고 이에 따라 윈도우즈 시스템에서 이를 HAL과 정상적으로 처리한 후(14,15,16) 그 결과를 돌려주어(17) 최종 프로세스 접근 요청에 따른 작업이 완료(18)되는 절차가 진행된다.
도면에서와 같이 수정된 BLP에 기초한 권한 체크는 커널 모드에서 진행되고 API 호출 및 후킹은 어플리케이션 모드에서 진행된다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.

Claims (12)

  1. (a) 시스템 보안관리자로 하여금 시스템에 설치되는 응용프로그램에 보안 등급과 카테고리 정보를 배정하여 설정하도록 하는 단계;
    (b) 시스템 내에 설치된 응용프로그램이 실행되어 프로세스가 생성될 때 프로세스 구조체에 필드를 할당하고 해당 응용프로그램에 설정된 보안 등급과 카테고리 정보를 수록하는 단계; 및
    (c) 실행중인 프로세스가 주체가되고 다른 실행중인 프로세스를 객체로 하여 주체가 객체의 프로세스 메모리를 액세스할 때, 상기 객체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보를 상기 주체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보와 서로 비교하여 수정된 BLP 모델에 따라 객체의 프로세스 메모리에 대한 주체의 접근 권한을 커널모드에서 결정하는 단계;를 포함하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  2. 제 1 항에 있어서,
    상기 프로세스 구조체에는 할당된 2개의 필드에 각각 따로 보안 등급과 카테고리 정보가 수록되는 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  3. 제 1 항에 있어서,
    상기 단계 (a)에서 설정된 보안 등급과 카테고리 정보는,
    설치된 해당 응용프로그램의 실행 파일에 대한 정보가 저장된 확장 파일 속성에 할당된 2개의 필드에 각각 따로 보안 등급과 카테고리 정보가 수록되는 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  4. 제 2 항 또는 제 3 항에 있어서,
    상기 보안 등급이 수록되는 필드와 카테고리 정보가 수록되는 필드에는 각각 소정 비트수로 이루어진 보안 등급 표시부와 카테고리 표시부가 포함되어 있는 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  5. 제 1 항에 있어서,
    상기 단계 (b)는,
    상기 생성된 프로세스에 의해 생성되는 자식 프로세스 구조체에도 상기 보안 등급과 카테고리 정보를 복사하여 상속시키는 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  6. 제 1 항에 있어서,
    상기 단계 (b)에서,
    하나의 응용프로그램이 실행되어 다수의 프로세스가 생성될 경우 각각의 생성된 프로세스 구조체에 필드를 할당하고 해당 응용프로그램에 설정된 보안 등급과 카테고리 정보를 동일하게 수록하는 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  7. 제 1 항에 있어서,
    상기 단계 (c)는,
    (c1) 주체가 객체의 프로세스 메모리 액세스를 위한 API를 호출하는 단계;
    (c2) 상기 호출된 API를 후킹하여 상기 객체와 주체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보를 서로 비교하여 수정된 BLP 모델에 따라 객체의 프로세스 메모리에 대한 주체의 접근 권한을 커널모드에서 체크하는 후킹함수로 연결하는 단계; 및
    (c3) 상기 후킹함수는 체크 결과 접근 권한이 있는 주체는 프로세스 메모리 액세스를 위한 API 호출을 허가하고, 접근 권한이 없는 주체는 API 호출을 거부하는 단계;를 포함하는 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  8. 제 7 항에 있어서,
    상기 객체의 프로세스 메모리 액세스를 위해 호출하는 API는 윈도우즈 기반의 Kernel32.dll에 존재하는 ReadProcessMemory 및 WriteProcessMemory 함수인 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  9. 제 1 항에 있어서,
    상기 단계 (b)는,
    (b1) 프로세스가 생성되어 커널모드에서만 액세스 가능한 커널 메모리에 해당 프로세스에 대한 정보가 프로세스 구조체로 적재될 때, 상기 프로세스 구조체에 보안 등급과 카테고리 정보를 수록할 수 있는 저장공간을 확보하는 단계;
    (b2) 상기 저장공간에 상속받은 보안 등급과 카테고리 정보를 저장하는 단계; 및
    (b3) 프로그램 로더에 의해 응용프로그램과 그에 링크된 DLL들이 함께 메모리에 적재되어 운영체제의 제어를 받는 단계;를 포함하는 것을 특징으로 하는 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법.
  10. 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리 접근 제어 방법을 제공하는 프로그램이 기록된 기록매체로서,
    (1) 시스템 보안관리자로 하여금 시스템에 설치되는 응용프로그램에 보안 등급과 카테고리 정보를 배정하여 설정하도록 하는 절차와,
    (2) 시스템 내에 설치된 응용프로그램이 실행되어 프로세스가 생성될 때 프로세스 구조체에 필드를 할당하고 해당 응용프로그램에 설정된 보안 등급과 카테고리 정보를 수록하는 절차 및
    (3) 실행중인 프로세스가 주체가되고 다른 실행중인 프로세스를 객체로 하여 주체가 객체의 프로세스 메모리를 액세스할 때, 상기 객체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보를 상기 주체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보와 서로 비교하여 수정된 BLP 모델에 따라 객체의 프로세스 메모리에 대한 주체의 접근 권한을 커널모드에서 결정하는 절차를 실행하는 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체.
  11. 제 10 항에 있어서,
    상기 절차 (2)는,
    프로세스가 생성되어 커널모드에서만 액세스 가능한 커널 메모리에 해당 프로세스에 대한 정보가 프로세스 구조체로 적재될 때, 상기 프로세스 구조체에 보안 등급과 카테고리 정보를 수록할 수 있는 저장공간을 확보하는 절차와,
    상기 저장공간에 상속받은 보안 등급과 카테고리 정보를 저장하는 절차 및
    프로그램 로더에 의해 응용프로그램과 그에 링크된 DLL들이 함께 메모리에 적재되어 운영체제의 제어를 받는 절차로 이루어진 것을 특징으로 하는 컴퓨터로 판독 가능한 기록매체.
  12. 제 10 항 또는 제 11 항에 있어서,
    상기 절차 (3)은,
    주체가 객체의 프로세스 메모리 액세스를 위한 API를 호출하는 절차와,
    커널모드에서 상기 호출된 API를 후킹하여 상기 객체와 주체의 프로세스 구조체에 수록된 보안 등급과 카테고리 정보를 서로 비교하여 수정된 BLP 모델에 따라 객체의 프로세스 메모리에 대한 주체의 접근 권한을 체크하는 후킹함수로 연결하는 절차 및
    상기 후킹함수는 체크 결과 접근 권한이 있는 주체는 프로세스 메모리 액세스를 위한 API 호출을 허가하고, 접근 권한이 없는 주체는 API 호출을 거부하는 절차로 이루어진 것을 특징으로 하는 컴퓨터로 판독 가능한 기록매체.
KR1020080028976A 2008-03-28 2008-03-28 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로읽을 수 있는 기록매체 KR100960358B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080028976A KR100960358B1 (ko) 2008-03-28 2008-03-28 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로읽을 수 있는 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080028976A KR100960358B1 (ko) 2008-03-28 2008-03-28 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로읽을 수 있는 기록매체

Publications (2)

Publication Number Publication Date
KR20090103396A true KR20090103396A (ko) 2009-10-01
KR100960358B1 KR100960358B1 (ko) 2010-05-28

Family

ID=41532940

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080028976A KR100960358B1 (ko) 2008-03-28 2008-03-28 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로읽을 수 있는 기록매체

Country Status (1)

Country Link
KR (1) KR100960358B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101414580B1 (ko) * 2013-01-24 2014-07-16 한남대학교 산학협력단 다중 등급 기반 보안 리눅스 운영 시스템
WO2017004918A1 (zh) * 2015-07-06 2017-01-12 深圳市中兴微电子技术有限公司 安全控制方法、装置和计算机存储介质
KR20170067740A (ko) * 2014-09-30 2017-06-16 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 운영 체제 공격으로부터 애플리케이션 기밀사항을 보호하는 기법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102130504B1 (ko) * 2018-09-18 2020-08-05 이화여자대학교 산학협력단 리눅스 컨테이너 환경에서의 어플리케이션 처리 방법, 이를 수행하기 위한 기록매체 및 장치

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100343069B1 (ko) * 2000-08-26 2002-07-05 박태규 다중 등급 보안 방식에 의한 강제적 객체접근 제어 방법및 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는기록매체

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101414580B1 (ko) * 2013-01-24 2014-07-16 한남대학교 산학협력단 다중 등급 기반 보안 리눅스 운영 시스템
KR20170067740A (ko) * 2014-09-30 2017-06-16 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 운영 체제 공격으로부터 애플리케이션 기밀사항을 보호하는 기법
WO2017004918A1 (zh) * 2015-07-06 2017-01-12 深圳市中兴微电子技术有限公司 安全控制方法、装置和计算机存储介质

Also Published As

Publication number Publication date
KR100960358B1 (ko) 2010-05-28

Similar Documents

Publication Publication Date Title
US6430561B1 (en) Security policy for protection of files on a storage device
US9881013B2 (en) Method and system for providing restricted access to a storage medium
Karger Limiting the damage potential of discretionary Trojan horses
US5414852A (en) Method for protecting data in a computer system
KR100877650B1 (ko) 개인 식별 정보 라벨 및 사용목적 서빙 펑션 세트를사용하는 pii 데이터 액세스 제어 기능부의 구현 및이용방법과 시스템
US7337291B2 (en) Software memory access control
KR100596135B1 (ko) 가상 디스크를 이용한 응용 프로그램 별 접근통제시스템과 그 통제방법
US20090271586A1 (en) Method and system for providing restricted access to a storage medium
US20050091658A1 (en) Operating system resource protection
US8452740B2 (en) Method and system for security of file input and output of application programs
JPH06103058A (ja) プログラム権限情報データ構造
US9516031B2 (en) Assignment of security contexts to define access permissions for file system objects
Jaeger et al. Managing the risk of covert information flows in virtual machine systems
KR980010772A (ko) 컴퓨터 소프트웨어의 복사 방지 방법
KR100960358B1 (ko) 다중 등급 보안 방식에 기초한 강제적 프로세스 메모리접근 제어 방법 및 이를 프로그램화하여 수록한 컴퓨터로읽을 수 있는 기록매체
JP6670318B2 (ja) ソフトウェアアプリケーションにおける分類及びirmの実現
KR100343069B1 (ko) 다중 등급 보안 방식에 의한 강제적 객체접근 제어 방법및 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는기록매체
KR101227187B1 (ko) 보안영역 데이터의 반출 제어시스템과 그 제어방법
US7454788B2 (en) Method for adding and enforcing enhanced authorization policy on devices in computer operation systems
Petkovic et al. A host based method for data leak protection by tracking sensitive data flow
EP2535832B1 (en) A method for operating a virtual machine over a file system
JP2014170324A (ja) アクセス制御システム、アクセス制御方法およびプログラム
KR101956725B1 (ko) 인가된 실행 파일 및 동적 라이브러리 파일 기반 서버 접근 통제 시스템
GB2555569A (en) Enhanced computer objects security
CN117436079B (zh) 一种Linux系统的完整性保护方法及系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130520

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140520

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150520

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160520

Year of fee payment: 7