KR20240105364A - 실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 방법 및 디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼 - Google Patents
실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 방법 및 디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼 Download PDFInfo
- Publication number
- KR20240105364A KR20240105364A KR1020247009014A KR20247009014A KR20240105364A KR 20240105364 A KR20240105364 A KR 20240105364A KR 1020247009014 A KR1020247009014 A KR 1020247009014A KR 20247009014 A KR20247009014 A KR 20247009014A KR 20240105364 A KR20240105364 A KR 20240105364A
- Authority
- KR
- South Korea
- Prior art keywords
- disk
- disk device
- area
- execution platform
- label
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000004224 protection Effects 0.000 claims abstract description 29
- 230000008569 process Effects 0.000 description 9
- 238000005192 partition Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Storage Device Security (AREA)
Abstract
실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 방법 및 디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼
실행 플랫폼(1)에 연결된 디스크 장치(7)로의 액세스를 제어하기 위한 방법이 제공되며, 상기 방법은
상기 디스크 장치(7)의 제1 영역(9)을 예약하고 상기 제1 영역(9)에 고유한 디스크 레이블(11)을 저장하는 단계 - 상기 제1 영역(9)은 암호화되지 않음 - ,
상기 디스크 장치(7)의 제2 영역(10)을 암호화하는 단계 - 상기 제2 영역(10)은 사용자 데이터 및 파일 정보를 포함함 - 를 포함하고, 상기 방법은
상기 실행 플랫폼(1) 상에서 실행되는 암호 에이전트(12)를 제공하고 디스크 장치(7)의 열림이 요청되는 경우,
- 제1 영역(9)에 저장된 고유 디스크 레이블(11)을 읽는 단계,
- 고유한 디스크 레이블(11)에 기초하여 디스크 장치(7)에 대한 보호 정책을 검색하는 단계, 및
- 보호 정책에 기초하여 상기 디스크 장치(7)로의 추가 액세스를 처리하는 단계를 수행하는 단계를 더 포함한다.
실행 플랫폼(1)에 연결된 디스크 장치(7)로의 액세스를 제어하기 위한 방법이 제공되며, 상기 방법은
상기 디스크 장치(7)의 제1 영역(9)을 예약하고 상기 제1 영역(9)에 고유한 디스크 레이블(11)을 저장하는 단계 - 상기 제1 영역(9)은 암호화되지 않음 - ,
상기 디스크 장치(7)의 제2 영역(10)을 암호화하는 단계 - 상기 제2 영역(10)은 사용자 데이터 및 파일 정보를 포함함 - 를 포함하고, 상기 방법은
상기 실행 플랫폼(1) 상에서 실행되는 암호 에이전트(12)를 제공하고 디스크 장치(7)의 열림이 요청되는 경우,
- 제1 영역(9)에 저장된 고유 디스크 레이블(11)을 읽는 단계,
- 고유한 디스크 레이블(11)에 기초하여 디스크 장치(7)에 대한 보호 정책을 검색하는 단계, 및
- 보호 정책에 기초하여 상기 디스크 장치(7)로의 추가 액세스를 처리하는 단계를 수행하는 단계를 더 포함한다.
Description
분야
본 발명은 실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 방법 및 디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼에 관한 것이다.
소개
윈도우 시스템에는 고유하거나 인간 상호 작용이 쉬운 하드 디스크 장치 식별자나 논리 장치 번호가 없다. \device\00000011과 같은 장치 경로가 있지만 재부팅이나 시스템 전반에 걸쳐 고유하거나 지속되지 않는다. 시스템 재부팅 시 동일한 디스크에 대한 장치 경로가 변경될 수 있거나 디스크가 다른 시스템에 연결된다.
각 디스크 장치에는 "B23BD65F" 형식의 일련 번호가 있으며 이 일련 번호는 장치에 대해 상대적으로 고유하며 재부팅 및 다수 시스템에서 지속된다. 그러나 사용자가 기억하거나 이해하기 어렵다.
디스크는 일반적으로 사용자 데이터를 저장하는 실제 볼륨과 함께 파티션 테이블 및 이와 관련 정보를 가진다. 윈도우 시스템에는 시스템에 의해 예약되는 개인 시스템 볼륨 파티션이 존재한다. 많은 디스크 암호화 솔루션은 파티션 정보를 그대로 건너뛰고 사용자 볼륨만 암호화한다.
암호화된 장치는 시스템이나 사용자 애플리케이션에 의해 다양한 방식으로 액세스될 수 있다. 암호화는 디스크 장치 레벨에서 이루어지기 때문에, 볼륨 또는 디스크를 직접 열 수 있는 임의의 애플리케이션이 클리어 데이터를 읽거나 수정할 수 있을 것이다. 스토리지 시스템이 계층화되어 있기 때문에 파일 시스템 레벨 체크만으로는 이러한 유형의 액세스를 차단할 수 없다. 따라서 예를 들어 파일 시스템이 가장 상위이고 그 다음이 볼륨, 그 다음이 디스크이다. 파일 시스템 수준에서 시작된 요청이 일반적으로 하위 계층으로 내려가지만(즉, 데이터가 실제로 볼륨/디스크로부터 읽힐 것임) 볼륨/디스크(블록) 레벨에서 시작된 요청은 절대 파일 시스템으로 올라가지 않을 것이다. 따라서 파일 시스템 규칙에 "이 사용자가 파일 X를 읽지 못하도록 차단"한다고 되어 있지만 해당 사용자가 디스크를 직접 열고 해당 파일이 있는 저장소 영역을 읽는 경우, 그는 해당 계층을 완전히 건너뛰어 파일 시스템의 모든 보호를 완전히 우회한 것이다.
따라서, 인가된 사용에 대해 더 나은 보호를 제공하는 실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 방법을 제공할 필요가 있다.
본 발명은 독립청구항 1 및 9에 의해 정의된다. 본 발명의 추가 형태가 종속청구항에 제공된다.
실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하는 방법은 다음 단계를 포함할 수 있다:
상기 디스크 장치의 제1 영역을 예약하고 상기 제1 영역에 고유한 디스크 레이블을 저장하는 단계 - 상기 제1 영역은 암호화되지 않음 - , 및
상기 디스크 장치의 제2 영역을 암호화하는 단계 - 상기 제2 영역은 사용자 데이터 및 파일 정보를 포함함 - 를 포함한다.
상기 방법은 상기 실행 플랫폼 상에서 실행되는 암호 에이전트를 제공하고 디스크 장치의 열림이 요청되는 경우, 다음 단계를 수행하는 단계를 더 포함할 수 있다:
- 제1 영역에 저장된 고유 디스크 레이블을 읽는 단계,
- 고유한 디스크 레이블에 기초하여 디스크 장치에 대한 보호 정책을 검색하는 단계, 및
- 보호 정책에 기초하여 상기 디스크 장치로의 추가 액세스를 처리하는 단계.
디스크 장치의 제1 영역에 저장된 고유한 디스크 레이블을 고려하면, 시스템 재부팅, 다중 호스트 시스템 및 클러스터 노드 전반에 걸쳐 디스크 장치를 고유하게 식별하는 것이 가능하다. 따라서 암호 에이전트는 디스크 장치에 대한 대응하는 보호 정책을 검색하고 상기 보호 정책에 기초하여 디스크 장치로의 추가 액세스를 처리할 수 있다.
본 발명의 방법은 랜섬웨어 공격 중에 프로세스에 의한 인증되지 않은 액세스로부터 디스크 장치를 보호하는 사용 사례를 해결할 수 있다. 특히, 액세스 제어 및 암호화를 사용함으로써 디스크 장치에 대한 보호가 제공될 수 있다.
암호 에이전트는 실행 플랫폼 상에서 실행되는 소프트웨어 또는 소프트웨어 모듈일 수 있다.
디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼은 실행 플랫폼에 연결된 디스크 장치로의 액세스를 제어하기 위한 본 발명의 방법(본 발명의 방법의 모든 추가 실시예 포함)과 동일한 기능을 포함할 수 있다.
앞서 언급되었지만 아직 설명되지 않은 특징들은 본 발명의 범위를 벗어나지 않고 지정된 조합뿐만 아니라 다른 조합으로도 또는 그 자체로도 사용 가능하다는 것이 자명하다.
이하에서, 본 발명은 마찬가지로 본 발명에 필수적인 특징을 개시하는 첨부 도면을 참조하여 예시적인 실시예에 기초하여 더 자세히 설명된다. 이들 예시적인 실시예는 단지 설명을 위한 것이며 제한하는 것으로 해석되어서는 안 된다. 예를 들어, 다수의 구성요소 또는 구성요소를 갖는 실시예에 대한 설명은 이들 구성요소 또는 구성요소가 모두 구현에 필요하다는 의미로 해석되어서는 안 된다. 오히려, 다른 실시예는 또한 대안적인 요소 및 구성요소, 추가 요소 또는 구성요소, 또는 추가 요소 또는 구성요소를 포함할 수도 있다. 달리 명시되지 않는 한, 다양한 실시예의 요소 또는 구성요소는 서로 결합될 수 있다. 실시예 중 하나에 대해 설명된 수정 및 변경은 다른 실시예에도 적용될 수 있다. 반복을 피하기 위해, 다른 도면에서 동일하거나 상호 대응하는 요소에는 동일한 참조 부호를 붙이고 여러 번 설명하지 않는다.
도 1은 연결된 디스크 장치(7)와 함께 실행 플랫폼(1)을 개략적으로 도시한다.
도 2는 디스크 장치에 대한 액세스를 처리하기 위한 암호 에이전트(12)의 기능을 개략적으로 도시한다.
도 3은 디스크 장치에 대한 액세스를 처리하기 위한 암호 에이전트(12)의 기능을 개략적으로 도시한다.
도 2는 디스크 장치에 대한 액세스를 처리하기 위한 암호 에이전트(12)의 기능을 개략적으로 도시한다.
도 3은 디스크 장치에 대한 액세스를 처리하기 위한 암호 에이전트(12)의 기능을 개략적으로 도시한다.
도 1은 소프트웨어 애플리케이션을 실행하기 위한 실행 플랫폼(1)을 개략적으로 도시한다. 실행 플랫폼(1)은 예를 들어, 컴퓨팅 섹션(2)(예를 들어 프로세서(3), 작업 메모리(4), 운영 체제 및 추가 하드웨어 요소를 포함), 입력 장치(5)(이 경우, 예를 들어, 키보드), 및 출력 유닛(6)(가령, 스크린)을 포함하는 일반적인 개인용 컴퓨터로 구현된다. 물론, 실행 플랫폼은 예를 들어, 분산 시스템(여기서 분산 시스템의 구성요소가 네트워킹된 상이한 컴퓨터 상에 위치함), 다중 호스트 시스템 또는 컴퓨터 클러스터일 수 있다.
또한, 양방향 화살표(8)로 표시된 바와 같이 실행 플랫폼(1)에 연결되는 디스크 장치(7)가 제공된다. 디스크 장치(7)는 하드 디스크 드라이브(예를 들어 자기 저장 장치를 사용하거나 솔리드 스테이트 드라이브로 구현됨)일 수 있다. 또한, 디스크 장치(7)는 상이한 폼 팩터(예를 들어 3.5인치 또는 2.5인치 드라이브 또는 USB 플래시 드라이브)로 구현될 수 있다. 특히, 디스크 장치(7)는 외부 대용량 저장 장치일 수 있거나 외부 대용량 저장 장치(예를 들어 SAN(storage Area Network) 및/또는 NAS(Network Attached Storage))에 의해 제공될 수 있다. 따라서, 디스크 장치(7)는 직접 연결된 디스크 장치, 실행 플랫폼(1) 상의 제어기에 연결된 RAID 구성(RAID = Redundant Array of Independent Disks)의 디스크 또는 외부 SAN/NAS 스토리지 장치일 수 있다.
나타난 바와 같이, 디스크 장치(7)는 제1 영역(9)과 제2 영역(10)을 포함한다.
재부팅 및/또는 다른 실행 플랫폼에 걸쳐 디스크 장치(7)를 고유하게 식별하기 위해 고유한 디스크 레이블(11)이 디스크 장치(7)와 연관되고 동일한 디스크 장치(7) 상의 제1 영역(9)에 저장된다. 이 고유한 디스크 레이블(11)은 사용자가 쉽게 이해하고 기억할 수 있도록 제공하는 것이 바람직하다. 디스크 장치(7)가 다른 시스템이나 다른 실행 플랫폼으로 이동하더라도, 디스크 장치(7)는 완전히 동일한 디스크 레이블(11)로 식별될 수 있다. 디스크 장치(7) 상에 고유한 디스크 레이블(11)을 저장함으로써 운영 체제 세부사항에 대한 독립성이 제공된다. 예를 들어, 일반 디스크가 실행 플랫폼(1)에 삽입되는 경우 이는 \Device\00000005로 알려질 수 있다. 상기 일반 디스크가 다른 시스템에 넣어지는 경우에는 \Device\00000007이 될 수 있고, 운영 체제가 다른 경우에는 /dev/sd1과 같은 것일 수도 있다. 이것이 동일한 디스크인지 확실히 알 수 있는 방법은 없다. 그러나 본 발명에 따르면 디스크 장치(7)가 어디로 이동하든 디스크 장치(7) 상에 사용자 정의 고유 디스크 레이블(11)을 포함하는 프라이빗 영역(상기 제1 영역(9))(가령, "SQL 데이터베이스 123")이 추가될 수 있으며 운영체제가 어떤 순서로 디스크를 부착하더라도 사용자는 이것이 자신이 생각하는 디스크와 동일하다는 것을 항상 알 수 있다.
제1 영역(9)은 암호화되지 않으며 64MB를 포함할 수 있다. 제1 영역에는 예를 들어 제2 영역(10)을 암호화/복호화하는 데 사용되는 키 정보와 같은 추가 정보가 저장될 수 있다. 물론, 제1 영역(9)의 크기는 다양할 수 있으며 항상 64 MB일 필요는 없다.
제2 영역(10)은 100 GB를 포함할 수 있으며 사용자 데이터 및 파일 정보(가령, 파티션 테이블 및 그 밖의 다른 시스템 특이적 프라이빗 볼륨)를 포함할 수 있다. 물론, 제2 영역(10)의 크기는 다양할 수 있으며 항상 100 GB일 필요는 없다.
실행 플랫폼(1) 상에서 실행되는 암호 에이전트(12)(도 2)가 추가로 제공된다. 디스크 장치(7)의 개방이 요청되는 경우(도 2; 단계 S1), 암호 에이전트(12)는 다음 단계를 수행할 수 있다. 디스크 장치(7)가 식별되고, 제1 영역(9)으로부터 고유 디스크 레이블(11)이 판독된다(단계 S2). 그 후, 암호 에이전트(12)는 데이터 보안 관리자(13)로부터 고유 디스크 레이블(11)에 기초하여 상기 디스크 장치(7)에 대한 보호 정책을 검색한다(단계 S3).
일반적으로 보호 정책에는 사용자 세트, 리소스 세트 및 규칙 세트가 포함될 것이다. 예를 들어, 이는 "Bob"은 모든 파일을 읽을 수 있지만 그 중 어떤 파일에도 쓸 수는 없고, "Alice"는 모든 파일을 읽고 쓸 수 있으며, "Carl"은 모든 *.pdf 파일을 읽을 수 있지만 암호문을 (가령, 백업 목적으로) 가져오기만 할 수 있음을 설정할 것이다.
데이터 보안 관리자(13)는 실행 플랫폼(1)의 일부가 아니라 예를 들어 인터넷을 통해 액세스될 수 있는 원격 시스템의 일부이다. 따라서 모든 퍼즐 조각이 동일한 플랫폼 상에 저장되지 않으므로 보안이 강화될 수 있다. 특히, 데이터 보안 관리자(13)는 암호 에이전트(7) 소프트웨어를 실행하는 다양한 실행 플랫폼(1)에 정책 정보를 제공하는 별도의 시스템, 블랙 박스로 간주되어야 한다. 이는 구성 및 주요 정보를 모든 개별 실행 플랫폼(1)에 푸시하는 중앙 집중식 권한을 가진다.
암호 에이전트(12)는 보호 정책에 기초하여 디스크 장치(7)에 대한 추가 액세스를 처리한다(단계 S4). 단계 S4는 정책을 시행하여, 예를 들어 정책의 화이트리스트가 체크되고, 프로세스 시그니처(바람직하게는 시그니처가 데이터 보안 관리자(13) 상에 저장되고 실행 플랫폼에 보안이 적용되어 어떠한 악성 애플리케이션도 이들을 업데이트하여 보호 상태를 중단시킬 수 없음)가 검증되고 그 결과로서 애플리케이션이 디스크 장치(7)를 열도록 허용 또는 금지된다. 디스크 장치(7)를 여는 것이 허용되는 경우 이러한 액세스는 제2 영역(10)에서 데이터를 읽는 데 필요한 암호 해독과 제2 영역(10)에 데이터를 저장하기 위한 암호화를 포함한다(정책이 디스크 장치(7)가 열릴 수는 있지만 암호화나 복호화는 허용되지 않음을 나타내는 것이 또한 가능하다). 이러한 방식으로, 사용자 데이터에 대한 보호 정책이 시행되고 디스크 장치(7)가 보호된다.
언급된 바와 같이, 제1 영역(9)은 디스크 장치(7)에 의해 제공되는 디스크 공간의 일부이다. 따라서 디스크 장치(7) 상에서 특정 공간 또는 몇 개의 섹터가 예약되어 있다. 이들 예약된 섹터는 덮어씌여지지 않도록 다른 구성요소로부터 보호되어야 한다. 또한 이들 예약된 섹터는 실행 플랫폼(1)에 의해 사용될 수 없으므로 보고되는 장치 크기가 감소될 필요가 있다. 윈도우 시스템에서 디스크 계층 위의 모든 구현은 문제가 발생하기 쉽고 항상 신뢰할 수 있는 것은 아니다.
따라서, 암호 에이전트(12)는 도 3에 도시된 바와 같이, 운영 체제의 디스크 계층 아래에(따라서 윈도우 운영 체제의 디스크 시스템 드라이버(16) 아래에) 암호 디스크 드라이버(14)를 포함한다(위/아래는 스택 내 상대적 위치가 프로세싱 순서를 결정하는 핵심 속성이다). 따라서, 암호 디스크 드라이버(14)는 디스크 시스템 드라이버(16) 아래의 커널 드라이버이며 SCSI (SCSI = Small Computer System Interface) 요청을 필터링할 수 있다(단계 S1, S11, S21). 또한, 암호 디스크 드라이버(14)는 디스크 장치(7)의 보고된 디스크 크기를 제1 영역의 양만큼 감소시킨다. 본 예에서, 디스크 장치(7)의 디스크 공간은 100.064 GB이다. 제1 영역(9)에 대해 64 MB가 예약되기 때문에 보고되는 디스크 크기는 100 GB이다. 암호 디스크 드라이버(16)를 제공함으로써 SCSI 장치 경로를 캡처하고 앞서 기재된 보호 정책에 따라 액세스를 처리하는 것이 가능하다(단계 S3, S41, S42).
이들 두 가지 기능에 추가로, 암호 디스크 드라이버(14)는 또한 모든 연산의 디스크 오프셋을 조정해야 한다. 예를 들어, 제1 영역(9)의 길이가 64 MB인 경우 물리적 디스크 상의 오프셋 64 MB에 있는 데이터는 실제로 사용자 데이터의 논리적 오프셋 0이다. 따라서 사용자 애플리케이션이 오프셋 1 MB에서 데이터를 읽는 경우, 오프셋에 64 MB를 추가하여 변환되어야 하고 오프셋 65 MB에서 읽힌 물리적 디스크를 생성해야 한다.
따라서, 제1 영역(9)은 은닉되고 운영 체제 및/또는 사용자는 디스크 장치(7)가 약간 더 작다고 믿게 된다. 결과적으로, 이미 기재된 바와 같이, 암호 에이전트(12) 그리고 특히 암호 디스크 드라이버(14)는 논리적/유효 오프셋이 물리적/실제 오프셋과 다르기 때문에 특정 디스크 오프셋을 참조하는 임의의 연산을 변환한다.
암호 디스크 드라이버(14)가 디스크 시스템 드라이버(16) 아래의 커널 드라이버이기 때문에 잠재적인 바이패스가 회피될 수 있다는 이점이 달성된다. 이는 디스크 계층 위의 계층화 순서에 더 민감하기 때문이다. 각 계층(파일 시스템, 볼륨 등)에는 해당 레벨에서 기능을 제공하는 많은 드라이버가 있을 수 있다. 그러나 위치를 변환하는 것이 필요하기 때문에 시퀀스의 마지막 구성요소이기도 함이 보장되어야 한다. 그렇지 않으면, 파일 시스템을 완전히 우회하는 위의 예와 마찬가지로, 사용자는 본 발명의 실행 플랫폼(1)을 우회할 가능성이 있다. 예를 들어, 암호 디스크 드라이버(14)가 볼륨 필터라면, 사용자가 디스크 레벨에서 직접 읽기를 수행하면 어떤 일이 발생할까? 본 발명의 실행 플랫폼(1)은 이를 볼 수 없을 것이고 따라서 이는 조정될 수 없으며, 사용자는 잘못된 데이터를 얻거나 프라이빗 영역 등을 보게 된다.
또한, 디스크 장치(7)가 볼륨 경로(가령, \\.\C:) 또는 미가공 디스크 장치 경로(가령, \\.\PhysicalDrive1)로서 액세스되고, 따라서 파일 시스템 계층을 통해 액세스되는 것이 가능하다. 이 경우, 암호 에이전트(12)는 암호 파일 시스템 드라이버(15)를 포함하여 이러한 경로를 필터링하고(단계 S1, S12, S22 및 S21) 앞서 언급한 보호 정책에 따라 액세스를 처리할 수 있다(단계 S3, S41, S42, S43, S44).
따라서, 본 발명의 방법은 암호화된 디스크 장치(7)에 대한 서로 다른 경로를 식별하고 연관시키며 대응하는 보호 정책에 따라 이들 경로를 통한 액세스를 보호한다.
따라서 디스크 장치(7)를 보호함으로써 데이터에 대한 내부 및 외부 위협을 모두 차단할 수 있다. 디스크 장치(7) 자체가 암호화/암호 해독을 제공하는 경우 애플리케이션에서 직접 디스크 또는 볼륨을 읽음으로써 클리어 데이터가 획득될 수 있다. 본 발명의 방법은 인증되지 않은/화이트리스트에 등록되지 않은 임의의 애플리케이션으로부터 직접 디스크 및 볼륨 읽기를 차단함으로써 이를 방지한다. 또한, 본 발명의 방법은 날짜를 보호하는 데 사용될 수 있을 뿐만 아니라 임의의 악성 애플리케이션이 장치를 파괴하거나 삭제하는 것을 방지할 수도 있다. 인증되지 않은 애플리케이션이 디스크 장치(7) 상의 중요한 데이터를 삭제, 손상 또는 업데이트하려고 시도하는 것이 방지될 것이다. 따라서, 외부 디스크 장치(7)에 대해 더욱 강화되고 효율적이며 강력한 보호를 제공할 수 있다.
파일 시스템 레벨 암호화의 경우 직접 디스크 또는 볼륨 레벨 읽기는 암호화된 데이터를 반환하므로 큰 문제가 되지 않는다. 그러나 랜섬웨어(ransomware)는 여전히 직접 디스크 또는 볼륨 쓰기를 수행하여 데이터 손실을 일으킬 수 있다. 이러한 데이터 손실은 회사에 매우 큰 비용이 될 수 있다. 랜섬웨어는 인증된/화이트리스트에 올라간 애플리케이션이 아니므로 디스크 장치(7)를 직접 액세스할 수 없으므로 본 발명의 방법을 사용하면 이러한 데이터 손실이 방지된다.
고유한 디스크 레이블(11)은 사용자가 선택할 수 있다. 특히 사용자는 사람이 읽을 수 있는 고유한 이름을 지정하고 디스크 장치(7)를 액세스할 수 있는 애플리케이션을 정의할 수 있다. 예를 들어, 사용자는 허용될 애플리케이션(시스템 프로세스 포함)에 서명하고, 프로세스 세트를 생성하고 프로세스 서명을 추가하고, 보호 정책에 프로세스 세트를 추가한다. 사용자는 데이터 보호, 액세스 제어 및 보호 정책을 고안하고 이러한 정책을 고유 디스크 레이블(11)과 연관시켜 보호를 제공할 수 있다. 따라서 사용자는 정책과 보호를 적용하기 위해 긴 일련번호, 장치 ID, 하드웨어 ID를 기억할 필요가 없다.
또한, 고유한 디스크 레이블(11)을 고려하면, 시스템 재부팅, 다중 호스트 시스템 및 클러스터 노드 전반에 걸쳐 디스크 장치(7)를 고유하게 식별하는 것이 가능하다. 디스크 장치(7)가 한 시스템에서 다른 시스템으로 이동될 때 고유한 디스크 레이블(11)이 보호된 디스크 장치(7)를 식별하고 보호를 활성화할 것이다.
또한, 사용자는 디스크 장치(7)를 액세스할 수 있는 화이트리스트 애플리케이션을 지정할 수 있다. 따라서 사용자 또는 관리자가 승인되지 않거나 확인되지 않은 애플리케이션을 설치하여 보호된 데이터에 액세스하는 것을 막는다. 이 혁신은 디스크 장치(7)를 직접 액세스/열기 위한 다양한 방법을 식별하고 화이트리스트에 있는 애플리케이션만 디스크 장치(7)를 액세스할 수 있음을 보장한다. 고객은 디스크 장치를 직접 열고 데이터를 읽거나 손상시킬 수 있는 악의적인 관리자로부터 디스크 장치를 보호할 수 있다. 이 향상된 보호 기능은 권한 있는 사용자로부터 데이터 보안 및 장치 보호를 제공한다.
본 발명에 따르면, 디스크 장치(7)의 제1 영역(9)은 전술한 바와 같이 접근만 가능한 전용 프라이빗 스토리지이다. 사용자(또는 운영 체제)가 디스크 장치(7)의 "처음"부터 읽으려고 시도하더라도, 실제로는 제2 영역(10)의 시작 부분부터 읽는 것이 될 것이다. 특히, 드라이버(가령, 암호 디스크 드라이버(14) 및 암호 파일 시스템 드라이버(15))는 모든 요청을 변환하여 제1 영역(9)을 효과적으로 숨기고 운영 체제가 전체 디스크 장치(7)가 단순히 제2 영역(10)이라고 믿게 만든다.
Claims (9)
- 실행 플랫폼(1)에 연결된 디스크 장치(7)로의 액세스를 제어하기 위한 방법으로서,
상기 방법은,
상기 디스크 장치(7)의 제1 영역(9)을 예약하고 상기 제1 영역(9)에 고유한 디스크 레이블(11)을 저장하는 단계 - 상기 제1 영역(9)은 암호화되지 않음 - ,
상기 디스크 장치(7)의 제2 영역(10)을 암호화하는 단계 - 상기 제2 영역(10)은 사용자 데이터 및 파일 정보를 포함함 - 를 포함하고,
상기 방법은, 상기 실행 플랫폼(1) 상에서 실행되는 암호 에이전트(12)를 제공하고 디스크 장치(7)의 열림이 요청되는 경우,
- 제1 영역(9)에 저장된 고유 디스크 레이블(11)을 읽는 단계,
- 고유한 디스크 레이블(11)에 기초하여 디스크 장치(7)에 대한 보호 정책을 검색하는 단계, 및
- 보호 정책에 기초하여 상기 디스크 장치(7)로의 추가 액세스를 처리하는 단계
를 수행하는 단계를 더 포함하는, 방법. - 제1항에 있어서,
상기 암호 에이전트(12)는 상기 제2 영역(10)으로부터의 데이터를 읽기 위한 해독화와 상기 제2 영역(10)에 데이터를 쓰기 위한 암호화를 수행하는, 방법. - 제1항 또는 제2항에 있어서,
상기 암호 에이전트(12)는 상기 실행 플랫폼(1) 상에서 실행되는 운영 체제의 디스크 계층 아래에 암호 디스크 드라이버(14)를 포함하고,
상기 암호 디스크 드라이버(14)는 상기 디스크 계층을 우회하는 디스크 장치(7)에 대한 액세스를 제어하는, 방법. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 암호 에이전트(12)는 실행 플랫폼(1) 상에서 실행되는 운영 체제의 디스크 계층을 통해 상기 디스크 장치(7)로의 액세스를 제어하기 위한 파일 시스템 드라이버(15)를 포함하는, 방법. - 제1항 내지 제4항 중 어느 한 항에 있어서,
보호 정책은 상기 디스크 장치(7)를 액세스하도록 허용된 애플리케이션의 화이트리스트를 포함하고,
암호 에이전트(12)는 화이트리스트에 포함된 애플리케이션에 의한 디스크 장치(7)로의 액세스만을 허용하는, 방법. - 제1항 내지 제5항 중 어느 한 항에 있어서,
데이터 보안 관리자가 보안 정책을 처리하고 디스크 레이블(11)이 고유한 디스크 레이블(11)임을 보장하는 단계를 더 포함하는, 방법. - 제1항 내지 제6항 중 어느 한 항에 있어서,
사용자가 고유한 디스크 레이블(11)을 정의할 수 있는 레이블 단계를 포함하는, 방법. - 제1항 내지 제7항 중 어느 한 항에 있어서,
사용자가 디스크 장치를 액세스하도록 허용된 애플리케이션의 화이트리스트를 정의할 수 있는 정책 단계를 포함하는, 방법. - 실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼으로서,
상기 디스크 장치(7)는 고유한 디스크 레이블(11)이 저장되고 암호화되지 않는 제1 영역(9)과, 데이터 및 파일 정보를 포함하며 암호화되는 제2 영역을 포함하고,
암호 에이전트(12)가 상기 실행 플랫폼(1) 상에서 실행되며 디스크 장치(7)의 열림이 요청되는 경우,
- 제1 영역(9)에 저장된 고유 디스크 레이블(11)을 읽는 단계,
- 고유한 디스크 레이블(11)에 기초하여 디스크 장치(7)에 대한 보호 정책을 검색하는 단계, 및
- 보호 정책에 기초하여 상기 디스크 장치(7)로의 추가 액세스를 처리하는 단계를 수행하는, 실행 플랫폼.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163237613P | 2021-08-27 | 2021-08-27 | |
US63/237,613 | 2021-08-27 | ||
PCT/US2022/041616 WO2023028282A1 (en) | 2021-08-27 | 2022-08-26 | Method for controlling access to a disk device connected to an execution platform and execution platform for controlling an access to a disk device |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240105364A true KR20240105364A (ko) | 2024-07-05 |
Family
ID=83439178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247009014A KR20240105364A (ko) | 2021-08-27 | 2022-08-26 | 실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 방법 및 디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4402597A1 (ko) |
JP (1) | JP2024536924A (ko) |
KR (1) | KR20240105364A (ko) |
WO (1) | WO2023028282A1 (ko) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4643427B2 (ja) * | 2005-12-08 | 2011-03-02 | 株式会社日立製作所 | 暗号化機能内蔵ストレージシステム |
US8416954B1 (en) * | 2008-09-30 | 2013-04-09 | Emc Corporation | Systems and methods for accessing storage or network based replicas of encrypted volumes with no additional key management |
WO2009123630A1 (en) * | 2008-04-02 | 2009-10-08 | Hewlett-Packard Development Company, L.P. | Disk drive data encryption |
-
2022
- 2022-08-26 KR KR1020247009014A patent/KR20240105364A/ko unknown
- 2022-08-26 JP JP2024537803A patent/JP2024536924A/ja active Pending
- 2022-08-26 EP EP22777075.7A patent/EP4402597A1/en active Pending
- 2022-08-26 WO PCT/US2022/041616 patent/WO2023028282A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
JP2024536924A (ja) | 2024-10-08 |
EP4402597A1 (en) | 2024-07-24 |
WO2023028282A1 (en) | 2023-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9881013B2 (en) | Method and system for providing restricted access to a storage medium | |
US20080046997A1 (en) | Data safe box enforced by a storage device controller on a per-region basis for improved computer security | |
US8234477B2 (en) | Method and system for providing restricted access to a storage medium | |
US5289540A (en) | Computer file protection system | |
KR100596135B1 (ko) | 가상 디스크를 이용한 응용 프로그램 별 접근통제시스템과 그 통제방법 | |
US9583130B2 (en) | Methods for control of digital shredding of media | |
RU2559728C2 (ru) | Система и способ копирования файлов с зашифрованного диска | |
US8051053B2 (en) | System and method for data storage firewall on data storage unit | |
US8291179B2 (en) | Methods for implementation of worm enforcement in a storage system | |
AU1329601A (en) | System and method for providing data security | |
US8762738B2 (en) | System and method for protecting content on a storage device | |
JP5184041B2 (ja) | ファイルシステム管理装置およびファイルシステム管理プログラム | |
US11216411B2 (en) | Transforming data associated with a file based on file system attributes | |
US20150074820A1 (en) | Security enhancement apparatus | |
KR980010772A (ko) | 컴퓨터 소프트웨어의 복사 방지 방법 | |
US20180239912A1 (en) | Data security method and local device with switch(es) | |
KR102232919B1 (ko) | 가상화 및 cow 파일 시스템 기술을 이용한 자가 변이 시스템 | |
CA3155237A1 (en) | Ransomware prevention | |
US20240354010A1 (en) | Method for controlling access to a disk device connected to an execution platform and execution platform for controlling an access to a disk device | |
KR20240105364A (ko) | 실행 플랫폼에 연결된 디스크 장치에 대한 액세스를 제어하기 위한 방법 및 디스크 장치에 대한 액세스를 제어하기 위한 실행 플랫폼 | |
TWI745784B (zh) | 磁碟資安系統 | |
EP3814910B1 (en) | Hardware protection of files in an integrated-circuit device | |
KR100549644B1 (ko) | 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법 | |
US20220374534A1 (en) | File system protection apparatus and method in auxiliary storage device | |
Caporaso et al. | VaultFS: Write-once Software Support at the File System Level Against Ransomware Attacks |