KR20200073413A - 신뢰 실행 환경 시스템 - Google Patents

신뢰 실행 환경 시스템 Download PDF

Info

Publication number
KR20200073413A
KR20200073413A KR1020180161529A KR20180161529A KR20200073413A KR 20200073413 A KR20200073413 A KR 20200073413A KR 1020180161529 A KR1020180161529 A KR 1020180161529A KR 20180161529 A KR20180161529 A KR 20180161529A KR 20200073413 A KR20200073413 A KR 20200073413A
Authority
KR
South Korea
Prior art keywords
application unit
execution
application
region
execution region
Prior art date
Application number
KR1020180161529A
Other languages
English (en)
Other versions
KR102161777B1 (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 KR1020180161529A priority Critical patent/KR102161777B1/ko
Publication of KR20200073413A publication Critical patent/KR20200073413A/ko
Application granted granted Critical
Publication of KR102161777B1 publication Critical patent/KR102161777B1/ko

Links

Images

Classifications

    • 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/56Computer malware detection or handling, e.g. anti-virus arrangements
    • 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine

Landscapes

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

Abstract

본 발명은 신뢰 실행 환경 시스템에 관한 것이다. 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템은 서로 독립적으로 운영되는 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경(Trusted Execution Environment) 시스템에 있어서, 상기 제 1 실행 영역에 설치되어 사전에 정해진 기능을 실행하면서 상기 제 1 실행 영역을 감시하고, 상기 제 1 실행 영역에서 감지된 비정상적인 행위에 관한 정보를 상기 제 2 실행 영역으로 송신하는 제 1 애플리케이션부 및 상기 제 2 실행 영역에 설치되어 상기 제 1 애플리케이션부로부터 상기 비정상적인 행위에 관한 정보를 수신하고, 상기 수신된 정보를 기반으로 상기 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지 실행 여부를 결정하는 제 2 애플리케이션부를 포함한다.

Description

신뢰 실행 환경 시스템{TRUSTED EXECUTION ENVIRONMENT SYSTEM}
본 발명은 신뢰 실행 환경 시스템에 관한 것이다.
종래기술에서는 안드로이드 스마트폰의 신뢰 실행 환경 아래에서 비보안 영역에 대한 다양한 검사(예를 들면, 메모리 무결성 검사, 안드로이드 커널 무결성 검사 등)를 수행할 때나 비보안 영역에서의 악성 행위를 탐지할 때 주기적인 방식 또는 인터럽트 버튼을 통한 매뉴얼 방식을 사용하였다. 비보안 영역에 대한 다양한 검사를 수행하거나 비보안 영역에서의 악성 행위를 탐지할 때, 주기적인 또는 매뉴얼 방식을 사용 한다는 점에서 이러한 종래기술은 효율적이지 못하다.
또한, 비보안 영역에 있는 안드로이드 운영체제가 공격자의 제어 권한 아래에 놓이게 된다면, 이러한 종래 기술을 사용할 경우에 비보안 영역에 대한 다양한 검사와 비보안 영역에 대한 악성 행위 탐지가 공격자에 의해 무력화 될 수 있어서 종래기술은 안전성면에서도 좋지 못한 문제점이 있다.
본 발명은 안전하고 효율적인 방식으로 시스템 내에서 발생하는 악성 행위를 탐지할 수 있도록 별도의 통신 채널을 구축하기 위한 것이다.
또한, 본 발명은 시스템이 공격자의 제어 아래에 놓이더라도 별도의 데이터 전송 규칙으로 구축된 통신 채널을 통해 시스템에 대한 다양한 검사와 시스템에서 발생하는 악성 행위를 탐지하기 위한 것이다.
본 발명의 일 측면에 따르면, 신뢰 실행 환경 시스템은 서로 독립적으로 운영되는 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경(Trusted Execution Environment) 시스템에 있어서, 상기 제 1 실행 영역에 설치되어 사전에 정해진 기능을 실행하면서 상기 제 1 실행 영역을 감시하고, 상기 제 1 실행 영역에서 감지된 비정상적인 행위에 관한 정보를 상기 제 2 실행 영역으로 송신하는 제 1 애플리케이션부; 및 상기 제 2 실행 영역에 설치되어 상기 제 1 애플리케이션부로부터 상기 비정상적인 행위에 관한 정보를 수신하고, 상기 수신된 정보를 기반으로 상기 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지 실행 여부를 결정하는 제 2 애플리케이션부를 포함할 수 있다.
또한, 제 1 실행 영역은 비보안영역이고, 제 2 실행 영역은 보안영역일 수 있다.
또한, 상기 제 1 애플리케이션부는, 상기 제 1 실행 영역에서 상기 사전에 정해진 기능을 실행하여 애플리케이션 데이터를 생성하는 수행 모듈; 및 상기 제 1 실행 영역에서 동작하는 애플리케이션의 비정상적인 행위를 감지하는 감지 모듈을 포함할 수 있다.
또한, 상기 제 1 애플리케이션부는, 상기 감지 모듈에서 감지된 비정상적인 행위에 관한 정보를 기반으로 상기 수행 모듈에서 생성된 애플리케이션 데이터 중 적어도 일부를 상기 제 2 애플리케이션부로 송신할 수 있다.
또한, 상기 제 1 애플리케이션부는, 상기 감지 모듈에서 감지된 비정상적인 행위에 관한 정보에 따라 상기 수행 모듈에서 생성된 애플리케이션 데이터 중 타겟 애플리케이션 데이터를 선별하고, 상기 선별된 타겟 애플리케이션 데이터를 상기 제 2 애플리케이션부로 송신할 수 있다.
또한, 상기 제 2 애플리케이션부는, 상기 제 1 애플리케이션부로부터 수신된 상기 타겟 애플리케이션 데이터의 크기를 기 설정된 임계값과 비교하고, 비교 결과에 따라 감시 정보 비트를 생성할 수 있다.
또한, 상기 제 2 애플리케이션부는, 상기 제 1 애플리케이션부로부터 수신된 애플리케이션 데이터의 크기가 상기 임계값보다 크거나 같은 경우, '1'에 해당하는 상기 감시 정보 비트를 생성하고, 상기 제 1 애플리케이션부로부터 수신된 애플리케이션 데이터의 크기가 상기 임계값보다 작은 경우, '0'에 해당하는 상기 감시 정보 비트를 생성할 수 있다.
또한, 상기 제 2 애플리케이션부는, 상기 생성된 감시 정보 비트를 기반으로 상기 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지의 실행 여부를 결정할 수 있다.
본 발명의 일 실시 예에 의하면, 안전하고 효율적인 방식으로 시스템 내에서 발생하는 악성 행위를 탐지할 수 있도록 별도의 통신 채널을 구축할 수 있다.
또한, 본 발명의 일 실시 예에 의하면, 시스템이 공격자의 제어 아래에 놓이더라도 별도의 데이터 전송 규칙으로 구축된 통신 채널을 통해 시스템에 대한 다양한 검사와 시스템에서 발생하는 악성 행위를 탐지할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 개념도이다.
도 2는 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 일 실시 예이다.
도 4는 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 다른 실시 예이다.
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되는 실시 예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 가진다. 일반적인 사전들에 의해 정의된 용어들은 관련된 기술 그리고/혹은 본 출원의 본문에 의미하는 것과 동일한 의미를 갖는 것으로 해석될 수 있고, 그리고 여기서 명확하게 정의된 표현이 아니더라도 개념화되거나 혹은 과도하게 형식적으로 해석되지 않을 것이다.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다' 및/또는 이 동사의 다양한 활용형들 예를 들어, '포함', '포함하는', '포함하고', '포함하며' 등은 언급된 조성, 성분, 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 조성, 성분, 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다. 본 명세서에서 '및/또는' 이라는 용어는 나열된 구성들 각각 또는 이들의 다양한 조합을 가리킨다.
한편, 본 명세서 전체에서 사용되는 '~부', '~기', '~블록', '~모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부', '~기', '~블록', '~모듈' 등이 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부', '~기', '~블록', '~모듈'은 어드레싱 할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일 예로서 '~부', '~기', '~블록', '~모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부', '~기', '~블록', '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부', '~기', '~블록', '~모듈'들로 결합되거나 추가적인 구성요소들과 '~부', '~기', '~블록', '~모듈'들로 더 분리될 수 있다.
이하, 본 발명은 ARM 주식회사의 ARM TrustZone 기술을 기초로 설명하며, 본 명세서에 첨부된 도면을 참조하여 본 발명의 실시 예를 상세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 개념도이다.
도 1을 참조하면, 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경 환경을 이해할 수 있다. 신뢰 실행 환경은 하나의 물리 프로세서 코어가 보안영역(Secure world)과 비보안영역(Normal world)로 나누어져 있다. 각각의 영역은 CPU의 레지스터가 분리되어 있고, 보안영역에서만 접근이 가능한 디바이스나 메모리 영역을 지정할 수 있다. 비보안영역에서 보안영역에서만 접근이 가능한 메모리 영역을 접근하게 되면 신뢰 실행 환경 페이지폴트가 일어난다.
또한, 인터럽트를 보안영역과 비보안영역으로 나눌 수 있다. 이는 현재 인터럽트가 보안영역일 때는 비보안영역에서 인터럽트는 발생하지 않고, 비보안영역일 때는 비보안영역 및 보안영역에서 인터럽트가 발생할 수 있다. 이와 같이 신뢰 실행 환경 기반의 제 1 실행 영역과 제 2 실행 영역을 포함하는 시스템은 CPU, 주소 공간, 메모리, 디바이스를 각 영역마다 고립시킬 수 있다.
또한, 신뢰 실행 환경은 별도의 CPU모드에 기존의 FIQ, IRQ, Abort, Undefined, Kernel, User에 모니터(Monitor) 모드를 추가 할 수 있다. 모니터 모드는 보안영역에만 존재한다. 여기서, 모니터 모드에 진입한다는 것은 보안영영역에 접근한다는 말이다.
도 1을 다시 참조하면, 모니터 모드로의 접근은 SMC(Secure Monitor Call)명령이 실행된 경우이거나 IRQ 및 FIQ 발생 시 성립된다. 또한, SMC 명령은 커널모드에서만 실행이 가능하므로 애플리케이션 레벨에서 영역 간의 전환은 할 수 없습니다.
정리하면, 하나의 영역은 다른 영역에 영향을 끼칠 수 없으며, 비보안영역은 보안영역의 실행을 인터럽트나 장치를 사용하더라도 방해할 수 없다. 그렇기 때문에 일반적으로 루트킷으로부터 안전하게 보호기가 위한 높은 신뢰성이 요구되는 프로그램은 보안영역에서 실행하고, 그 외의 프로그램은 비보안영역에서 실행한다.
도 2는 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 블록도이다.
도 2를 참조하면, 신뢰 실행 환경 시스템(10)은 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경 환경 시스템에 있어서, 제 1 애플리케이션부(100) 및 제 2 애플리케이션부(200)를 포함한다. 여기서, 제 1 애플리케이션부(100)는 제 1 실행 영역에 포함되고, 제 2 애플리케이션부(200)는 제 2 실행 영역에 포함된다.
본 발명에서 제 1 애플리케이션부(100)와 제 2 애플리케이션부(200)는 별도의 데이터 전송 규칙으로 구축된 통신 채널을 통하여 데이터를 송수신한다. 이와 같은 별도의 데이터 전송 규칙으로 구축된 통신 채널을 통하여 제 1 애플리케이션부(100)와 제 2 애플리케이션부(200)가 통신하게 되면 제 1 실행 영역의 시스템이 공격자 제어 아래에 놓이더라도, 제 2 실행 영역이 안전하게 제 1 실행 영역에 대한 다양한 검사와 제 1 실행 영역에서 발생하는 악성 행위 탐지가 가능하다.
상기 제 1 애플리케이션부(100)는 제 1 실행 영역에 설치되어 사전에 정해진 기능을 실행하면서 제 1 실행 영역을 감시하고, 제 1 실행 영역에서 감지된 비정상적인 행위에 관한 정보를 제 2 실행 영역으로 송신한다. 또한, 제 1 애플리케이션부(100)는 수행 모듈(110) 및 감지 모듈(120)을 포함한다.
상기 수행 모듈(110)은 제 1 실행 영역에서 사전에 정해진 기능을 실행하여 애플리케이션 데이터를 생성한다. 예를 들면 센서 데이터(위치, 시간, 잡음) 처리, 은행, 게임 기능 등을 수행하면서 애플리케이션 데이터를 생성한다.
상기 감지 모듈(120)은 제 1 실행 영역에서 동작하는 애플리케이션의 비정상적인 행위를 감지한다. 구체적으로 제 1 실행 영역에서 동작하는 시스템 또는 동작 중인 다른 애플리케이션의 비정상적이거나 악의적인 행위를 감지한다. 예를 들면, 감지 모듈(120)에 대한 난독화(obfuscation), 패킹(packing), 다형성(polymorphism)등을 통해서 공격자에 의한 정적 분석을 회피할 수 있다.
상기 제 2 애플리케이션부(200)는 제 2 실행 영역에 설치되어 제 1 애플리케이션부로부터 비정상적인 행위에 관한 정보를 수신하고, 수신된 정보를 기반으로 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지 실행 여부를 결정한다.
도 3은 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 일 실시 예이다.
도 3을 참조하면, 제 1 애플리케이션부(100)는 감지 모듈(120)에서 감지된 비정상적인 행위에 관한 정보를 기반으로 수행 모듈(110)에서 생성된 애플리케이션 데이터 중 적어도 일부를 제 2 애플리케이션부(200)로 송신한다. 이후에, 제 1 애플리케이션부(100)는 감지 모듈(120)에서 감지된 비정상적인 행위에 관한 정보에 따라 수행 모듈(110)에서 생성된 애플리케이션 데이터 중 타겟 애플리케이션 데이터를 선별하고, 선별된 타겟 애플리케이션 데이터를 제 2 애플리케이션부(200)로 송신한다.
제 2 애플리케이션부(200)는 제 1 애플리케이션부(100)로부터 수신된 타겟 애플리케이션 데이터의 크기를 기 설정된 임계값과 비교하고, 비교 결과에 따라 감시 정보 비트를 생성한다. 여기서, 제 1 애플리케이션부(100)와 제 2 애플리케이션부(200)는 기 설정된 임계값을 공유한다. 공유된 기 설정된 임계값을 통해 제 2 애플리케이션부(200)는 제 1 애플리케이션부(100)로부터 수신된 타겟 애플리케이션 데이터의 크기를 공유된 기 설정된 임계값과 비교하고, 비교 결과에 따라 감시 정보 비트를 생성한다.
제 2 애플리케이션부(200)는 제 1 애플리케이션부(100)로부터 수신된 애플리케이션 데이터의 크기가 기 설정된 임계값보다 크거나 같은 경우 '1'에 해당하는 감시 정보 비트를 생성하고, 제 1 애플리케이션부(100)로부터 수신된 애플리케이션 데이터의 크기가 기 설정된 임계값보다 작은 경우 '0'에 해당하는 감시 정보 비트를 생성한다. 본 발명은 생성된 애플리케이션의 데이터 크기에 따라서 제 1 애플리케이션부(100)가 제 2 애플리케이션부(200)로 보내는 감시 정보 비트를 생성할 수 있다.
이후에, 제 2 애플리케이션부(200)는 생성된 감시 정보 비트를 기반으로 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지의 실행 여부를 결정한다.
예를 들면, 기 설정된 임계값이 100이고, 제 1 애플리케이션부(100)가 1, 1, 0, 0, 1, 0의 감시 정보 비트들을 제 2 애플리케이션부(200)에 송신하고자 한다면, 제 1 애플리케이션부(100)는 제 2 애플리케이션부(200)로 200, 500, 60, 30, 120, 20의 타겟 애플리케이션 데이터를 송신한다. 제 2 애플리케이션부(200)는 각각의 수신 받은 타겟 애플리케이션 데이터와 기 설정된 임계값을 비교함으로써 1, 1, 0, 0, 1, 0으로 감시 정보 비트들을 생성한다. 이후에, 감시 정보 비트들을 분석하여 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지가 필요한지를 결정한다.
도 4는 본 발명의 일 실시 예에 따른 신뢰 실행 환경 시스템의 다른 실시 예이다.
도 4를 참조하여 설명하면, 제 1 애플리케이션부(100)가 제 2 애플리케이션부(200)에 송신하고자 하는 애플리케이션 데이터를 송신하고자 하는 감시 정보 비트들 값에 맞추어서 조절할 수 있다. 예를 들면, 기 설정된 임계값이 100이고, 제 1 애플리케이션부(100)는 제 2 애플리케이션부(200)에게 1, 0, 1의 감시 정보 비트를 보내고자 한다. 이러한 경우 전송해야 할 타겟 애플리케이션 데이터가 200, 250, 70, 120일 때, 제 1 애플리케이션부(100)는 생성된 타겟 애플리케이션 데이터 중 일부인 200, 70, 120에 대응되는 애플리케이션 데이터를 전송함으로써 제 2 애플리케이션부(200)가 1, 0, 1의 감시 정보 비트들을 생성할 수 있게 할 수 있다.
다시 말하면, 제 1 애플리케이션부(100)는 Spy Application으로써 제 2 애플리케이션부(200)에게 필요한 감시 정보 비트를 별도의 데이터 전송 규칙으로 구축된 통신 채널을 통해서 전달하는 것이 목적이기 때문에, 필요한 감시 정보 비트에 대응하는 애플리케이션 데이터를 제 2 애플리케이션부(200)에 전송하고 대응하지 않는 애플리케이션 데이터는 전송하지 않아도 제 1 애플리케이션부(100)가 동작하는데 문제가 없다. 또한, 공격자 제어 아래에 있는 커널도 제 1 애플리케이션부(100)와 제 2 애플리케이션부(200)가 통신하는 별도의 데이터 전송 규칙으로 구축된 채널이 아닌 공개 채널을 통해 통신을 하기 때문에, 위와 같은 제 1 애플리케이션부(100)의 동작을 정상적으로 볼 것이다.
본 발명의 일 실시 예에 따르면, 제 2 애플리케이션부(200)는 생성된 감시 정보 비트를 기초로 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지가 필요한지를 결정한다. 제 1 애플리케이션부(100)가 제 2 애플리케이션부(200)로 보내고자하는 감시 정보 비트를 기초로 제 2 실행 영역에서 제 2 애플리케이션부(200)가 생성한 감시 정보 비트를 비교하여 제 1 실행 영역에 대한 검사 및 악성 행위 탐지가 필요한지를 판단한다.
이상의 상세한 설명은 본 발명을 예시하는 것이다. 또한 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내어 설명하는 것이며, 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있다. 즉 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당 업계의 기술 또는 지식의 범위 내에서 변경 또는 수정이 가능하다. 저술한 실시 예는 본 발명의 기술적 사상을 구현하기 위한 최선의 상태를 설명하는 것이며, 본 발명의 구체적인 적용 분야 및 용도에서 요구되는 다양한 변경도 가능하다. 따라서 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.
10 : 신뢰 실행 환경 시스템
100 : 제 1 애플리케이션부
110 : 수행 모듈
120 : 감지 모듈
200 : 제 2 애플리케이션부

Claims (8)

  1. 서로 독립적으로 운영되는 제 1 실행 영역과 제 2 실행 영역을 포함하는 신뢰 실행 환경(Trusted Execution Environment) 시스템에 있어서,
    상기 제 1 실행 영역에 설치되어 사전에 정해진 기능을 실행하면서 상기 제 1 실행 영역을 감시하고, 상기 제 1 실행 영역에서 감지된 비정상적인 행위에 관한 정보를 상기 제 2 실행 영역으로 송신하는 제 1 애플리케이션부; 및
    상기 제 2 실행 영역에 설치되어 상기 제 1 애플리케이션부로부터 상기 비정상적인 행위에 관한 정보를 수신하고, 상기 수신된 정보를 기반으로 상기 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지 실행 여부를 결정하는 제 2 애플리케이션부를 포함하는 신뢰 실행 환경 시스템.
  2. 제 1 항에 있어서,
    제 1 실행 영역은 비보안영역이고, 제 2 실행 영역은 보안영역인 신뢰 실행 환경 시스템.
  3. 제 1 항에 있어서,
    상기 제 1 애플리케이션부는,
    상기 제 1 실행 영역에서 상기 사전에 정해진 기능을 실행하여 애플리케이션 데이터를 생성하는 수행 모듈; 및
    상기 제 1 실행 영역에서 동작하는 애플리케이션의 비정상적인 행위를 감지하는 감지 모듈을 포함하는 신뢰 실행 환경 시스템.
  4. 제 3 항에 있어서,
    상기 제 1 애플리케이션부는,
    상기 감지 모듈에서 감지된 비정상적인 행위에 관한 정보를 기반으로 상기 수행 모듈에서 생성된 애플리케이션 데이터 중 적어도 일부를 상기 제 2 애플리케이션부로 송신하는 신뢰 실행 환경 시스템.
  5. 제 4 항에 있어서,
    상기 제 1 애플리케이션부는,
    상기 감지 모듈에서 감지된 비정상적인 행위에 관한 정보에 따라 상기 수행 모듈에서 생성된 애플리케이션 데이터 중 타겟 애플리케이션 데이터를 선별하고,
    상기 선별된 타겟 애플리케이션 데이터를 상기 제 2 애플리케이션부로 송신하는 신뢰 실행 환경 시스템.
  6. 제 5 항에 있어서,
    상기 제 2 애플리케이션부는,
    상기 제 1 애플리케이션부로부터 수신된 상기 타겟 애플리케이션 데이터의 크기를 기 설정된 임계값과 비교하고, 비교 결과에 따라 감시 정보 비트를 생성하는 신뢰 실행 환경 시스템.
  7. 제 6 항에 있어서,
    상기 제 2 애플리케이션부는,
    상기 제 1 애플리케이션부로부터 수신된 애플리케이션 데이터의 크기가 상기 임계값보다 크거나 같은 경우, '1'에 해당하는 상기 감시 정보 비트를 생성하고,
    상기 제 1 애플리케이션부로부터 수신된 애플리케이션 데이터의 크기가 상기 임계값보다 작은 경우, '0'에 해당하는 상기 감시 정보 비트를 생성하는 신뢰 실행 환경 시스템.
  8. 제 6 항에 있어서,
    상기 제 2 애플리케이션부는,
    상기 생성된 감시 정보 비트를 기반으로 상기 제 1 실행 영역에 대한 검사 또는 악성 행위 탐지의 실행 여부를 결정하는 신뢰 실행 환경 시스템.
KR1020180161529A 2018-12-14 2018-12-14 신뢰 실행 환경 시스템 KR102161777B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180161529A KR102161777B1 (ko) 2018-12-14 2018-12-14 신뢰 실행 환경 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180161529A KR102161777B1 (ko) 2018-12-14 2018-12-14 신뢰 실행 환경 시스템

Publications (2)

Publication Number Publication Date
KR20200073413A true KR20200073413A (ko) 2020-06-24
KR102161777B1 KR102161777B1 (ko) 2020-10-05

Family

ID=71408134

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180161529A KR102161777B1 (ko) 2018-12-14 2018-12-14 신뢰 실행 환경 시스템

Country Status (1)

Country Link
KR (1) KR102161777B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022139101A1 (ko) * 2020-12-22 2022-06-30 주식회사 유니온플레이스 사물 인터넷 장치, 사물 인터넷 장치 관리 시스템 및 사물 인터넷 장치를 관리하는 방법
CN115037482A (zh) * 2022-06-10 2022-09-09 维沃移动通信有限公司 欺诈行为检测方法、装置、电子设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140111943A (ko) * 2013-03-12 2014-09-22 삼성전자주식회사 보안 환경 장치 및 구현 방법
KR20160140159A (ko) * 2015-05-29 2016-12-07 삼성전자주식회사 전자 장치 및 커널 데이터 접근 방법
KR20170142672A (ko) * 2016-06-20 2017-12-28 주식회사 씨오티커넥티드 신뢰실행환경 기반의 컴퓨팅 장치
KR20180045397A (ko) * 2016-10-25 2018-05-04 주식회사 안랩 악성코드 진단장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140111943A (ko) * 2013-03-12 2014-09-22 삼성전자주식회사 보안 환경 장치 및 구현 방법
KR20160140159A (ko) * 2015-05-29 2016-12-07 삼성전자주식회사 전자 장치 및 커널 데이터 접근 방법
KR20170142672A (ko) * 2016-06-20 2017-12-28 주식회사 씨오티커넥티드 신뢰실행환경 기반의 컴퓨팅 장치
KR20180045397A (ko) * 2016-10-25 2018-05-04 주식회사 안랩 악성코드 진단장치 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
He Sun et al, "TrustDump: Reliable Memory Acquisition on Smartphones", 19th European Symposium on Research in Computer Security(2014.09.)* *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022139101A1 (ko) * 2020-12-22 2022-06-30 주식회사 유니온플레이스 사물 인터넷 장치, 사물 인터넷 장치 관리 시스템 및 사물 인터넷 장치를 관리하는 방법
US11880691B2 (en) 2020-12-22 2024-01-23 Unionplace Co., Ltd. Internet of things (IoT) device, IoT device management system, and method for managing IoT device
CN115037482A (zh) * 2022-06-10 2022-09-09 维沃移动通信有限公司 欺诈行为检测方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
KR102161777B1 (ko) 2020-10-05

Similar Documents

Publication Publication Date Title
US9158919B2 (en) Threat level assessment of applications
Murray et al. Improving Xen security through disaggregation
KR100949022B1 (ko) 신뢰 환경으로부터의 신뢰성의 비신뢰 환경으로의 투영
US8756696B1 (en) System and method for providing a virtualized secure data containment service with a networked environment
US7665138B2 (en) Detecting method and architecture thereof for malicious codes
US7845009B2 (en) Method and apparatus to detect kernel mode rootkit events through virtualization traps
US9262628B2 (en) Operating system sandbox
JP3657179B2 (ja) 実行可能モジュールおよび関連する保護サービス・プロバイダ・モジュールの完全性を監視するための方法およびシステム
US10754953B2 (en) TrustZone-based security isolation method for shared library and system thereof
IL256563A (en) Computer security systems and methods using asynchronous introspection exceptions
US8156346B2 (en) Keyboard-input information-security apparatus and method
US20180046798A1 (en) Mining Sandboxes
US11580230B2 (en) System and method for assessing software containers for vulnerabilities
CN113569246B (zh) 漏洞检测方法、装置、计算机设备和存储介质
CN110058921B (zh) 客户虚拟机内存动态隔离和监控方法及系统
KR20170043438A (ko) 컨테이너 기반의 가상화 시스템용 조작 포획 방법 및 장치
US11120124B2 (en) Method for detecting a deviation of a security state of a computing device from a desired security state
Yalew et al. T2Droid: A TrustZone-based dynamic analyser for Android applications
KR102161777B1 (ko) 신뢰 실행 환경 시스템
US7975298B1 (en) System, method and computer program product for remote rootkit detection
US11106602B2 (en) Memory blockade for verifying system security with respect to speculative execution
US8499351B1 (en) Isolated security monitoring system
US20240193278A1 (en) Vulnerability analysis of a computer driver
Abbasi Ghost in the PLC: stealth on-the-fly manipulation of programmable logic controllers’ I/O
Bousquet et al. Mandatory access control for the android dalvik virtual machine

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant