KR-20260061942-A - PC security check service including time-driven evasive malware detection
Abstract
본 발명의 일 실시예에 따르면, 시간 기반 회피 멀웨어(time-driven evasive malware) 탐지 기능을 포함한 PC보안점검 서비스에 있어서, 결정 트리를 CART(Classification And Regression Tree) 알고리즘을 기반으로 트레이닝하여 시간 기반 회피 멀웨어 탐지 모델을 구축하는 단계; 탐지 대상 어플리케이션에 m개의 입력 값들을 입력하여, 상기 탐지 대상 어플리케이션이 반응하는 비율인 q 값을 획득하는 단계; 상기 q 값을 상기 시간 기반 회피 멀웨어 탐지 모델에 입력하는 단계; 및 상기 시간 기반 회피 멀웨어 탐지 모델의 출력을 기반으로, 상기 탐지 대상 어플리케이션이 시간 기반 회피 멀웨어인지 판단하는 단계; 를 포함할 수 있다.
Inventors
- 소준영
Assignees
- 주식회사 아이티스테이션
Dates
- Publication Date
- 20260506
- Application Date
- 20241028
Claims (3)
- 시간 기반 회피 멀웨어(time-driven evasive malware) 탐지 기능을 포함한 PC보안점검 서비스에 있어서, 결정 트리를 CART(Classification And Regression Tree) 알고리즘을 기반으로 트레이닝하여 시간 기반 회피 멀웨어 탐지 모델을 구축하는 단계; 탐지 대상 어플리케이션에 m개의 입력 값들을 입력하여, 상기 탐지 대상 어플리케이션이 반응하는 비율인 q 값을 획득하는 단계; 상기 q 값을 상기 시간 기반 회피 멀웨어 탐지 모델에 입력하는 단계; 및 상기 시간 기반 회피 멀웨어 탐지 모델의 출력을 기반으로, 상기 탐지 대상 어플리케이션이 시간 기반 회피 멀웨어인지 판단하는 단계; 를 포함하는, 시간 기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스.
- 제1 항에 있어서, 상기 결정 트리는, 루트(root) 노드 및 상기 루트 노드로부터 분기되는 좌자손(left child) 노드와 우자손(right child) 노드로만 구성되며, 상기 좌자손 노드는 제1 클래스, 상기 우좌손 노드는 제2 클래스를 가지며, 상기 제1 클래스는 시간 기반 회피 멀웨어, 상기 제2 클래스는 비-시간 기반 회피 멀웨어에 해당하는, 시간 기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스.
- 제2 항에 있어서, 상기 결정 트리는, 상기 q 값이 기설정되어 있는 스레시홀드 값인 D_q 값 미만인 경우, 대상 어플리케이션을 상기 제1 클래스로 구분하며, 상기 q 값이 상기 D_q 값 이상인 경우, 상기 대상 어플리케이션을 상기 제2 클래스로 구분하는 결정 트리인, 시간 기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스.
Description
시간 기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스{PC security check service including time-driven evasive malware detection} 본 발명은 시간 기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스에 관한 것이다. 대부분의 기존 멀웨어는 스마트 폰, PC 등에 설치되면 바로 악성 행위를 수행한다. 이러한 멀웨어의 악성 행위를 탐지하기 위해서 동적 분석 시스템이 사용되어 왔다. 동적 분석 시스템은 멀웨어가 일정 시간동안 악성 행위를 하도록 유도한 후, 이를 기록 및 분석하여 멀웨어를 탐지하는 시스템이다. 그러나, 최근에는 이러한 동적 분석 시스템에 의한 탐지를 회피하는 회피 멀웨어(Evasive malware)가 출현하고 있다. 회피 멀웨어는 기본적으로 동작 환경을 분석하여 일반 사용자가 사용하는 환경인 것으로 판단되는 경우에만 악성 행위를 수행하고, 일반 사용자가 사용하는 환경이 아닌 것으로 판단된 경우에는 악성 행위를 수행하지 않는다. 따라서 연구자들은 동적 분석 시스템에서 회피 멀웨어가 멀웨어 탐지 중에도 악성 행위를 발현할 수 있도록 유도하기 위한 다양한 기법을 제안하고 있다. 도 1은 본 발명의 일 실시예에 따른 시간-기반 회피 멀웨어 탐지 시간 기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스를 예시한 순서도이다. 도 2는 본 발명의 일 실시예에 따른 결정 트리 개념도이다. 도 3은 본 발명의 일 실시예에 따른 동적 분석 시스템의 블록도이다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되는 실시 예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이다. 이하, 첨부된 도면들을 참조하여 본 발명의 기술적 특징을 구체적으로 설명한다. 본 발명은 동적 분석 시스템에서 시간-기반 회피 멀웨어를 탐지하는 기법에 관한 것이다. 특히, 본 발명은 결정 트리를 활용하여 시간-기반 회피 멀웨어를 탐지하는 기법에 관한 것이다. 우선, 시간-기반 회피 멀웨어에 대해 설명하면, 설치된 후 바로 악성 행위를 수행하는 것이 아니라, 설치 후 일정 시간이 지난 후에 악성 행위를 수행하는 멀웨어를 시간-기반 회피 멀웨어라 한다. 예를 들어, 동적 분석 시스템에 시간-기반 회피 멀웨어가 설치되었으며, 해당 시간-기반 회피 멀웨어의 구동 시점은 '1일'이라고 가정하자. 이 경우, 동적 분석 시스템이 시간-기반 회피 멀웨어 설치 후 1일이 되기 전에 입력 값을 제공한다 하더라도, 시간-기반 회피 멀웨어는 악성 행위를 발현하지 않는다. 대부분의 동적 분석 시스템은, 짧은 시간 안에 많은 수의 어플리케이션/소프트웨어/프로그램을 분석하고자 하므로, 일정 시간 후에 악성 행위를 발현하는 시간-기반 회피 멀웨어를 탐지하는 데 한계가 있을 수밖에 없다. 따라서, 본 명세서에서는 시간-기반 회피 멀웨어를 탐지하기 위한 시간-기반 회피 멀웨어 탐지 모델을 결정 트리를 기반으로 구축하고, 이를 이용하여 시간-기반 회피 멀웨어를 효과적으로 탐지하는 동적 분석 시스템에 대해 제안하고자 한다. 도 1은 본 발명의 일 실시예에 따른 시간-기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스를 예시한 순서도이며, 도 2는 본 발명의 일 실시예에 따른 결정 트리 개념도이다. 본 순서도에서 적어도 하나의 단계는 제외되거나, 새로운 단계가 부가될 수 있다. 또한, 이하에서 제안되는 시간-기반 회피 멀웨어 탐지 기능을 포함한 PC보안점검 서비스는, 입력 값을 받아서 동작하는 어플리케이션을 탐지 대상으로 함을 전제로 한다. 도 1 및 도 2를 참조하면, 우선 동적 분석 시스템은 결정 트리를 CART 알고리즘을 기반으로 트레이닝하여 시간-기반 회피 멀웨어 탐지 모델을 구축할 수 있다(S101). 이때 사용되는 결정 트리로는, 도 2에 예시한 바와 같이, 루트(root) 노드(210)와, 루트 노드(210)로부터 분기되는 좌자손(left child) 노드(220) 및 우좌손(right child) 노드(230)로 구성된 이진 트리가 사용될 수 있다. 좌자손 노드(220)는 제1 클래스, 우좌손 노드(230)는 제2 클래스를 가지며, 제1 클래스는 시간-기반 회피 멀웨어(time-driven evasive-malware), 제2 클래스는 비-시간-기반 회피 멀웨어(non-time-driven evasive-malware)에 각각 해당할 수 있다. 결정 트리에서 단일 인자 q 값과 결정 기준인 스레시홀드 값 D_q는 다음과 같이 정의될 수 있다. - q: 동적 분석 시스템에서 하나의 어플리케이션에 제공되는 m개의 입력 값들에 대해서 해당 어플리케이션이 반응하는 비율(한 개의 입력 집합은 m개의 입력 값들로 구성됨) - D_q: 결정 트리의 스레시홀드 결정 트리는, q 값이 D_q 값 미만인 경우, (학습) 대상 어플리케이션(혹은 샘플 어플리케이션)을 제1 클래스로 구분하며, q 값이 D_q 값 이상인 경우, (학습) 대상 어플리케이션(혹은 샘플 어플리케이션)을 제1 클래스로 구분할 수 있다. 동적 분석 시스템은 q 값을 CART 알고리즘에 적용하여 결정 트리에 대한 D_q 값을 설정함으로써 시간-기반 회피 멀웨어 탐지 모델을 구축할 수 있다. D_q 값은 CART 알고리즘에서 정의된 cost 함수 값을 최소화하는 값으로 선택됨으로써 설정될 수 있다. CART 알고리즘의 cost 함수는 수학식 1과 같이 정의될 수 있다. [수학식 1] 여기에서, k는 전체 입력 집합의 개수, k_l은 전체 입력 집합 중에서 q < D_q 조건을 만족하는 입력 집합의 개수(즉, 좌자손 노드(220)에 속하는 샘플의 개수), k_r은 전체 입력 집합 중에서 q >=D_q 조건을 만족하는 입력 집합의 개수(즉, 우자손 노드(230)에 속하는 샘플의 개수), GI_l은 좌자손 노드(220)의 Gini 불순도(impurity), GI_r은 우좌손 노드(230)의 Gini 불순도(impurity)를 각각 의미할 수 있다. 또한, GI_l 및 GI_r은 수학식 2로 정의될 수 있다. [수학식 2] 여기서, T_(l,j)는 제j 클래스에 해당하는 샘플의 개수를 좌자손 노드(220)에 속하는 샘플의 개수로 나눗셈 연산한 값, T_(r,j)는 제j 클래스에 해당하는 샘플의 개수를 우자손 노드(230)에 속하는 샘플의 개수로 나눗셈 연산한 값을 각각 의미할 수 있다. 동적 분석 시스템은 Cost 함수 y(q, D_q)를 최소화하는 (q, D_q) 값으로 결정 트리를 트레이닝할 수 있으며, 결정 트리의 총 샘플 개수가 N개가 되면 트레이닝 과정을 종료하고, 종료 시점에 트레이닝된 결정 트리로 시간-기반 회피 멀웨어 탐지 모델을 구축할 수 있다. 다음으로, 동적 분석 시스템은 탐지 대상 어플리케이션에 다양한 입력 값들을 제공하여, 탐지 대상 어플리케이션이 반응하는 비율인 q 값을 획득할 수 있다(S102). 이때 제공되는 입력 값들은 모두 어플리케이션의 반응이 예정된 입력 값들로 해당할 수 있다. 다음으로, 동적 분석 시스템은 획득한 q 값을 구축한 시간-기반 회피 멀웨어 탐지 모델에 입력할 수 있다(S103). 시간-기반 회피 멀웨어 탐지 모델은 입력된 q 값을 D_q 값과 비교할 수 있으며, 입력된 q 값이 D_q 값 미만인 경우 탐지 대상 어플리케이션을 결정 트리의 좌자손 노드(220)(즉, 제1 클래스)로 분류할 수 있으며, 그 결과 탐지 대상 어플리케이션을 시간-기반 회피 멀웨어로 간주할 수 있다. 반대로, 입력된 q 값이 D_q 값 이상인 경우, 시간-기반 회피 멀웨어 탐지 모델은 탐지 대상 어플리케이션을 결정 트리의 우좌손 노드(230)(즉, 제2 클래스)로 분류할 수 있으며, 그 결과 탐지 대상 어플리케이션을 비-시간-기반 회피 멀웨어로 간주할 수 있다. 시간-기반 회피 멀웨어 탐지 모델은 탐지 결과(즉, 간주 결과)를 출력할 수 있다. 마지막으로, 동적 분석 시스템은 시간-기반 회피 멀웨어 탐지 모델의 출력을 기반으로, 탐지 대상 어플리케이션이 시간-기반 회피 멀웨어인지, 비- 시간-기반 회피 멀웨어인지를 최종 판단할 수 있다(S104). 도 3은 본 발명의 일 실시예에 따른 동적 분석 시스템의 블록도이다. 동적 분석 시스템(300)은 프로세서(310), 메모리부(320) 및 통신부(330)를 포함할 수 있다. 프로세서(310)는, 본 명세서에서 제안되는 적어도 하나의 실시예를 수행하기 위한 데이터 처리/프로세싱 동작을 수행할 수 있다. 따라서, 상술한 실시예들에서 동적 분석 시스템은 프로세서(310)로 대체되어 설명될 수 있다. 프로세서(310)는 메모리부(320)에 저장된 다양한 메커니즘/알고리즘/프로그램 등을 실행하고, 내부의 데이터를 프로세싱할 수 있다. 또한, 본 명세서에서 제안된 적어도 하나의 실시예를 수행하기 위해 메모리부(320) 및 통신부(330)를 제어하며, 구성들간의 데이터 송수신을 매니지할 수도 있다. 프로세서(310)는, CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), AP(Application Processor), AP(Application Processor) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 적어도 하나 포함하여 구성될 수 있다. 특히, 본 명세서의 프로세서(310)는 앞서 상술한 시간-기반 회피 멀웨어 탐지 모델을 구축하여 시간-기반 회피 멀웨어 탐지 동작을 수행할 수 있다. 메모리부(320)는 다양한 디지털 데이터를 저장할 수 있다. 메모리부(320)는 플래시 메모리, HDD(Hard Disk Drive), SSD(Solid State Drive) 등의 다양한 디지털 데이터 저장 공간을 나타낸다. 통신부(330)는 적어도 하나의 유/무선 통신 프로토콜을 사용하여 통신을 수행, 데이터를 송신/수신할 수 있다. 본 발명에 따른 실시예는 다양한 수단, 예를 들어, 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 본 발명의