KR20200080386A - Apparatus and method for checking kernel integrity - Google Patents
Apparatus and method for checking kernel integrity Download PDFInfo
- Publication number
- KR20200080386A KR20200080386A KR1020180163730A KR20180163730A KR20200080386A KR 20200080386 A KR20200080386 A KR 20200080386A KR 1020180163730 A KR1020180163730 A KR 1020180163730A KR 20180163730 A KR20180163730 A KR 20180163730A KR 20200080386 A KR20200080386 A KR 20200080386A
- Authority
- KR
- South Korea
- Prior art keywords
- kernel
- execution region
- computing devices
- computing device
- individual
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/301—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3452—Performance evaluation by statistical analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
본 발명은 클라우드 환경 하에서 신뢰 실행 환경 기반의 커널 무결성 검사 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for checking kernel integrity based on a trusted execution environment in a cloud environment.
종래기술에서는 대개 무결성 검사 대상을 하나의 안드로이드 커널로만 한정한 경우가 많다. 그러나 실제로 굉장히 많은 수의 안드로이드 스마트폰들이 다양한 작업들을 수행하기 위해서 클라우드 환경을 구축할 수 있다.In the prior art, the integrity check target is usually limited to only one Android kernel. However, in fact, a very large number of Android smartphones can build a cloud environment to perform various tasks.
이러한 안드로이드 스마트폰 클라우드 환경 하에서 안드로이드 커널에 대한 무결성 검사 방법은 종래 기술에서는 많이 다루어지 않았다. 안드로이드 스마트폰 클라우드가 다양한 분야에서 필요하다는 점에서 안드로이드 스마트폰 클라우드 환경 아래에서 안드로이드 커널에 대한 무결성 검사 방법에 대한 발명은 필수적이라고 볼 수 있다.In the Android smartphone cloud environment, the integrity checking method for the Android kernel has not been dealt with in the prior art. Since the Android smartphone cloud is required in various fields, it can be considered that the invention of the integrity checking method for the Android kernel under the Android smartphone cloud environment is essential.
본 발명은 컴퓨팅 디바이스의 클라우드 환경에서 커널에 대한 안전하고 효과적인 무결성 검사를 제공하기 위한 것이다.The present invention is to provide a secure and effective integrity check for the kernel in the cloud environment of the computing device.
본 발명의 일 측면에 따르면, 커널 무결성 검사 장치는 N개의 컴퓨팅 디바이스(N은 자연수)를 포함하는 클라우드 환경 하에서 서로 독립적으로 운영되는 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경(Trusted Execution Environment) 기반의 커널 무결성 검사 장치에 있어서, 상기 N개의 컴퓨팅 디바이스에 적용되는 시간을 동기화시키고, 개별 컴퓨팅 디바이스의 시간을 다수의 타임 슬롯으로 분할하는 시간 제어부; 상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수인 개별 비정상 동작 횟수를 측정하는 개별 비정상 동작 검출기; 상기 N개의 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 상기 타임 슬롯 동안 비정상적으로 동작한 횟수의 평균값인 전체 비정상 동작 횟수 평균을 획득하는 전체 비정상 동작 횟수 평균 획득기; 및 상기 제 2 실행 영역에 구비되어 상기 개별 비정상 동작 횟수 및 상기 전체 비정상 동작 횟수 평균을 기반으로 상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널에 대한 무결성을 검사하는 무결성 검사부를 포함할 수 있다.According to an aspect of the present invention, the kernel integrity checking apparatus is a trusted execution environment including a first execution region and a second execution region independently operated from each other under a cloud environment including N computing devices (N is a natural number) (Trusted) An execution environment based kernel integrity checking apparatus comprising: a time control unit synchronizing time applied to the N computing devices and dividing the time of each computing device into a plurality of time slots; An individual abnormal motion detector that measures the number of individual abnormal operations, which is the number of times the kernel provided in the first execution region of the individual computing device operates abnormally during one time slot; A total number of abnormal operation averages for obtaining an average of the total number of abnormal operations, which is an average value of the number of abnormal operations of the kernel provided in the first execution region of the N computing devices during the time slot; And an integrity checker provided in the second execution region to check the integrity of the kernel provided in the first execution region of the individual computing device based on the average number of the individual abnormal operations and the total number of abnormal operations. have.
또한, 상기 제 1 실행 영역은 비보안영역이고, 상기 제 2 실행 영역은 보안영역일 수 있다.Also, the first execution area may be a non-security area, and the second execution area may be a security area.
또한, 상기 개별 비정상 동작 검출기는, 상기 N개의 컴퓨팅 디바이스 중 j번째 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 t번째 타임 슬롯 동안 비정상적으로 동작한 횟수 Aj t를 측정하고, 상기 전체 비정상 동작 횟수 평균 획득기는,Further, the individual abnormal motion detector measures the number of times A j t of the kernel provided in the first execution region of the j-th individual computing device among the N computing devices abnormally operating during the t-th time slot, and the total Average number of abnormal operation
[수학식 1] [Equation 1]
상기 수학식 1을 통해 At를 산출할 수 있다.A t may be calculated through Equation 1 above.
상기 무결성 검사부는, 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 클 확률 ξ이, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 단말의 제 1 실행 영역에 있는 커널이 제 t번째 타임 슬롯 동안 공격자에 의해 악의적으로 변경되지 않았을 때 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 클 확률 보다 작거나 같으면 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경되지 않을 가능성이 높다고 결정할 수 있다.The integrity checker has a probability ξ that the absolute value of the difference between A j t and A t is greater than a preset threshold value, and the kernel in the first execution region of the j th terminal among N computing devices constituting the cloud. Probability that the absolute value of the difference between A j t and A t is greater than a preset threshold when it is not maliciously changed by an attacker during the t-th time slot If less than or equal, it can be determined that the kernel in the first execution region of the j-th computing device is highly unlikely to be maliciously modified by an attacker.
또한, 상기 무결성 검사부는, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스에서 상기 전체 비정상 동작 횟수 평균 획득기를 통해 획득한 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수 중 u번의 타임슬롯 동안 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 큰 경우의 수 를 산출할 수 있다.In addition, the integrity check unit, the kernel provided in the first execution region of the individual computing device obtained through the average of the total number of abnormal operations in the j-th computing device of the N computing devices constituting the cloud is one time The number of cases in which the absolute value of the difference between A j t and A t is greater than a preset threshold during u timeslots among the number of abnormal operations during the slot. Can be calculated.
또한, 상기 무결성 검사부는, 산출된 상기 경우의 수 가 기 결정된 제 1 임계값 e0보다 작거나 같으면, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경되지 않은 것으로 결정하고, 상기 산출된 경우의 수가 기 결정된 제 2 임계값 e1보다 크거나 같으면, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것으로 결정할 수 있다.In addition, the integrity check unit, the number of cases calculated If is less than or equal to the determined first threshold value e 0, it is determined that the kernel in the first execution region of the j-th computing device among the N computing devices constituting the cloud has not been maliciously modified by an attacker, If the number of calculated cases is greater than or equal to the predetermined second threshold value e 1 , it can be determined that the kernel in the first execution region of the jth computing device among the N computing devices constituting the cloud has been maliciously modified by an attacker. have.
또한, 상기 무결성 검사부는, 산출된 상기 경우의 수 가 상기 제 1 임계값 e0보다 크고 상기 제 2 임계값 e1보다 작으면, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스에서 상기 전체 비정상 동작 횟수 평균 획득기를 통해 획득한 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수 중 u번의 타임슬롯 동안 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 큰 경우의 수를 산출하여 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것인지에 대한 여부를 결정할 수 있다.In addition, the integrity check unit, the number of cases calculated If is greater than the first threshold value e 0 and less than the second threshold value e 1 , the individual computing devices acquired through the total number of abnormal operation averages from the jth computing device among the N computing devices constituting the cloud. The number of cases in which the absolute value of the difference between the A j t and the A t is greater than a preset threshold value during u timeslots among the number of times the kernel provided in the first execution region has abnormally operated during one time slot. By calculating, it is possible to determine whether the kernel in the first execution region of the j-th computing device among the N computing devices constituting the cloud has been maliciously modified by an attacker.
본 발명의 다른 측면에 따르면, 커널 무결성 검사 방법은 N개의 컴퓨팅 디바이스(N은 자연수)를 포함하는 클라우드 환경 하에서 서로 독립적으로 운영되는 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경(Trusted Execution Environment) 기반의 커널 무결성 검사 장치가, 상기 N개의 컴퓨팅 디바이스에 적용되는 시간을 동기화시키고, 개별 컴퓨팅 디바이스의 시간을 다수의 타임 슬롯으로 분할하는 단계; 상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수인 개별 비정상 동작 횟수를 측정하는 단계; 상기 N개의 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 상기 타임 슬롯 동안 비정상적으로 동작한 횟수의 평균값인 전체 비정상 동작 횟수 평균을 획득하는 단계; 및 상기 제 2 실행 영역에 구비되어 상기 개별 비정상 동작 횟수 및 상기 전체 비정상 동작 횟수 평균을 기반으로 상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널에 대한 무결성을 검사하는 단계를 포함할 수 있다.According to another aspect of the present invention, the kernel integrity check method is a trusted execution environment including a first execution region and a second execution region that are independently operated from each other under a cloud environment including N computing devices (N is a natural number). Execution Environment) based kernel integrity checking apparatus, synchronizing the time applied to the N computing devices, and dividing the time of each computing device into a plurality of time slots; Measuring an individual number of abnormal operations, which is the number of times the kernel provided in the first execution region of the individual computing device operates abnormally during one time slot; Obtaining an average of the total number of abnormal operations, which is an average value of the number of times the kernel provided in the first execution region of the N computing devices has abnormally operated during the time slot; And checking the integrity of the kernel provided in the first execution region of the individual computing device based on the average of the number of abnormal operations and the total number of abnormal operations provided in the second execution region. .
또한, 스마트 디바이스와 결합되어 상기의 커널 무결성 검사 방법에 따른 커널 무결성 검사 방법을 실행시키기 위하여 매체에 저장된 애플리케이션일 수 있다.In addition, it may be an application stored in a medium to execute a kernel integrity check method according to the above-described kernel integrity check method in combination with a smart device.
본 발명의 일 실시 예에 의하면, 컴퓨팅 디바이스의 클라우드 환경에서 커널에 대한 안전하고 효과적인 무결성 검사를 제공할 수 있다According to an embodiment of the present invention, it is possible to provide a safe and effective integrity check for the kernel in the cloud environment of the computing device.
도 1은 본 발명의 일 실시 예에 따른 커널 무결성 검사 시스템의 블록도이다.
도 2는 본 발명의 일 실시 예에 따른 커널 무결성 검사 장치의 세부적인 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 커널 무결성 검사 방법에 대한 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 커널 무결성 검사 방법의 구체적인 실시 예이다.1 is a block diagram of a kernel integrity check system according to an embodiment of the present invention.
2 is a detailed block diagram of a kernel integrity checking apparatus according to an embodiment of the present invention.
3 is a flowchart of a kernel integrity check method according to an embodiment of the present invention.
4 is a detailed embodiment of a kernel integrity check method according to an embodiment of the present invention.
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되는 실시 예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Other advantages and features of the present invention, and methods for achieving them will be clarified with reference to embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only the present embodiments allow the disclosure of the present invention to be complete, and the common knowledge in the technical field to which the present invention pertains. It is provided to fully inform the holder of the scope of the invention, and the invention is only defined by the scope of the claims.
만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 가진다. 일반적인 사전들에 의해 정의된 용어들은 관련된 기술 그리고/혹은 본 출원의 본문에 의미하는 것과 동일한 의미를 갖는 것으로 해석될 수 있고, 그리고 여기서 명확하게 정의된 표현이 아니더라도 개념화되거나 혹은 과도하게 형식적으로 해석되지 않을 것이다.If not defined, all terms (including technical or scientific terms) used herein have the same meaning as generally accepted by universal technology in the prior art to which this invention belongs. Terms defined by general dictionaries can be interpreted as having the same meaning as meaning in the text of the present application and/or related descriptions, and are not conceptualized or over-formally interpreted, even if not explicitly defined herein. Will not.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다' 및/또는 이 동사의 다양한 활용형들 예를 들어, '포함', '포함하는', '포함하고', '포함하며' 등은 언급된 조성, 성분, 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 조성, 성분, 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다. 본 명세서에서 '및/또는' 이라는 용어는 나열된 구성들 각각 또는 이들의 다양한 조합을 가리킨다.The terminology used herein is for describing the embodiments and is not intended to limit the present invention. In the present specification, the singular form also includes the plural form unless otherwise specified in the phrase. As used herein,'includes' and/or various conjugations of this verb, such as'includes','includes','includes','includes', etc. The steps, operations and/or elements do not exclude the presence or addition of one or more other compositions, ingredients, components, steps, operations and/or elements. The term'and/or' used herein refers to each of the listed configurations or various combinations thereof.
한편, 본 명세서 전체에서 사용되는 '~부', '~기', '~블록', '~모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부', '~기', '~블록', '~모듈' 등이 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부', '~기', '~블록', '~모듈'은 어드레싱 할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.Meanwhile, terms such as'~ unit','~ group','~ block', and'~ module' used throughout this specification may refer to a unit that processes at least one function or operation. For example, it can mean a hardware component such as software, FPGA or ASIC. However,'~bu','~gi','~block', and'~module' are not limited to software or hardware. The'~unit','~gi','~block', and'~module' may be configured to be in an addressable storage medium or may be configured to play one or more processors.
따라서, 일 예로서 '~부', '~기', '~블록', '~모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부', '~기', '~블록', '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부', '~기', '~블록', '~모듈'들로 결합되거나 추가적인 구성요소들과 '~부', '~기', '~블록', '~모듈'들로 더 분리될 수 있다.Thus, as examples,'~unit','~gi','~block', and'~module' are components such as software components, object-oriented software components, class components and task components. Fields, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays and Includes variables. Components and functions provided in'~unit','~gi','~block', and'~module' have a smaller number of components and'~unit','~gi','~block It can be combined with','~modules', or can be further separated into additional components and'~units','~gi','~blocks', and'~modules'.
이하, 본 발명은 ARM 주식회사의 ARM TrustZone 기술을 기초로 설명하며, 본 명세서에 첨부된 도면을 참조하여 본 발명의 실시 예를 상세하게 설명한다.Hereinafter, the present invention will be described based on the ARM TrustZone technology of ARM Corporation, and embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시 예에 따른 커널 무결성 검사 시스템의 블록도이다.1 is a block diagram of a kernel integrity check system according to an embodiment of the present invention.
도 1을 참조하면, 커널 무결성 검사 시스템은 클라우드 환경 하에서 다수 개의 컴퓨팅 디바이스(10)를 포함한다. 여기서, 컴퓨팅 디바이스(10)는 일반 사용자가 이용하는 단말기를 말하며, 예를 들면 스마트폰, 태블릿 PC일 수 있다. Referring to FIG. 1, a kernel integrity check system includes a plurality of
본 발명은 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경 기반의 다수개의 안드로이드 스마트폰들로 구성된 클라우드 환경을 고려한다. 여기서, 제 1 실행 영역은 비보안영역(Normal World)이고, 제 2 실행 영역은 보안영역(Secure World)을 말한다.The present invention contemplates a cloud environment composed of a plurality of Android smartphones based on a trusted execution environment including a first execution region and a second execution region. Here, the first execution area is a non-secure area (Normal World), and the second execution area is a secure area (Secure World).
또한, 제 1 실행 영역의 커널에 대한 무결성 검사를 수행하는 모듈이 각각의 컴퓨팅 디바이스의 제 2 실행 영역에 설치된다. 각각의 무결성 검사를 수행하는 모듈은 클라우드 내의 다른 모듈들과 커널이 비정상적으로 동작한 부분에 대한 정보를 교환한다. 교환되는 정보를 바탕으로 각각의 무결성 검사를 수행하는 모듈은 기 정의된 단계를 수행한다. 기 결정된 단계를 수행함으로써 빠른 시간에 정확한 결정을 내릴 수 있다.In addition, a module that performs an integrity check on the kernel of the first execution region is installed in the second execution region of each computing device. The module that performs each integrity check exchanges information about the abnormal operation of the kernel with other modules in the cloud. The module that performs each integrity check based on the exchanged information performs predefined steps. By performing the predetermined steps, it is possible to make an accurate decision in a short time.
도 2는 본 발명의 일 실시 예에 따른 커널 무결성 검사 장치의 세부적인 블록도이다.2 is a detailed block diagram of a kernel integrity checking apparatus according to an embodiment of the present invention.
도 2를 참조하면, 커널 무결성 검사 장치는 N개의 컴퓨팅 디바이스(N은 자연수)를 포함하는 클라우드 환경 하에서 서로 독립적으로 운영되는 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경(Trusted Execution Environment) 기반으로, 시간 제어부(11), 개별 비정상 동작 검출기(12), 전체 비정상 동작 횟수 평균 획득기(13) 및 무결성 검사부(14)를 포함한다.Referring to FIG. 2, the kernel integrity check apparatus is a trusted execution environment including a first execution region and a second execution region that operate independently of each other under a cloud environment including N computing devices (N is a natural number). ), based on the
상기 시간 제어부(11)는 클라우드를 구성하는 N개의 컴퓨팅 디바이스(10)에 적용되는 시간을 동기화시키고, 개별 컴퓨팅 디바이스(10)의 시간을 다수의 타임 슬롯으로 분할한다.The
상기 개별 비정상 동작 검출기(12)는 N개의 컴퓨팅 디바이스(10)의 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수인 개별 비정상 동작 횟수를 측정한다. N개의 컴퓨팅 디바이스 중 j번째 개별 컴퓨팅 디바이스의 제 1 실행 영역에 구비된 커널이 t번째 타임 슬롯 동안 비정상적으로 동작한 횟수 Aj t를 측정한다.The individual
상기 전체 비정상 동작 횟수 평균 획득기(13)는 N개의 컴퓨팅 디바이스(10)의 제 1 실행 영역에 구비된 커널이 타임 슬롯 동안 비정상적으로 동작한 횟수의 평균값인 전체 비정상 동작 횟수 평균을 획득한다. 여기서, 비정상 동작 횟수 평균 획득기(13)는 개별 컴퓨팅 디바이스에서 각각의 N개의 컴퓨팅 디바이스(10)로부터 제 1 실행 영역에 구비된 커널이 타임 슬롯 동안 비정상적으로 동작한 횟수를 수신하여 평균값을 산출할 수 있고, 클라우드 서버(20)가 각각의 N개의 컴퓨팅 디바이스로부터 제 1 실행 영역에 구비된 커널이 타임 슬롯 동안 비정상적으로 동작한 횟수를 수신하여 평균값을 산출할 수 있다The total number of
상기 무결성 검사부(14)는 제 2 실행 영역에 구비되어 개별 비정상 동작 횟수 및 전체 비정상 동작 횟수 평균을 기반으로 개별 컴퓨팅 디바이스의 제 1 실행 영역에 구비된 커널에 대한 무결성을 검사한다.The
도 3은 본 발명의 일 실시 예에 따른 커널 무결성 검사 방법에 대한 흐름도이다.3 is a flowchart of a kernel integrity check method according to an embodiment of the present invention.
도 3을 참조하면, N개의 컴퓨팅 디바이스(N은 자연수)를 포함하는 클라우드 환경 하에서 서로 독립적으로 운영되는 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경(Trusted Execution Environment) 기반의 커널 무결성 검사 장치가 상기 N개의 컴퓨팅 디바이스에 적용되는 시간을 동기화시키고, 개별 컴퓨팅 디바이스(10)의 시간을 다수의 타임 슬롯으로 분할하는 단계(S10), 상기 개별 컴퓨팅 디바이스(10)의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수인 개별 비정상 동작 횟수를 측정하는 단계(S20), 상기 N개의 컴퓨팅 디바이스(10)의 상기 제 1 실행 영역에 구비된 커널이 상기 타임 슬롯 동안 비정상적으로 동작한 횟수의 평균값인 전체 비정상 동작 횟수 평균을 획득하는 단계(S30) 및 상기 제 2 실행 영역에 구비되어 상기 개별 비정상 동작 횟수 및 상기 전체 비정상 동작 횟수 평균을 기반으로 상기 개별 컴퓨팅 디바이스(10)의 상기 제 1 실행 영역에 구비된 커널에 대한 무결성을 검사하는 단계(S40)을 포함한다.Referring to FIG. 3, kernel integrity based on a trusted execution environment including a first execution region and a second execution region independently operated from each other in a cloud environment including N computing devices (N is a natural number) Synchronizing the time that the inspection apparatus is applied to the N computing devices, and dividing the time of the
도 4는 본 발명의 일 실시 예에 따른 커널 무결성 검사 방법의 구체적인 실시 예이다. 도 4를 참조하여, 커널 무결성 검사 방법을 설명하면 아래와 같다.4 is a detailed embodiment of a kernel integrity check method according to an embodiment of the present invention. Referring to FIG. 4, a kernel integrity check method will be described below.
먼저, 클라우드 환경을 구성하는 N개의 컴퓨팅 디바이스(10)에 적용되는 시간을 동기화하고, 각각의 컴퓨팅 디바이스(10)의 시간을 다수의 타임슬롯으로 분할한다. 또한, 클라우드를 구성하는 N개의 컴퓨팅 디바이스(10) 중 j번째 컴퓨팅 디바이스(10)의 무결성 검사부(14)를 Mj라 하고, 상기 무결성 검사부(14)는 j번째 컴퓨팅 디바이스(10)의 제 2 실행 영역에 설치된다(j는 자연수, j≤N).First, time applied to
클라우드를 구성하는 N개의 컴퓨팅 디바이스(10) 중 j번째 컴퓨팅 디바이스(10)의 제 1 실행 영역에서 동작하는 커널이 t번째 타임슬롯 동안 비정상적으로 동작한 횟수를 개별 비정상 동작 횟수 Aj t로 정의하고, 클라우드를 구성하는 N개의 컴퓨팅 디바이스(10) 각각의 제 1 실행 영역에서 동작하는 커널이 t 번째 타임슬롯 동안 비정상적으로 동작한 횟수의 평균값인 전체 비정상 동작 횟수의 평균 At를 아래와 같이 정의한다(t는 자연수).The number of times the kernel operating in the first execution region of the
또한, j번째 컴퓨팅 디바이스(10)의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경되지 않는다는 가설(H0)과 j번째 컴퓨팅 디바이스(10)의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된다는 대립 가설(H1)을 설정한다.In addition, the hypothesis (H 0 ) that the kernel in the first execution region of the j-
그리고, 는 Bernoulli(베르누이) 확률 변수로 다음과 같이 정의한다.And, Is defined as the Bernoulli random variable as follows.
여기서, δ는 미리 정의된 임계 값이며, 는 하나의 샘플로 보며 각각의 샘플들은 상호간에 독립적으로 측정되기 때문에 가 독립적으로 동일하게 분포되어 있다고 가정한다.Where δ is a predefined threshold, Is considered as one sample, and each sample is measured independently of each other. Is assumed to be distributed equally independently.
Bernoulli(베르누이) 확률 분포에 따른 성공확률 ξ는 다음과 같이 정의한다.The probability of success ξ according to the Bernoulli probability distribution is defined as follows.
본 발명의 일 실시 예에 따르면, 무결성 검사부(14)는 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 클 확률(ξ)이, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스(10) 중 j번째 컴퓨팅 디바이스(10)의 제 1 실행 영역에 있는 커널이 t번째 타임 슬롯 동안 공격자에 의해 악의적으로 변경되지 않았을 때 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값 보다 클 확률 보다 작거나 같으면 j번째 컴퓨팅 디바이스(10)의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경되지 않을 가능성이 높다고 결정한다.According to an embodiment of the present invention, the
나아가, j번째 컴퓨팅 디바이스의 제 1 타임슬롯, 제 2 타임슬롯 및 제 u 타임슬롯에서 각각 생성된 u(u는 자연수, 1≤t≤u)개의 샘플 중에서 인 샘플의 수를 라 한다. 여기서 하나의 타임슬롯마다 하나의 샘플이 생성된다. j번째 컴퓨팅 디바이스는 N개의 컴퓨팅 디바이스의 제 1 실행 영역에서 동작하는 커널이 t번째 타임슬롯 동안 비정상적으로 동작한 횟수를 개별 비정상 동작 횟수 Aj t를 획득한다. 획득된 정보를 기초로 t번째 타임슬롯 동안 커널 무결성 검사를 수행한다.Furthermore, among u (u is a natural number, 1≤t≤u) samples respectively generated in the first timeslot, the second timeslot, and the u timeslot of the jth computing device, The number of samples It says. Here, one sample is generated for each time slot. The j-th computing device acquires the number of times of abnormal operation A j t of the number of times the kernel operating in the first execution region of the N computing devices operates abnormally during the t-th timeslot. Kernel integrity check is performed during the t-th timeslot based on the obtained information.
다시 말하면, 무결성 검사부(14)는 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스에서 상기 전체 비정상 동작 횟수 평균 획득기를 통해 획득한 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수 중 u번의 타임슬롯 동안 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 큰 경우의 수를 산출한다(S41). 여기서, 경우의 수는 j번째 컴퓨팅 디바이스의 u개의 베르누이 확률변수, 즉, j번째 컴퓨팅 디바이스의 1번째 타임슬롯 내지 u번째 타임슬롯에서 각각 생성된 샘플을 말한다.In other words, the
본 발명의 일 실시 예에 따르면, 무결성 검사부(14)는 산출된 경우의 수가 기 결정된 제 1 임계값 e0보다 작거나 같으면(, S42), 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경되지 않은 것으로 결정하고(S43), 산출된 경우의 수가 기 결정된 제 2 임계값 e1보다 크거나 같으면(, S44), 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것으로 결정할 수 있다(S45).According to an embodiment of the present invention, the
더해서, 무결성 검사부(14)는 산출된 경우의 수가 제 1 임계값 e0보다 크고 제 2 임계값 e1보다 작으면(, S46), 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스에서 상기 전체 비정상 동작 횟수 평균 획득기를 통해 획득한 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수 중 u번의 타임슬롯 동안 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 큰 경우의 수를 산출하여 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것인지에 대한 여부를 결정할 수 있다.In addition, if the number of calculated cases is greater than the first threshold e 0 and less than the second threshold e 1 ( , S46), a kernel provided in the first execution region of an individual computing device obtained through the average number of times the total number of abnormal operations in the jth computing device among N computing devices constituting the cloud is abnormal during one time slot Of the number of times when u is operated, the number of cases in which the absolute value of the difference between A j t and A t is greater than a preset threshold during u timeslots is calculated from the j th computing device among the N computing devices constituting the cloud. It is possible to determine whether the kernel in the first execution region has been maliciously modified by the attacker.
예를 들면, 1번째 타임슬롯을 기초로 경우의 수를 산출하여 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것인지에 대한 여부가 결정되지 않으면, 2번째 타임슬롯을 기초로 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것인지에 대한 여부를 결정한다. 이와 같이, 타임슬롯을 순차적으로 선택하여 커널 무결성 검사를 진행할 수 있다.For example, it is determined whether the kernel in the first execution region of the jth computing device among the N computing devices configuring the cloud by calculating the number of cases based on the first timeslot is maliciously changed by the attacker. Otherwise, it is determined whether the kernel in the first execution region of the j-th computing device among the N computing devices configuring the cloud based on the second timeslot is maliciously changed by the attacker. As such, the kernel integrity check may be performed by sequentially selecting timeslots.
여기서, 은 위와 같이 정의하고, , , , : 설정 가능한 파라미터이다.here, Is defined as above, , , , : This is a configurable parameter.
본 발명의 커널 무결성 검사 장치는 컴퓨팅 디바이스(10)의 제 1 실행 영역에 있는 커널이 공격자에 의해 변경되었는지 여부를 제 2 실행 영역에 설치된 무결성 검사부(14)가 검사한다. 무결성 검사부(14)는 제 2 실행 영역에 설치되기 때문에 공격자의 제어 권한 아래에 놓이지 않게 되어 안전하게 커널에 대한 무결성 검사를 수행할 수 있다. 또한, 상기의 커널 무결성 검사 방법을 이용하면 빠르고 정확하게 결정을 내릴 수 있어 커널에 대한 무결성 검사 시점을 결정하는데 효율적이다.In the kernel integrity checking apparatus of the present invention, the
또한, 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경 기반의 안드로이드 기반의 단말들 내에 설치된 다수의 가상머신들로 구성된 클라우드 환경에서도 본 발명이 적용이 가능하여 확장성이 뛰어난 것이 특징이다.In addition, the present invention can be applied to a cloud environment composed of a plurality of virtual machines installed in Android-based terminals based on a trusted execution environment including a first execution region and a second execution region, and is excellent in scalability. .
본 발명의 일 실시 예에 따르면, 스마트 디바이스와 결합되어 상기의 커널 무결성 검사 방법에 따른 커널 무결성 검사 방법을 실행시키기 위하여 매체에 저장될 수 있다.According to an embodiment of the present invention, it may be stored in a medium in combination with a smart device to execute a kernel integrity check method according to the above kernel integrity check method.
이상의 상세한 설명은 본 발명을 예시하는 것이다. 또한 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내어 설명하는 것이며, 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있다. 즉 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당업계의 기술 또는 지식의 범위내에서 변경 또는 수정이 가능하다. 저술한 실시예는 본 발명의 기술적 사상을 구현하기 위한 최선의 상태를 설명하는 것이며, 본 발명의 구체적인 적용 분야 및 용도에서 요구되는 다양한 변경도 가능하다. 따라서 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.The above detailed description is to illustrate the present invention. In addition, the above-described content is to describe and describe preferred embodiments of the present invention, and the present invention can be used in various other combinations, modifications and environments. That is, it is possible to change or modify the scope of the concept of the invention disclosed herein, the scope equivalent to the disclosed contents, and/or within the scope of technology or knowledge in the art. The embodiments described describe the best state for implementing the technical idea of the present invention, and various changes required in specific application fields and uses of the present invention are possible. Therefore, the detailed description of the above invention is not intended to limit the present invention to the disclosed embodiments. In addition, the appended claims should be construed to include other embodiments.
10 : 컴퓨팅 디바이스
20 : 클라우드 서버
30 : 클라우드
11 : 시간 제어부
12 : 개별 비정상 동작 검출기
13 : 전체 비정상 동작 횟수 평균 획득기
14 : 무결성 검사부10: computing device
20: cloud server
30: Cloud
11: Time control
12: individual abnormal motion detector
13: Average number of abnormal operation counts
14: integrity checker
Claims (9)
상기 N개의 컴퓨팅 디바이스에 적용되는 시간을 동기화시키고, 개별 컴퓨팅 디바이스의 시간을 다수의 타임 슬롯으로 분할하는 시간 제어부;
상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수인 개별 비정상 동작 횟수를 측정하는 개별 비정상 동작 검출기;
상기 N개의 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 상기 타임 슬롯 동안 비정상적으로 동작한 횟수의 평균값인 전체 비정상 동작 횟수 평균을 획득하는 전체 비정상 동작 횟수 평균 획득기; 및
상기 제 2 실행 영역에 구비되어 상기 개별 비정상 동작 횟수 및 상기 전체 비정상 동작 횟수 평균을 기반으로 상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널에 대한 무결성을 검사하는 무결성 검사부를 포함하는 커널 무결성 검사 장치.In the kernel integrity check apparatus based on the trusted execution environment (Trusted Execution Environment) comprising a first execution region and a second execution region independent of each other under a cloud environment containing N computing devices (N is a natural number),
A time control unit synchronizing time applied to the N computing devices and dividing the time of each computing device into a plurality of time slots;
An individual abnormal motion detector that measures the number of individual abnormal operations, which is the number of times the kernel provided in the first execution region of the individual computing device operates abnormally during one time slot;
A total number of abnormal operation average acquirers for obtaining an average of the total number of abnormal operations, which is an average value of the number of times the kernel provided in the first execution region of the N computing devices operates abnormally during the time slot; And
Kernel integrity including an integrity checker provided in the second execution region to check the integrity of the kernel provided in the first execution region of the individual computing device based on the average of the number of individual abnormal operations and the total number of abnormal operations. Inspection device.
상기 제 1 실행 영역은 비보안영역이고, 상기 제 2 실행 영역은 보안영역인 커널 무결성 검사 장치.According to claim 1,
The first execution area is a non-security area, and the second execution area is a security area.
상기 N개의 컴퓨팅 디바이스 중 j번째 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 t번째 타임 슬롯 동안 비정상적으로 동작한 횟수 Aj t를 측정하고,
상기 전체 비정상 동작 횟수 평균 획득기는,
[수학식 1]
상기 수학식 1을 통해 At를 산출하는 커널 무결성 검사 장치(j 및 t는 자연수, j≤N).The method of claim 1, wherein the individual abnormal motion detector,
The number of times A j t of the kernel provided in the first execution region of the jth individual computing device among the N computing devices is abnormally operated during the tth time slot is measured,
The total number of abnormal operation average acquirers,
[Equation 1]
Kernel integrity check device for calculating A t through Equation 1 (j and t are natural numbers, j ≤ N).
상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 클 확률 ξ이, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 단말의 제 1 실행 영역에 있는 커널이 제 t번째 타임 슬롯 동안 공격자에 의해 악의적으로 변경되지 않았을 때 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 클 확률보다 작거나 같으면 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경되지 않을 가능성이 높다고 결정하는 커널 무결성 검사 장치.According to claim 3, The integrity checker,
The probability ξ that the absolute value of the difference between A j t and A t is greater than a preset threshold value is the t th time of the kernel in the first execution region of the j th terminal among the N computing devices constituting the cloud. The probability that the absolute value of the difference between the A j t and the A t is greater than a preset threshold when it is not maliciously changed by an attacker during the slot If less than or equal, a kernel integrity checker that determines that the kernel in the first execution region of the jth computing device is highly unlikely to be maliciously modified by an attacker.
상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스에서 상기 전체 비정상 동작 횟수 평균 획득기를 통해 획득한 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수 중 u번의 타임슬롯 동안 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 큰 경우의 수 를 산출하는 커널 무결성 검사 장치(u는 자연수, 1≤t≤u).According to claim 4, The integrity checker,
The number of times the kernel provided in the first execution region of the individual computing device obtained through the average number of times the total number of abnormal operations in the jth computing device among the N computing devices constituting the cloud has been abnormally operated during one time slot The number of cases in which the absolute value of the difference between A j t and A t is greater than a preset threshold during u timeslot Kernel integrity check device for calculating (u is a natural number, 1≤t≤u).
산출된 상기 경우의 수 가 기 결정된 제 1 임계값 e0보다 작거나 같으면, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경되지 않은 것으로 결정하고, 상기 산출된 경우의 수가 기 결정된 제 2 임계값 e1보다 크거나 같으면, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것으로 결정하는 커널 무결성 검사 장치.According to claim 5, The integrity checker,
Number of cases calculated above If is less than or equal to the determined first threshold value e 0, it is determined that the kernel in the first execution region of the jth computing device among the N computing devices constituting the cloud has not been maliciously modified by an attacker, If the number of calculated cases is greater than or equal to the predetermined second threshold value e 1 , the kernel in the first execution region of the j-th computing device among the N computing devices constituting the cloud is determined to be maliciously changed by an attacker Kernel integrity checking device.
산출된 상기 경우의 수 가 상기 제 1 임계값 e0보다 크고 상기 제 2 임계값 e1보다 작으면, 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스에서 상기 전체 비정상 동작 횟수 평균 획득기를 통해 획득한 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수 중 u번의 타임슬롯 동안 상기 Aj t와 상기 At의 차이의 절대값이 기 설정된 임계값보다 큰 경우의 수를 산출하여 상기 클라우드를 구성하는 N개의 컴퓨팅 디바이스 중 j번째 컴퓨팅 디바이스의 제 1 실행 영역에 있는 커널이 공격자에 의해 악의적으로 변경된 것인지에 대한 여부를 결정하는 커널 무결성 검사 장치.The method of claim 6, wherein the integrity checker,
Number of cases calculated above If is greater than the first threshold value e 0 and less than the second threshold value e 1 , the individual computing devices acquired through the total number of abnormal operation averages from the jth computing device among the N computing devices constituting the cloud. The number of cases in which the absolute value of the difference between the A j t and the A t is greater than a preset threshold value during u timeslots among the number of times the kernel provided in the first execution region has abnormally operated during one time slot. Kernel integrity checking apparatus for determining whether the kernel in the first execution region of the j-th computing device among the N computing devices constituting the cloud is maliciously changed by an attacker.
상기 N개의 컴퓨팅 디바이스에 적용되는 시간을 동기화시키고, 개별 컴퓨팅 디바이스의 시간을 다수의 타임 슬롯으로 분할하는 단계;
상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 하나의 타임 슬롯 동안 비정상적으로 동작한 횟수인 개별 비정상 동작 횟수를 측정하는 단계;
상기 N개의 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널이 상기 타임 슬롯 동안 비정상적으로 동작한 횟수의 평균값인 전체 비정상 동작 횟수 평균을 획득하는 단계; 및
상기 제 2 실행 영역에 구비되어 상기 개별 비정상 동작 횟수 및 상기 전체 비정상 동작 횟수 평균을 기반으로 상기 개별 컴퓨팅 디바이스의 상기 제 1 실행 영역에 구비된 커널에 대한 무결성을 검사하는 단계를 포함하는 커널 무결성 검사 방법.A kernel integrity checking apparatus based on a trusted execution environment including a first execution region and a second execution region that are independently operated from each other in a cloud environment including N computing devices (N is a natural number),
Synchronizing the time applied to the N computing devices, and dividing the time of the individual computing devices into a plurality of time slots;
Measuring an individual number of abnormal operations, which is the number of times the kernel provided in the first execution region of the individual computing device operates abnormally during one time slot;
Obtaining an average of the total number of abnormal operations, which is an average value of the number of times the kernel provided in the first execution region of the N computing devices has abnormally operated during the time slot; And
And checking the integrity of the kernel provided in the first execution region of the individual computing device based on the average of the number of the individual abnormal operations and the total number of abnormal operations provided in the second execution region. Way.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180163730A KR102137894B1 (en) | 2018-12-18 | 2018-12-18 | Apparatus and method for checking kernel integrity |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180163730A KR102137894B1 (en) | 2018-12-18 | 2018-12-18 | Apparatus and method for checking kernel integrity |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200080386A true KR20200080386A (en) | 2020-07-07 |
KR102137894B1 KR102137894B1 (en) | 2020-07-24 |
Family
ID=71603183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180163730A KR102137894B1 (en) | 2018-12-18 | 2018-12-18 | Apparatus and method for checking kernel integrity |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102137894B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170142672A (en) * | 2016-06-20 | 2017-12-28 | 주식회사 씨오티커넥티드 | Computing apparatus based on trusted execution environment |
KR20180013854A (en) * | 2016-03-29 | 2018-02-07 | 후아웨이 인터내셔널 피티이. 엘티디. | System and method for verifying the integrity of electronic devices |
KR20180093038A (en) * | 2015-12-11 | 2018-08-20 | 제말토 에스에이 | A mobile device with a trusted execution environment |
-
2018
- 2018-12-18 KR KR1020180163730A patent/KR102137894B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180093038A (en) * | 2015-12-11 | 2018-08-20 | 제말토 에스에이 | A mobile device with a trusted execution environment |
KR20180013854A (en) * | 2016-03-29 | 2018-02-07 | 후아웨이 인터내셔널 피티이. 엘티디. | System and method for verifying the integrity of electronic devices |
KR20170142672A (en) * | 2016-06-20 | 2017-12-28 | 주식회사 씨오티커넥티드 | Computing apparatus based on trusted execution environment |
Non-Patent Citations (1)
Title |
---|
비특허문헌1 * |
Also Published As
Publication number | Publication date |
---|---|
KR102137894B1 (en) | 2020-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10607015B1 (en) | Security risk assessment and control for code | |
AU2017206394B2 (en) | Method, system and device for testing and readable storage medium | |
US9372779B2 (en) | System, method, apparatus and computer program for automatic evaluation of user interfaces in software programs | |
EP3396905B1 (en) | Method and device for securely sending a message | |
RU2013136976A (en) | SYSTEM AND METHOD FOR TEMPORARY PROTECTION OF OPERATING SYSTEM OF SOFTWARE AND HARDWARE DEVICES FROM APPLICATIONS CONTAINING VULNERABILITY | |
CN104081407A (en) | Remote trust attestation and geo-location of servers and clients in cloud computing environments | |
US20170271027A1 (en) | Methods and systems of testing interfaces of computer storage for storage vulnerabilities | |
US20210049281A1 (en) | Reducing risk of smart contracts in a blockchain | |
US20200267178A1 (en) | Credential spray attack detection | |
CN106775971B (en) | Data processing apparatus | |
US10929258B1 (en) | Method and system for model-based event-driven anomalous behavior detection | |
EP3722942B1 (en) | Running integration tests using unit tests | |
US8949991B2 (en) | Testing web services that are accessible via service oriented architecture (SOA) interceptors | |
CN113779562A (en) | Zero trust based computer virus protection method, device, equipment and medium | |
KR102137894B1 (en) | Apparatus and method for checking kernel integrity | |
CN112235300B (en) | Cloud virtual network vulnerability detection method, system, device and electronic equipment | |
CN104753741A (en) | Network card test performance adjustment method and device | |
CN104462942A (en) | Method and system for detecting trusted user input/output interface of mobile terminal | |
CN111427737B (en) | Method and device for modifying exception log and electronic equipment | |
US20200036737A1 (en) | Identification of deviant engineering modifications to programmable logic controllers | |
EP3136278B1 (en) | Dynamically loaded code analysis device, dynamically loaded code analysis method, and dynamically loaded code analysis program | |
CN115130114B (en) | Gateway secure starting method and device, electronic equipment and storage medium | |
CN115455414A (en) | Safety detection method and device | |
CN111767585A (en) | Object identification method and device, electronic equipment and storage medium | |
US20160188443A1 (en) | Testing application internal modules with instrumentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |