KR20190048004A - 기계 학습 기반의 이상 행위 탐지 방법 및 그 장치 - Google Patents

기계 학습 기반의 이상 행위 탐지 방법 및 그 장치 Download PDF

Info

Publication number
KR20190048004A
KR20190048004A KR1020170142455A KR20170142455A KR20190048004A KR 20190048004 A KR20190048004 A KR 20190048004A KR 1020170142455 A KR1020170142455 A KR 1020170142455A KR 20170142455 A KR20170142455 A KR 20170142455A KR 20190048004 A KR20190048004 A KR 20190048004A
Authority
KR
South Korea
Prior art keywords
learning
target
data
learning data
abnormal behavior
Prior art date
Application number
KR1020170142455A
Other languages
English (en)
Other versions
KR102348536B1 (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 KR1020170142455A priority Critical patent/KR102348536B1/ko
Publication of KR20190048004A publication Critical patent/KR20190048004A/ko
Application granted granted Critical
Publication of KR102348536B1 publication Critical patent/KR102348536B1/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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Virology (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

기계 학습 기반의 이상 행위 탐지 방법이 제공된다. 이상 행위 탐지 장치에 의해 수행되는 본 발명의 일 실시예에 따른 이상 행위 탐지 방법은, 타깃 객체의 행위에 대한 학습 데이터를 획득하되, 상기 학습 데이터는 정상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제1 학습 데이터 및 이상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제2 학습 데이터를 포함하고, 상기 제2 학습 데이터에 상기 제1 학습 데이터보다 더 낮은 학습 값(value)이 부여된 것인, 단계, 상기 학습 데이터를 기초로 기계 학습(machine learning)을 수행하여 상기 타깃 객체에 대한 이상 행위 탐지 모델을 구축하는 단계, 상기 타깃 객체의 탐지 대상 행위를 가리키는 탐지 대상 데이터를 획득하는 단계, 상기 이상 행위 탐지 모델을 이용하여, 상기 탐지 대상 데이터에 대한 예측 값을 산출하는 단계 및 상기 예측 값의 LCB(lower confidence bound)를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계를 포함할 수 있다.

Description

기계 학습 기반의 이상 행위 탐지 방법 및 그 장치{Method for detecting an anomalous behavior based on machine-learning and Apparatus thereof}
본 발명은 기계 학습 기반의 이상 행위 탐지 방법 및 장치에 관한 것이다. 보다 자세하게는, 사용자, 특정 단말 등 타깃 객체의 이상 행위를 탐지하는 기계 학습 모델을 구축하는 방법, 상기 구축된 기계 학습 모델을 이용하여 상기 타깃 객체의 이상 행위를 탐지하는 방법 및 상기 방법들을 수행하는 장치에 관한 것이다.
대다수의 기업은 관련 업무 종사자들의 원활한 업무 진행을 위해 정보 공유 시스템을 구축하여 이용하고 있다. 또한, 정보 보안을 목적으로, 각종 행위 모니터링 시스템, 행위 탐지 시스템을 함께 구축하여, 정보 공유 시스템을 이용하는 업무 종사자들의 다양한 행위를 모니터링하며, 기밀 유출과 같은 사용자의 이상 행위를 탐지한다.
종래 제안된 이상 행위 탐지 시스템은 상기와 같은 이상 행위를 탐지하기 위해 룰 엔진(rule engine)을 이용한다. 룰 엔진에 포함되는 탐지 룰에는 일반적으로 이상 행위 탐지 시스템의 관리자 또는 보안 담당자 등이 작성한 룰이 입력된다. 즉, 시스템 관리자는 사전에 타깃 환경에서 발생 가능한 이상 상황을 가정하고, 각 이상 상황에 대응되는 룰을 작성하여 룰 엔진에 입력한다.
예를 들어, 파일 공유 시스템의 관리자는 회사 내부 직원의 기밀 유출 행위를 탐지하기 위해 "① 회사 직원 사용자 A가 파트너 기업 사용자 B에게 파일 X를 공유하는 이벤트, ② 이벤트(①) 발생 후 일정 시간 내 사용자 B가 파일 X를 다운로드하는 이벤트, ③ 회사 직원 A가 파일 X의 공유를 해제하는 이벤트"를 탐지 룰로 작성하여 룰 엔진에 입력할 수 있다.
다른 예를 들어, 파일 공유 시스템의 관리자는 "사용자의 최근 하루 파일 다운로드 용량이 최근 한달 평균 대비 2배가 넘는 경우"와 같이 소정의 통계 정보를 이용하여 이상 행위를 탐지하는 탐지 룰을 룰 엔진에 입력할 수 있다.
그러나, 관리자가 모든 이상 상황을 고려하여 탐지 룰을 작성할 수 없기 때문에, 예시된 바와 같이 관리자에 의해 작성된 탐지 룰에 의존하는 이상 행위 탐지 시스템은 일정한 한계를 가질 수 밖에 없다. 예를 들어, 유사한 보안 사고가 발생한 후에 사후 조치로 탐지 룰이 만들어지거나, 탐지 룰을 알고 있는 악의적 사용자에 의해 정교하게 제작된 룰셋이 무력화되는 경우가 빈번하게 발생될 수 있다. 이외에도, 종래의 이상 행위 탐지 시스템은 전형적인 이상 행위 패턴에 속하지 않는 변칙 행위를 탐지하는 데에도 취약하다. 따라서, 종래의 이상 행위 시스템을 통해 기업 환경에서 기밀 유출 행위와 같은 이상 행위를 미연에 탐지하고 예방하기는 어려운 실정이다.
이에 따라, 관리자의 명시적인 룰에 의존하지 않고, 사용자의 이상 행위를 보다 정확하게 탐지할 수 있는 새로운 이상 행위 탐지 방법이 요구된다.
한국공개특허 제10-2004-0008375호 (2004.01.31 공개)
본 발명이 해결하고자 하는 기술적 과제는, 기계 학습 기반 이상 행위 탐지 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는, 기계 학습을 통해 이상 행위를 탐지하는 이상 행위 탐지 모델을 구축하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 또 다른 기술적 과제는, 상기 구축된 이상 행위 탐지 모델을 이용하여, 사용자의 이상 행위를 탐지하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 기계 학습 기반의 이상 행위 탐지 방법은, 이상 행위 탐지 장치에서 기계 학습 기반으로 타깃 객체(target object)의 이상 행위를 탐지하는 방법에 있어서, 상기 타깃 객체의 행위에 대한 학습 데이터를 획득하되, 상기 학습 데이터는 정상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제1 학습 데이터 및 이상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제2 학습 데이터를 포함하고, 상기 제2 학습 데이터에 상기 제1 학습 데이터보다 더 낮은 학습 값(value)이 부여된 것인, 단계, 상기 학습 데이터를 기초로 기계 학습(machine learning)을 수행하여 상기 타깃 객체에 대한 이상 행위 탐지 모델을 구축하는 단계, 상기 타깃 객체의 탐지 대상 행위를 가리키는 탐지 대상 데이터를 획득하는 단계, 상기 이상 행위 탐지 모델을 이용하여, 상기 탐지 대상 데이터에 대한 예측 값을 산출하는 단계 및 상기 예측 값의 LCB(lower confidence bound)를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계를 포함할 수 있다.
일 실시예에서, 상기 학습 데이터는 적어도 하나의 데이터 요소로 구성되고, 상기 학습 데이터를 획득하는 단계는, 상기 타깃 객체의 행위의 실제 관측 데이터를 기초로 상기 제1 학습 데이터를 생성하는 단계 및 상기 제1 학습 데이터를 구성하는 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여 상기 제2 학습 데이터를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 이상 행위 탐지 모델을 구축하는 단계는, 상기 학습 값을 리워드(reward)로 하는 강화 학습(reinforcement learning)을 수행하여 상기 이상 행위 탐지 모델을 구축하는 단계를 포함할 수 있다.
일 실시예에서, 상기 타깃 객체의 행위는 타깃 파일을 대상으로 하는 사용자의 파일 사용 행위이고, 상기 제1 학습 데이터는 상기 파일 사용 행위에 대한 실제 관측 데이터를 기초로 생성된 컨텍스트 벡터(context vector)를 포함하되, 상기 실제 관측 데이터는 상기 파일의 속성 정보, 상기 사용자의 속성 정보, 상기 파일 사용 행위의 종류 및 상기 파일의 접근 경로 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 타깃 객체의 행위는 파일을 대상으로 하는 사용자의 파일 사용 행위이고, 상기 이상 행위 탐지 모델은 CMAB(contextual multi-armed bandit) 기반의 강화 학습을 통해 구축된 모델이며, 상기 학습 데이터를 획득하는 단계는, 상기 파일 사용 행위에 대한 실제 관측 데이터를 기초로 상기 제1 학습 데이터를 생성하는 단계 및 상기 제1 학습 데이터를 구성하는 적어도 하나의 데이터 요소의 값을 변경하여 상기 제2 학습 데이터를 생성하는 단계를 포함할 수 있다. 이때, 상기 제1 학습 데이터에 부여된 학습 값은 지정된 범위에서의 최대 값이고, 상기 제2 학습 데이터에 부여된 학습 값은 상기 지정된 범위에서의 최소 값일 수 있다.
일 실시예에서, 상기 타깃 객체의 행위는 파일을 대상으로 하는 사용자의 파일 사용 행위이고, 상기 이상 행위 탐지 모델은 CMAB(contextual multi-armed bandit) 기반의 강화 학습을 통해 구축된 모델이며, 상기 학습 데이터는 상기 파일 사용 행위를 포함하는 컨텍스트에 대응되는 컨텍스트 벡터(context vector) 및 상기 파일에 대응되는 암의 번호 정보를 포함하고, 상기 이상 행위 탐지 모델을 구축하는 단계는, 상기 학습 데이터 각각에 부여된 학습 값을 상기 컨텍스트에서 상기 암의 리워드로 하는 강화 학습을 수행하여 상기 이상 행위 탐지 모델을 구축하는 단계를 포함할 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 기계 학습 기반의 이상 행위 탐지 장치는, 프로세서, 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(Load)하는 메모리 및 상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 타깃 객체의 행위에 대한 학습 데이터를 획득하되, 상기 학습 데이터는 정상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제1 학습 데이터 및 이상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제2 학습 데이터를 포함하고, 상기 제2 학습 데이터에 상기 제1 학습 데이터보다 더 낮은 학습 값(value)이 부여된 것인, 오퍼레이션, 상기 학습 데이터를 기초로 기계 학습(machine learning)을 수행하여 상기 타깃 객체에 대한 이상 행위 탐지 모델을 구축하는 오퍼레이션, 상기 타깃 객체의 탐지 대상 행위를 가리키는 탐지 대상 데이터를 획득하는 오퍼레이션, 상기 이상 행위 탐지 모델을 이용하여, 상기 탐지 대상 데이터에 대한 예측 값을 산출하는 오퍼레이션 및 상기 예측 값의 LCB(lower confidence bound)를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 오퍼레이션을 포함할 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 타깃 객체의 행위에 대한 학습 데이터를 획득하되, 상기 학습 데이터는 정상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제1 학습 데이터 및 이상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제2 학습 데이터를 포함하고, 상기 제2 학습 데이터에 상기 제1 학습 데이터보다 더 낮은 학습 값(value)이 부여된 것인, 단계, 상기 학습 데이터를 기초로 기계 학습(machine learning)을 수행하여 상기 타깃 객체에 대한 이상 행위 탐지 모델을 구축하는 단계, 상기 타깃 객체의 탐지 대상 행위를 가리키는 탐지 대상 데이터를 획득하는 단계, 상기 이상 행위 탐지 모델을 이용하여, 상기 탐지 대상 데이터에 대한 예측 값을 산출하는 단계 및 상기 예측 값의 LCB(lower confidence bound)를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계를 실행시키기 위하여 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 기계 학습 방법은, 기계 학습 장치에 의해 수행되는 기계 학습 방법에 있어서, 타깃 환경(target environment)의 실제 관측 데이터를 기초로 제1 학습 데이터를 생성하되, 상기 제1 학습 데이터는 적어도 하나의 데이터 요소로 구성되는 것인, 단계, 상기 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여, 제2 학습 데이터를 생성하는 단계 및 상기 제1 학습 데이터 및 상기 제2 학습 데이터를 기초로 기계 학습을 수행하여, 타깃 모델(target model)을 구축하는 단계를 포함할 수 있다.
일 실시예에서, 상기 제1 학습 데이터를 생성하는 단계는, 상기 제1 학습 데이터에 제1 클래스 레이블(class label)을 부여하는 단계를 포함하고, 상기 제2 학습 데이터를 생성하는 단계는, 상기 제1 학습 데이터에 제2 클래스 레이블을 부여하는 단계를 포함하되, 상기 제2 클래스 레이블은 상기 제1 클래스 레이블과 다른 클래스를 가리키고, 상기 타깃 모델은 지도 학습(supervised learning) 기반의 기계 학습을 통해 구축된 모델일 수 있다.
일 실시예에서, 상기 제1 학습 데이터를 생성하는 단계는, 상기 제1 학습 데이터에 제1 리워드(reward)를 부여하는 단계를 포함하고, 상기 제2 학습 데이터를 생성하는 단계는, 상기 제1 학습 데이터에 제2 리워드를 부여하는 단계를 포함하되, 상기 제2 리워드는 상기 제1 리워드와 다른 값을 갖고, 상기 타깃 모델은 강화 학습(reinforcement learning) 기반의 기계 학습을 통해 구축된 모델일 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 기계 학습 장치는, 프로세서, 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(Load)하는 메모리 및 상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 타깃 환경(target environment)의 실제 관측 데이터를 기초로 제1 학습 데이터를 생성하되, 상기 제1 학습 데이터는 적어도 하나의 데이터 요소로 구성되는 것인, 오퍼레이션, 상기 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여, 제2 학습 데이터를 생성하는 오퍼레이션 및 상기 제1 학습 데이터 및 상기 제2 학습 데이터를 기초로 기계 학습을 수행하여, 타깃 모델(target model)을 구축하는 오퍼레이션을 포함할 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 타깃 환경(target environment)의 실제 관측 데이터를 기초로 제1 학습 데이터를 생성하되, 상기 제1 학습 데이터는 적어도 하나의 데이터 요소로 구성되는 것인, 단계, 상기 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여, 제2 학습 데이터를 생성하는 단계 및 상기 제1 학습 데이터 및 상기 제2 학습 데이터를 기초로 기계 학습을 수행하여, 타깃 모델(target model)을 구축하는 단계를 실행시키기 위하여 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다.
상술한 본 발명의 실시예에 따르면, 실제 관측 데이터를 토대로 실제 학습 데이터셋을 생성하고, 상기 실제 학습 데이터셋을 토대로 다수의 가상 학습 데이터셋이 확보될 수 있다. 이에 따라, 확보된 학습 데이터셋 기반으로 효과적인 기계 학습이 수행될 수 있다.
또한, 빈번하게 관측되는 사용자 행위는 정상 행위를 확률이 높다는 사전 지식(prior knowledge)을 활용하여, 실제 학습 데이터에 정상 행위를 가리키는 클래스 레이블 또는 높은 리워드가 부여된다. 반대로, 가상 학습 데이터에 이상 행위를 가리키는 클래스 레이블 또는 낮은 리워드가 부여된다. 즉, 해당 도메인에 주어지는 사전 지식을 활용하여, 신뢰도 높은 학습 데이터셋이 확보될 수 있다. 아울러, 신뢰도 높은 학습 데이터셋을 통해 이상 행위 탐지 모델의 정확도 또한 향상될 수 있다.
또한, 종래와는 다르게, 관리자의 명시적인 탐지 룰의 입력이 없이도, 자동으로 기계 학습을 통해 이상 행위 탐지 모델이 구축되고, 사용자의 이상 행위가 탐지될 수 있다. 이에 따라, 관리자의 편의성이 비약적으로 향상될 수 있고, 룰 작성에 소요되는 인적 비용 등이 크게 절감될 수 있다. 아울러, 관리자에 의해 명시적으로 작성된 룰을 이용하는 종래에 비하여, 이상 행위 탐지 정확도가 향상될 수 있다.
또한, 관리자의 명시적인 룰에 기초하여 이상 행위를 탐지하는 장치와 협업하여, 이상 행위의 탐지 정확도를 더욱 향상시키고, 타깃 환경의 정보 보안성을 향상시킬 수 있다.
또한, 이상 행위 탐지 모델의 예측 값(e.g. 컨피던스 스코어, 기대 리워드)에 기초하여, 이상 행위로 의심되는 사용자 행위가 관리자에게 제공될 수 있다. 제공 받은 사용자 행위 정보를 기초로, 관리자는 보다 편의적으로 신뢰도 높은 탐지 룰을 작성할 수 있다. 특히, 이상 행위에 대한 다양한 컨텍스트 정보가 제공됨에 따라, 관리자의 편의성이 더욱 향상될 수 있다.
또한, 강화 학습을 통해 지속적으로 이상 행위 탐지 모델이 갱신되기 때문에, 동적으로 변화하는 환경에도 스스로 적응할 수 있는 효과가 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 제1 실시예에 따른 이상 행위 탐지 시스템의 구성도이다.
도 2는 본 발명의 제2 실시예에 따른 이상 행위 탐지 시스템의 구성도이다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 이상 행위 탐지 장치를 나타내는 블록도이다.
도 5는 본 발명의 일 실시예에 따른 이상 행위 탐지 장치의 하드웨어 구성도이다.
도 6은 본 발명의 일 실시예에 따른 기계 학습 방법을 나타내는 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 지도 학습 기반의 기계 학습 방법을 나타내는 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 강화 학습 기반의 기계 학습 방법을 나타내는 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 CMAB(contextual multi-armed bandit) 기반의 이상 행위 탐지 모델 구축 방법을 나타내는 흐름도이다.
도 10은 본 발명의 몇몇 실시예에서 참조될 수 있는 컨텍스트의 예시도이다.
도 11a 내지 도 13은 본 발명의 일 실시예에 따른 학습 데이터 생성 방법을 설명하기 위한 도면이다.
도 14는 본 발명의 일 실시예에 따라 CMAB 기반의 강화 학습 수행 과정을 설명하기 위한 도면이다.
도 15 및 도 16은 본 발명의 일 실시예에 따라 암(arm)에 대응되는 파일 그룹을 형성하는 방법을 설명하기 위한 도면이다.
도 17은 본 발명의 일 실시예에 따른 기계 학습 기반의 이상 행위 탐지 방법을 나타내는 흐름도이다.
도 18 및 도 19는 도 17에 도시된 이상 행위 판정 단계(S570)를 설명하기 위한 도면이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.
본 명세서에서, 타깃 객체(target object)는 행위 또는 동작을 수행하는 주체를 의미한다. 상기 타깃 객체는 예를 들어 특정 행위를 수행하는 사용자가 될 수 있으나, 이에 국한되는 것은 아니며, 특정 동작을 수행하는 장치를 포함하는 개념이다.
본 명세서에서, 이상 행위(anomalous behavior)는 지정된 규칙에서 벗어난 행위 또는 동작을 모두 포괄하는 용어이다. 상기 이상 행위는 사용자의 기밀 유출 행위, 카드의 부정 사용 행위, 타깃 도어의 부정 출입 행위 등 본 발명이 적용되는 도메인(domain)에 따라 다양하게 정의될 수 있다.
이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.
도 1은 본 발명의 제1 실시예에 따른 이상 행위 탐지 시스템의 구성도이다. 특히, 도 1에는 기업의 인트라넷에 이상 행위 탐지 시스템이 구축된 것이 예로써 도시되었다.
도 1을 참조하면, 상기 제1 실시예에 따른 이상 행위 탐지 시스템은 행위 모니터링 장치(200) 및 이상 행위 탐지 장치(100)를 포함하도록 구성될 수 있다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 구성 요소가 추가되거나 삭제될 수 있음은 물론이다. 또한, 도 1에 도시된 이상 행위 탐지 시스템의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 적어도 하나의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다. 예를 들어, 행위 모니터링 장치(200) 및 이상 행위 탐지 장치(100)는 동일한 물리적 장치 내의 서로 다른 로직(logic)으로 구현될 수도 있다. 이하, 상기 제1 실시예에 따른 이상 행위 탐지 시스템의 각 구성 요소에 대하여 설명하도록 한다.
상기 제1 실시예에 따른 이상 행위 탐지 시스템에서, 행위 모니터링 장치(200)는 타깃 객체의 행위를 모니터링하는 컴퓨팅 장치이다. 여기서, 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 연산 수단 및 통신 수단이 구비된 모든 종류의 장치를 포함할 수 있다.
예를 들어, 행위 모니터링 장치(200)는 타깃 장치 또는 타깃 시스템에 설치된 모니터링 에이전트(monitoring agent)로부터 타깃 객체의 행위 정보를 수집하는 형태로 모니터링 기능을 수행할 수 있다. 이때, 상기 모니터링 에이전트는 예를 들어 API 후킹(hooking) 등을 이용하여 타깃 객체(e.g. 사용자)의 행위를 모니터링하는 소프트웨어 모듈일 수 있으나, 센서(sensor) 등을 이용하여 타깃 객체(e.g. 장치)의 동작을 모니터링하는 하드웨어 모듈일 수도 있다. 도 1은 타깃 객체가 사용자이고, 각 컴퓨터 상에서 수행되는 사용자의 행위를 모니터링 하는 것을 가정하여, 상기 모니터링 에이전트가 각 사용자의 컴퓨터에 설치된 것을 예로써 도시하고 있다. 다만, 모니터링 대상이 되는 타깃 행위가 사용자 단말이 아닌 장치/시스템(e.g. 파일 공유를 위한 클라우드 시스템) 상에서 수행되는 경우, 상기 모니터링 에이전트는 상기 장치/시스템에 탑재될 수 있다.
상기 제1 실시예에 따른 이상 행위 탐지 시스템에서, 이상 행위 탐지 장치(100)는 행위 모니터링 장치(200)에 의해 제공되는 모니터링 정보를 기초로 이상 행위 탐지 모델을 구축하고, 상기 이상 행위 탐지 모델을 이용하여 타깃 객체의 이상 행위를 탐지하는 컴퓨팅 장치이다. 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 연산 수단 및 통신 수단이 구비된 모든 종류의 장치를 포함할 수 있다. 다만, 원활한 기계 학습 수행을 위해, 이상 행위 탐지 장치(100)는 고성능의 서버 컴퓨팅 장치로 구현되는 것이 바람직할 수 있다.
상기 이상 행위 탐지 모델은 기계 학습(machine learning)을 통해 구축된 모델을 의미한다. 상기 이상 행위 탐지 모델은 기계 학습을 통해 자동으로 구축되는 것인 바, 본 실시예에서, 관리자의 명시적인 룰 입력이 요구되지 않는다. 게다가, 기계 학습을 통해 관리자가 예측하지 못하는 다양한 이상 행위가 자동으로 탐지될 수 있다. 따라서, 종래에 비해 관리의 편의성 및 이상 행위의 탐지 정확도가 향상될 수 있다.
아울러, 기계 학습은 데이터 드리븐 접근(data-driven approach) 기법이므로, 학습 데이터셋에 따라 탐지되는 이상 행위가 달라질 수 있다. 따라서, 타깃 환경에 적합한 학습 데이터셋만 제공된다면 이상 행위 탐지 장치(100)는 다양한 타깃 환경에서 범용적으로 활용될 수 있다.
도 1에 도시된 바와 같이, 기업의 인트라넷 환경에 구축된 경우, 이상 행위 탐지 장치(100)는 기업 내에서 사용자의 행위 모니터링 정보를 기초로 이상 행위 탐지 모델을 구축하고, 기밀 유출 행위 같은 사용자의 이상 행위를 자동으로 탐지할 수 있다. 이상 행위 탐지 장치(100)에 대한 보다 자세한 설명은 도 3 및 도 4를 참조하여 후술하도록 한다.
본 발명의 몇몇 실시예에 따른 이상 행위 탐지 시스템의 각 구성 요소는 네트워크를 통해 통신할 수 있다. 여기서, 상기 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.
지금까지 도 1을 참조하여 본 발명의 제1 실시예에 따른 행위 탐지 시스템에 대하여 설명하였다. 다음으로, 본 발명의 제2 실시예에 따른 이상 행위 탐지 시스템에 대하여 도 2를 참조하여 간략하게 설명하도록 한다.
도 2는 본 발명의 제2 실시예에 따른 이상 행위 탐지 시스템의 구성도이다.
도 2를 참조하면, 상기 제2 실시예에 따른 이상 행위 탐지 시스템은 행위 모니터링 장치(200), 기계 학습 기반으로 이상 행위를 탐지하는 제1 이상 행위 탐지 장치(100) 및 관리자에 의해 제공되는 룰셋 기반으로 이상 행위를 탐지하는 제2 이상 행위 탐지 장치(300)를 포함하도록 구성될 수 있다.
상기 제2 실시예에서, 제1 이상 행위 탐지 장치(100)와 제2 이상 행위 탐지 장치(300)는 상호 협력하여 사용자의 이상 행위를 탐지할 수 있다. 예를 들어, 시스템의 초기에는 학습 데이터셋이 충분하지 않아 기계 학습이 원활하게 수행될 수 없기 때문에, 제1 이상 행위 탐지 장치(100)의 탐지 정확도는 상대적으로 떨어질 수 있다. 이와 같은 경우, 제2 이상 행위 탐지 장치(300)가 관리자에 의해 제공된 룰셋을 이용하여 사용자의 이상 행위를 주도적으로 탐지할 수 있다. 또한, 학습 데이터셋이 충분하게 수집된 경우, 제1 이상 행위 탐지 장치(100)는 제2 이상 행위 탐지 장치(300)가 탐지하기 힘든 변칙 행위 등을 탐지하여 기업 환경의 정보 보안성을 더욱 향상시킬 수 있다.
실시예에 따라, 상기 제2 실시예에 따른 이상 행위 탐지 시스템은 제1 이상 행위 탐지 장치(100)가 기계 학습을 통해 자동적으로 생성된 룰을 제2 이상 행위 탐지 장치(300)로 제공함으로써, 자동적으로 제2 이상 행위 탐지 장치(300)의 탐지 룰이 갱신되도록 동작할 수도 있다.
실시예에 따라, 상기 제2 실시예에 따른 이상 행위 탐지 시스템은 제2 이상 행위 탐지 장치(300)를 통해 사용자의 이상 행위를 일차적으로 탐지하고, 이상으로 탐지되지 않은 사용자 행위에 대해서만 제1 이상 행위 탐지 장치(300)가 이상 행위 여부를 판정하도록 동작할 수도 있다. 일반적으로, 룰셋 기반의 제2 이상 행위 탐지 장치(300)가 기계 학습 기반의 이상 행위 탐지 장치(100)에 비해 신속하게 사용자의 이상 행위를 탐지할 수 있기 때문이다.
지금까지, 도 2를 참조하여, 본 발명의 제2 실시예에 따른 이상 행위 탐지 시스템에 대하여 설명하였다. 다음으로, 도 3 내지 도 5를 참조하여, 전술한 이상 행위 시스템의 일 구성 요소인 이상 행위 탐지 장치(100)의 구성 및 동작에 대하여 설명하도록 한다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 기계 학습 기반의 이상 행위 탐지 장치(100)를 나타내는 블록도이다. 특히, 도 3은 이상 행위 탐지 모델의 구축 과정에 따른 데이터 플로우를 도시하고 있고, 도 4는 이상 행위 탐지 과정에 따른 데이터 플로우를 함께 도시하고 있다. 또한, 도 3 및 도 4에 도시된 이상 행위 탐지 장치(100)는 CMAB(contextual multi-armed bandit) 기반의 이상 행위 탐지 모델을 이용하여 사용자의 비정상적인 파일 사용 행위를 탐지하는 장치인 것을 예로써 도시하고 있다.
도 3 및 도 4를 참조하면, 이상 행위 탐지 장치(100)는 데이터 획득부(110), 컨텍스트 벡터 생성부(120), 암 결정부(130), 학습 데이터 생성부(140), 학습부(150), 이상 행위 탐지 모델(160), 탐지 데이터 생성부(170) 및 이상 행위 판정부(180)를 포함하도록 구성될 수 있다. 다만, 도 3에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 3에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 또한, 도 3에 도시된 이상 행위 탐지 장치(100) 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 적어도 하나의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다.
먼저, 도 3을 참조하여, 이상 행위 탐지 모델 구축 과정에서 각 구성 요소의 기능 및 동작에 대하여 설명하도록 한다.
도 3를 참조하면, 데이터 획득부(110)는 사용자의 실제 파일 사용 행위에 관한 실제 관측 데이터(e.g. 사용자의 파일 사용 로그)를 획득한다. 예를 들어, 데이터 획득부(110)는 행위 모니터링 장치(200) 또는 모니터링 에이전트로부터 상기 실제 관측 데이터를 수신할 수 있다. 상기 실제 관측 데이터의 예시는 도 10 및 도 11a를 참조하도록 한다.
컨텍스트 벡터 생성부(120)는 상기 실제 관측 데이터를 기초로 컨텍스트 벡터(context vector)를 생성한다. 컨텍스트 벡터 생성부(120)가 컨텍스트 벡터를 생성하는 방법에 대한 자세한 설명은 도 10 내지 도 11b를 참조하도록 한다.
암 결정부(130)는 상기 실체 관측 데이터에 포함된 파일 정보를 기초로 대응되는 암의 번호를 결정한다. 각 암은 하나의 파일 또는 복수의 파일로 구성된 파일 그룹에 대응될 수 있다. 이에 대한 자세한 설명은 이후 도 15 및 도 16을 참조하여 상세하게 설명하도록 한다.
학습 데이터 생성부(140)는 실제 관측 데이터를 기초로 생성된 컨텍스트 벡터 및 암의 번호를 기초로 학습 데이터를 생성한다. 이하, 실제 관측 데이터를 기초로 생성된 실제 학습 데이터를 설명의 편의를 위해 "제1 학습 데이터"로 칭하기로 한다.
구체적으로, 학습 데이터 생성부(140)는 실제로 관측된 사용자 행위는 정상 행위일 확률이 높다는 사전 지식을 활용하여, 높은 리워드를 부여함으로써 상기 제1 학습 데이터를 생성할 수 있다. 이때, 상기 제1 학습 데이터는 컨텍스트 벡터, 암의 번호 및 리워드로 구성된다.
또한, 학습 데이터 생성부(140)는 상기 제1 학습 데이터에서 컨텍스트 벡터를 구성하는 적어도 하나의 벡터 요소 또는 암의 번호를 랜덤(random)하게 변경함으로써 가상의 학습 데이터(이하, "제2 학습 데이터"로 칭하기로 함)를 생성한다. 이때, 상기 제2 학습 데이터는 사용자의 이상 행위를 가리키는 학습 데이터로 이용되기 때문에, 낮은 리워드가 부여된다.
학습 데이터 생성부(140)가 학습 데이터를 생성하는 방법에 대한 보다 자세한 설명은 도 9 내지 도 13을 참조하도록 한다.
학습부(150)는 학습 데이터 생성부(140)가 제공하는 학습 데이터셋을 기초로 CMAB(contextual multi-armed bandit) 기반의 강화 학습을 수행하여 이상 행위 탐지 모델(160)을 구축한다. 상기 강화 학습에 대해서는 이후 도 14를 참조하여 부연 설명하도록 한다.
이상 행위 탐지 모델(160)은 강화 학습에 의해 생성된 컨텍스트 벡터 및 암의 번호 정보를 입력으로 해당 컨텍스트에서 해당 암에 대한 기대 리워드(expected reward) 값을 출력할 수 있다.
다음으로, 도 4를 참조하여, 타깃 객체의 이상 행위 탐지 과정에서 각 구성 요소의 기능 및 동작에 대하여 설명하도록 한다.
도 4를 참조하면, 데이터 획득부(110)는 사용자의 탐지 대상 행위를 가리키는 실제 관측 데이터를 획득한다. 상기 실제 관측 데이터를 획득하는 방식은 전술한 바와 동일하므로, 이에 대한 설명은 생략하도록 한다.
컨텍스트 벡터 생성부(120) 및 암 결정부(130)는 상기 실제 관측 데이터를 기초로 컨텍스트 벡터를 생성하고 암의 번호를 결정한다. 이에 대한 설명은 전술한 바와 동일하므로, 생략하도록 한다.
탐지 데이터 생성부(170)는 상기 컨텍스트 벡터 및 상기 암의 번호로 구성된 탐지 대상 데이터를 생성한다.
이상 행위 판정부(180)는 이상 행위 탐지 모델(160)을 이용하여 사용자의 탐지 대상 행위가 이상 행위인지 여부를 판정한다. 구체적으로, 이상 행위 판정부(180)는 이상 행위 탐지 모델(160)을 이용하여 탐지 대상 데이터에 대한 기대 리워드를 산출하고, 상기 기대 리워드의 LCB(low confidence bound)를 기초로 상기 탐지 대상 행위가 이상 행위인지 여부를 판정한다. 이상 행위 판정부(180)가 이상 행위를 판정하는 방법에 대한 보다 자세한 설명은 도 17 내지 도 19를 참조하여 후술하도록 한다.
지금까지, 도 3 및 도 4를 참조하여, CMAB 기반으로 동작하는 이상 행위 탐지 장치(100)의 구성 및 동작에 대하여 설명하였다. 도 3 및 도 4에서 이상 행위 탐지 장치(100)는 사용자의 파일 사용 행위에 대한 이상 여부를 판정하는 장치인 것을 가정하여 설명하였으나, 본 발명의 실시예에 따라 타깃 객체와 탐지 대상이 되는 행위는 얼마든지 달라질 수 있다.
또한, 본 발명의 실시예에 따르면, 이상 행위 탐지 장치(100)는 지도 학습을 통해 구축된 이상 행위 탐지 모델을 이용하여 타깃 객체의 행위에 대한 이상 여부를 판정할 수도 있다. 이와 같은 경우, 학습 데이터 생성부(140)는 제1 학습 데이터에 정상 행위를 가리키는 클래스 레이블을 부여하고, 제2 학습 데이터에 이상 행위를 가리키는 클래스 레이블을 부여하는 모듈이 될 수 있고, 학습부(150)는 지도 학습 기반의 기계 학습을 수행하는 모듈이 될 수 있다. 또한, 컨텍스트 벡터 생성부(120) 및 암 결정부(130)는 학습 데이터에 대하여 적절한 전처리를 수행하는 전처리부(미도시)로 대체될 수 있다.
도 3 및 도 4에 도시된 이상 행위 탐지 장치(100)의 각 구성 요소는 소프트웨어(Software) 또는, FPGA(Field Programmable Gate Array)나 ASIC(Application-Specific Integrated Circuit)과 같은 하드웨어(Hardware)를 의미할 수 있다. 그렇지만, 상기 구성 요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(Addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성 요소들 안에서 제공되는 기능은 더 세분화된 구성 요소에 의하여 구현될 수 있으며, 복수의 구성 요소들을 합하여 특정한 기능을 수행하는 하나의 구성 요소로 구현될 수도 있다.
도 5는 본 발명의 또 다른 실시예에 따른 기계 학습 기반 이상 행위 탐지 장치(100)의 하드웨어 구성도이다.
도 5를 참조하면, 이상 행위 탐지 장치(100)는 하나 이상의 프로세서(101), 버스(105), 네트워크 인터페이스(107), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(103)와, 기계 학습 기반의 이상 행위 탐지 소프트웨어(109a)를 저장하는 스토리지(109)를 포함할 수 있다. 다만, 도 5에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 5에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.
프로세서(101)는 기계 학습 기반의 이상 행위 탐지 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 기계 학습 기반의 이상 행위 탐지 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.
메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 실시예들에 따른 기계 학습 기반의 이상 행위 탐지 방법을 실행하기 위하여 스토리지(109)로부터 하나 이상의 프로그램(109a)을 로드할 수 있다. 도 5에서 메모리(103)의 예시로 RAM이 도시되었다.
버스(105)는 기계 학습 기반의 이상 행위 탐지 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(105)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.
네트워크 인터페이스(107)는 기계 학습 기반의 이상 행위 탐지 장치(100)의 유무선 인터넷 통신을 지원한다. 또한, 네트워크 인터페이스(107)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(107)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.
스토리지(109)는 상기 하나 이상의 프로그램(109a)을 비임시적으로 저장할 수 있다. 도 5에서 상기 하나 이상의 프로그램(109a)의 예시로 기계 학습 기반의 이상 행위 탐지 소프트웨어(109a)가 도시되었다.
스토리지(109)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.
이상 행위 탐지 소프트웨어(109a)는 메모리(103)에 로드되어, 프로세서(101)로 하여금 본 발명의 실시예에 따른 기계 학습 기반의 이상 행위 탐지 방법을 실행하도록 할 수 있다.
예를 들어, 이상 행위 탐지 소프트웨어(109a)는 프로세서(101)로 하여금 하나 이상의 타깃 환경(target environment)의 실제 관측 데이터를 기초로 제1 학습 데이터를 생성하되, 상기 제1 학습 데이터는 적어도 하나의 데이터 요소로 구성되는 것인, 오퍼레이션, 상기 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여, 제2 학습 데이터를 생성하는 오퍼레이션 및 상기 제1 학습 데이터 및 상기 제2 학습 데이터를 기초로 기계 학습을 수행하여, 이상 행위 탐지 모델을 구축하는 오퍼레이션을 실행하도록 할 수 있다.
또한, 이상 행위 탐지 소프트웨어(109a)는 프로세서(101)로 하여금 타깃 객체의 행위에 대한 학습 데이터를 획득하되, 상기 학습 데이터는 정상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제1 학습 데이터 및 이상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제2 학습 데이터를 포함하고, 상기 제2 학습 데이터에 상기 제1 학습 데이터보다 더 낮은 학습 값(value)이 부여된 것인, 오퍼레이션, 상기 학습 데이터를 기초로 기계 학습(machine learning)을 수행하여 상기 타깃 객체에 대한 이상 행위 탐지 모델을 구축하는 오퍼레이션, 상기 타깃 객체의 탐지 대상 행위를 가리키는 탐지 대상 데이터를 획득하는 오퍼레이션, 상기 이상 행위 탐지 모델을 이용하여, 상기 탐지 대상 데이터에 대한 예측 값을 산출하는 오퍼레이션 및 상기 예측 값의 LCB(lower confidence bound)를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 오퍼레이션을 실행하도록 할 수 있다.
지금까지, 도 3 내지 도 5를 참조하여 본 발명의 실시예에 따른 기계 학습 기반의 이상 행위 탐지 장치(100)의 구성 및 동작에 대하여 설명하였다. 다음으로, 도 6 내지 도 19를 참조하여 본 발명의 실시예에 따른 기계 학습 기반의 이상 행위 탐지 방법에 대하여 상세하게 설명하도록 한다.
이하에서 후술할 본 발명의 실시예에 따른 기계 학습 기반의 이상 행위 탐지 방법의 각 단계는, 컴퓨팅 장치에 의해 수행될 수 있다. 예를 들어, 상기 컴퓨팅 장치는 이상 행위 탐지 장치(100)일 수 있다. 다만, 설명의 편의를 위해, 상기 이상 행위 탐지 방법에 포함되는 각 단계의 동작 주체는 그 기재가 생략될 수도 있다. 또한, 상기 이상 행위 탐지 방법의 각 단계는 프로세서(101)에 의해 실행되는 이상 행위 탐지 소프트웨어(109a)의 각 오퍼레이션으로 구현될 수 있다.
본 발명의 실시예에 따른 기계 학습 기반의 이상 행위 탐지 방법은 기계 학습을 통해 이상 행위 탐지 모델을 구축하는 제1 과정과 실제 이상 행위 탐지 모델을 이용하여 타깃 객체의 이상 행위를 탐지하는 제2 과정으로 구성될 수 있다. 먼저, 상기 제1 과정에 대하여 도 9 내지 도 16을 참조하여 설명하고, 이후 도 17 이하의 도면을 참조하여 상기 제2 과정에 대하여 설명하도록 한다.
본 발명의 실시예에 따른 기계 학습 방법은 이상 행위 탐지 모델을 구축하기 위해 수행되는 것이나, 본 발명의 기술 분야에서 종사하는 당업자라면 후술할 기계 학습 방법이 임의의 기계 학습 모델을 구축하기 위해 임의의 기계 학습 장치에 의해 수행될 수 있다는 것을 자명하게 이해할 수 있을 것이다. 따라서, 이하에서, 상기 이상 행위 탐지 모델을 보다 일반적인 용어인 "타깃 모델"과 혼용하여 사용하도록 한다. 상기 타깃 모델은 글자 그대로 구축 대상이 되는 모델을 의미한다.
도 6은 본 발명의 일 실시예에 따른 기계 학습 방법을 나타내는 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.
도 6을 참조하면, 단계(S110)에서, 타깃 환경(target environment)의 실제 관측 데이터를 기초로 제1 학습 데이터가 생성된다. 이때, 상기 타깃 환경은 타깃 객체의 행위를 수행하는 환경으로, 예를 들어, 타깃 객체가 기업의 사용자인 경우 기업 환경을 의미할 수 있다. 상기 실제 관측 데이터는 타깃 객체가 수행한 실제 행위를 관측한 데이터로, 예를 들어, 도 1에 도시된 환경에서 행위 모니터링 장치(200)에 의해 관측되는 데이터를 의미할 수 있다.
단계(S110)에서, 상기 제1 학습 데이터를 생성하기 위해, 상기 실제 관측 데이터의 전처리 과정이 수행될 수 있다. 예를 들어, 실제 관측 데이터를 지정된 학습 데이터의 포맷(e.g. 특징 벡터의 포맷)으로 변환하는 전처리 과정이 수행될 수 있다.
단계(S130)에서, 제1 학습 데이터를 구성하는 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여, 제2 학습 데이터가 생성된다. 일 예시로, 제1 학습 데이터가 특징 벡터의 포맷을 갖는 경우, 특징 벡터를 구성하는 적어도 하나의 벡터 요소의 값을 랜덤하게 변경하여, 제2 학습 데이터가 생성될 수 있다. 다른 일 예시로, MAB(multi-armed bandits) 기반의 강화 학습이 수행되는 경우, 상기 제1 학습 데이터를 구성하는 데이터 요소 중 암(arm)의 번호를 랜덤하게 변경하여, 상기 제2 학습 데이터가 생성될 수 있다. 또 다른 일 예시로, CMAB(contextual multi-armed bandit) 기반의 강화 학습이 수행되는 경우, 상기 제1 학습 데이터에 포함된 컨텍스트의 구성 요소 또는 상기 제1 학습 데이터에 포함된 암의 번호 중 적어도 하나를 랜덤하게 변경하여 상기 제2 학습 데이터가 생성될 수 있다. 다만, 열거된 예시들은 본 발명의 일부 실시예를 설명하기 위한 것으로, 본 발명의 범위가 상기 예시들에 한정되는 것은 아니다.
단계(S150)에서, 제1 학습 데이터 및 제2 학습 데이터를 기초로 기계 학습을 수행하여, 타깃 모델(target model)이 구축된다.
보다 이해의 편의를 제공하기 위해, 도 7 및 도 8을 참조하여, 전술한 기계 학습 방법에 따라 지도 학습(supervised learning) 및 강화 학습(reinforcement learning)을 수행하는 방법에 대하여 설명하도록 한다.
도 7은 본 발명의 일 실시예에 따른 지도 학습 기반 기계 학습 방법을 나타내는 흐름도이다. 도 7은 기업 환경에서 사용자의 행위를 이상 행위 또는 정상 행위로 분류(classification)하는 이상 행위 탐지 모델이 구축되는 과정을 예로써 도시하고 있으나, 본 발명의 기술 분야에 종사하는 당업자라면 분류의 목적에 따라 서로 다른 타깃 모델이 구축될 수 있음을 자명하게 이해할 수 있을 것이다.
도 7을 참조하면, 단계(S210)에서, 실제 관측 데이터인 제1 학습 데이터에 정상 행위를 가리키는 클래스 레이블(class label)이 부여된다. 이는, 기업 환경에서 실제 관측 데이터가 가리키는 사용자의 행위는 대부분 정상 행위일 것이라는 사전 지식(prior knowledge)에 기반한 것이다. 따라서, 타깃 환경이 달라지는 경우, 상기 제1 학습 데이터에 이상 행위를 가리키는 클래스 레이블이 부여될 수도 있다. 또한, 타깃 모델이 다른 분류를 수행하는 모델이라면, 사전 지식에 기초하여 적절한 클래스 레이블이 부여될 수 있을 것이다.
단계(S230)에서, 제2 학습 데이터에 이상 행위를 가리키는 클래스 레이블이 부여된다. 전술한 바와 같이, 상기 제2 학습 데이터는 상기 제1 학습 데이터를 기초로 생성된 일종의 가상의 학습 데이터이다.
본 발명의 실시예에 따르면, 상기 제2 학습 데이터에 클래스 레이블을 부여하기 전에, 기 생성된 제1 학습 데이터 중에서 상기 제2 학습 데이터에 매칭되는 데이터가 존재하는지 여부가 판정될 수 있다. 이때, 매칭되는 데이터가 존재하지 않는다는 판정에 응답하여, 상기 제2 학습 데이터에 이상 행위를 가리키는 클래스 레이블이 부여될 수 있다. 본 실시예에 따르면, 중복되는 학습 데이터이나 서로 다른 클래스 레이블을 갖게 되는 데이터 충돌 문제가 방지될 수 있다. 따라서, 학습 데이터셋의 신뢰도가 향상될 수 있다. 본 실시예는 본 명세서에서 설명되는 다른 기계 학습 방법에도 동일하게 적용될 수 있다.
단계(S250)에서, 제1 학습 데이터 및 제2 학습 데이터를 기초로 지도 학습을 수행하여 이상 행위 탐지 모델이 구축된다. 이때, 상기 지도 학습은 SVM(support vector machine), 결정 트리 등 당해 기술 분야에서 널리 알려진 적어도 하나의 비지도 학습 알고리즘을 통해 수행될 수 있다. 또한, 상기 지도 학습은 ANN(artificial neural network), CNN(convolutional neural network), RNN(recurrent neural network)와 같이 딥 러닝(learning)을 수행하는 신경망 기반 기계 학습 알고리즘을 통해 수행될 수도 있다. 상기 딥 러닝은 학습 데이터셋에서 자동으로 특징을 학습한다는 점에서는 비지도 학습(unsupervised learning)의 특징을 갖지만, 학습 데이터셋에 클래스 레이블이 부여된다는 점에서 지도 학습의 특징 또한 포함하기 때문이다.
다음으로, 도 8은 본 발명의 일 실시예에 따른 강화 학습 기반 기계 학습 방법을 나타내는 흐름도이다. 도 8은 기업 환경에서 사용자의 이상 행위를 탐지하는 이상 행위 탐지 모델이 구축되는 과정을 예로써 도시하고 있으나, 본 발명의 기술 분야에 종사하는 당업자라면 타깃 모델의 목적에 따라 서로 다른 타깃 모델이 구축될 수 있음을 자명하게 이해할 수 있을 것이다.
도 8을 참조하면, 단계(S310) 및 단계(S330)에서, 제1 학습 데이터가 제1 리워드 부여되고, 제2 학습 데이터에 제2 리워드가 부여된다.
일 실시예에서, 상기 제1 리워드는 지정된 범위에서 최대 값을 갖는 리워드이고, 상기 제2 리워드는 상기 지정된 범위에서 최소 값을 갖는 리워드일 수 있다. 즉, 사전 지식을 바탕으로 정상 행위를 가리킬 확률이 높은 제1 학습 데이터에 최대 리워드를 부여하고, 제2 학습 데이터에 최소 리워드가 부여될 수 있다. 이와 같은 경우, 실제 이상 행위 탐지 시, 이상 행위 탐지 모델은 예측 리워드(expected reward)가 낮을 것으로 예측되는 사용자 행위를 이상 행위로 탐지하게 된다.
다른 일 실시예에서, 상기 제1 리워드는 지정된 범위에서 최소 값을 갖는 리워드이고, 상기 제2 리워드는 상기 지정된 범위에서 최대 값을 갖는 리워드일 수 있다. 이와 같은 경우, 실제 이상 행위 탐지 시, 이상 행위 탐지 모델은 예측 리워드(expected reward)가 높을 것으로 예측되는 사용자 행위를 이상 행위로 탐지하게 된다.
또 다른 일 실시예에서, 상기 제1 리워드는 실제 관측 데이터의 발생 빈도(또는 관측된 횟수)를 기초로 결정될 수 있다. 즉, 제1 실제 관측 데이터가 나타내는 제1 사용자 행위가 빈번하게 관측된 행위인 경우, 상기 제1 실제 관측 데이터를 기초로 생성된 제1 학습 데이터에 더 높은 리워드가 부여될 수 있다. 기업 환경에서 빈번하게 관측된 사용자 행위는 정상 행위일 확률이 더 높기 때문이다.
또 다른 일 실시예에서, 상기 제1 리워드 및/또는 상기 제2 리워드는 실제 정상 행위를 가리키는 제1 기준 데이터 또는 실제 이상 행위를 가리키는 제2 기준 데이터와 학습 데이터 간의 유사도에 기초하여 부여될 수 있다. 예를 들어, 각 학습 데이터 및 기준 데이터가 특징 벡터로 구성되었다고 가정하자. 그러면, 제1 학습 데이터와 상기 제1 기준 데이터 사이의 유사도(e.g. 벡터 유사도)가 높을수록 상기 제1 리워드는 높은 리워드로 결정될 수 있다. 유사하게, 상기 제1 학습 데이터와 상기 제2 기준 데이터 사이의 유사도가 낮을수록 상기 제1 리워드는 높은 리워드로 결정될 수 있다. 마찬가지로, 제2 학습 데이터와 상기 제1 기준 데이터 사이의 유사도(e.g. 벡터 유사도)가 낮을수록 상기 제2 리워드는 높은 리워드로 결정될 수 있고, 상기 제2 학습 데이터와 상기 제2 기준 데이터 사이의 유사도가 높을수록 상기 제2 리워드는 높은 리워드로 결정될 수 있다.
단계(S350)에서, 제1 학습 데이터 및 제2 학습 데이터를 기초로 강화 학습을 수행하여 이상 행위 탐지 모델이 구축된다. 이때, 상기 강화 학습은 MAB(multi-armed bandits), CMAB(contextual multi-armed bandit) 등 당해 기술 분야에서 널리 알려진 적어도 하나의 강화 학습 알고리즘에 기초하여 수행될 수 있다.
지금까지, 도 7 및 도 8을 참조하여, 본 발명의 실시예에 따른 지도 학습 또는 강화 학습 기반의 기계 학습 방법에 대하여 설명하였다. 이하에서는, 보다 이행의 편의를 제공하기 위해, 도 9 내지 도 16을 참조하여, 강화 학습의 일종인 CMAB 기반으로 이상 행위 탐지 모델을 구축하는 방법에 대하여 설명하도록 한다. 또한, 도 1에 도시된 타깃 환경에서 사용자의 비정상적인 파일 사용 행위를 탐지하는 이상 행위 탐지 모델을 구축하는 것을 예로 들어 설명하도록 한다.
도 9는 본 발명의 일 실시예에 따른 CMAB 기반 이상 행위 탐지 모델 구축 방법을 나타내는 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.
도 9를 참조하면, 단계(S410)에서, 사용자의 파일 사용 행위에 대한 실제 관측 데이터 획득된다. 예를 들어, 도 1에 도시된 행위 모니터링 장치(200)로부터 실제 관측 데이터가 획득되거나, 사용자의 파일 사용 행위를 모니터링하는 모니터링 에이전트로부터 직접적으로 실제 관측 데이터가 획득될 수 있다.
단계(S420)에서, 대상 파일에 대응되는 암(arm)이 존재하는지 여부가 판정된다. 이때, 상기 대상 파일은 사용자의 파일 사용 행위의 대상이 되는 파일을 의미한다. 본 실시예에서, 상기 대상 파일이 CMAB 알고리즘의 암에 대응되는 것으로 모델링 되었고, 사용자의 파일 사용 행위와 관련된 다양한 요인들이 컨텍스트(context)로 모델링 되었다.
단계(S430)에서, 대응되는 암이 존재하지 않는다는 판정에 응답하여, 신규 암이 생성된다.
단계(S440)에서, 대응되는 암이 존재한다는 판정에 응답하여, 획득된 실제 관측 데이터를 기초로 컨텍스트 벡터가 생성된다. 상기 컨텍스트 벡터는 다양한 컨텍스트를 수치화 된 값을 갖는 벡터로 모델링 한 것이다. 상기 컨텍스트 벡터에 대하여 도 10을 참조하여 부연 설명하도록 한다.
도 10은 본 발명의 몇몇 실시예에서 참조될 수 있는 컨텍스트 벡터의 예를 도시하고 있다.
도 10을 참조하면, 본 발명의 몇몇 실시예에서 참조될 수 있는 컨텍스트의 종류는 파일의 소유자, 파일 종류와 같은 파일의 속성 정보, 행위자의 소속 조직 등과 같은 사용자의 속성 정보, 파일 사용 행위의 종류, 파일의 접근 경로 등과 같이 다양한 컨텍스트(420)를 포함할 수 있다. 도 10에서, 왼편에 도시된 숫자(410)는 실제 관측 데이터를 기초로 생성된 컨텍스트 벡터를 구성하는 각 벡터 요소의 값을 의미한다. 실시예에 따라, 해당 값을 일정 범위 내의 값으로 변환하는 전처리 작업(e.g. scaling 또는 normalization)이 수행될 수도 있다.
다시, 도 9를 참조하면, 단계(S450)에서, 컨텍스트 벡터 및 암의 번호를 기초로 제1 학습 데이터가 생성되고, 상기 제1 학습 데이터에 제1 리워드가 부여된다. 상기 제1 리워드는 전술한 실시예에 따라 다양한 기준 하에 부여될 수 있다. 단계(S450)에 대하여 도 11a 및 도 11b를 참조하여 부연 설명하도록 한다.
도 11a는 단계(S450)에서 제1 학습 데이터를 생성하는 예를 도시하고 있다.
도 11a를 참조하면, 사용자의 실제 관측 데이터(430)를 기초로 컨텍스트 벡터(441)가 생성되고, 실제 관측 데이터(430)에 포함된 대상 파일을 기초로 암의 번호(443)가 결정된다. 또한, 컨텍스트 벡터(441)와 암의 번호(443)로 구성된 학습 데이터(440)가 생성된다. 또한, 학습 데이터(440)에 리워드(445)가 부여되기 때문에, 최종적으로 학습 데이터(440)는 도 11b에 도시된 바와 같이 컨텍스트 벡터(441), 암의 번호(443) 및 리워드(455)로 구성된다. 특히, 도 11b는 리워드가 0~1 사이의 범위를 갖고, 제1 학습 데이터에 최대 리워드가 부여되는 예를 도시하고 있다.
다시 도 9를 참조하면, 단계(S460)에서, 제1 학습 데이터를 기초로 제2 학습 데이터가 생성되고, 제2 학습 데이터에 제2 리워드가 부여된다. 구체적으로, 제1 학습 데이터를 구성하는 데이터 요소 중 적어도 하나의 요소의 값을 랜덤하게 변경하여 제2 학습 데이터가 생성된다. 제2 학습 데이터의 구체적인 예시는 도 12a 및 도 12b에 도시되어 있다. 도 12a는 컨텍스트 벡터(451)를 구성하는 벡터 요소의 값을 랜덤하게 변경하여 제2 학습 데이터를 생성한 예를 도시하고, 도 12b는 암의 번호를 랜덤하게 변경하여 제2 학습 데이터를 생성한 예를 도시하고 있다.
한편, 본 발명의 실시예에 따르면, 학습 데이터가 각 암 별로 편향되어 분포되는 것을 방지하기 위해, 학습 데이터의 개수 분포를 고려하여 제2 학습 데이터가 생성될 수 있다. 구체적으로, 암의 번호 별로, 기 생성된 학습 데이터의 개수를 산출하고, 산출된 개수가 임계 값 이하 또는 최소인 암의 번호를 결정한 다음, 제1 학습 데이터의 암 번호를 상기 결정된 암의 번호로 변경하여 제2 학습 데이터가 생성될 수 있다. 예를 들어, 도 13에 도시된 바와 같이 학습 데이터가 분포된 경우, 4번째 암(470)의 번호를 갖는 제2 학습 데이터가 생성될 수 있다. 물론, 제1 학습 데이터의 암 번호를 상기 결정된 암의 번호로 변경하고, 상기 제1 학습 데이터에 포함된 컨텍스트 벡터의 벡터 요소 값을 랜덤하게 변경하여 제2 학습 데이터가 생성될 수도 있다. 본 실시예에 따르면, 학습 데이터가 암 별로 고르게 분포될 수 있는 바, 보다 효과적인 기계 학습이 수행될 수 있다.
다시, 도 9를 참조하면, 단계(S470)에서, 제1 학습 데이터 및 제2 학습 데이터에 대하여 CMAB 기반의 강화 학습을 수행하여 이상 행위 탐지 모델이 구축된다. 이하에서는, 보다 이해의 편의를 제공하기 위해 CMAB 기반의 강화 학습에 대하여 도 14를 참조하여 부연 설명하도록 한다.
먼저, CMAB 알고리즘에서 각 암에 대한 기대 리워드(expected reward or expected payoff)가 상호 독립적이고 컨텍스트와 리워드가 선형 관계에 있는 경우, 각 암에 대한 평균 기대 리워드는 하기의 수학식 1과 같이 선형 관계로 모델링 될 수 있다. 하기 수학식 1에서, E(μ)는 기대 리워드를 가리키고, a는 암의 번호를 가리키며, x는 t시점의 암(a)에 대한 컨텍스트 벡터를 가리키고, θ는 강화 학습에 따라 갱신되는 계수 벡터(coefficient vector)를 가리킨다.
Figure pat00001
다음으로, 1개의 제1 학습 데이터(481)와 m-1개의 제2 학습 데이터(483)가 학습 데이터로 생성되었고, 학습 데이터에 포함된 컨텍스트 벡터는 D차원의 특징 벡터라고 가정하자. 그러면, 도 14에 도시된 바와 같이, 암(a)에 대하여 m x D 크기의 컨텍스트 매트릭스(Da)와 m x 1 크기의 리워드 매트릭스 또는 리스폰스 매트릭스(ba, response matrix or response vector)가 생성된다.
다음으로, 컨텍스트 매트릭스(Da)와 리스폰스 매트릭스(ba)를 이용하여 암(a)에 대한 기대 리워드를 갱신하고, 상기 기대 리워드가 최대화되도록 계수 벡터를 갱신하는 방식으로 강화 학습이 수행된다. 상기 강화 학습은 다른 암에 대하여도 동일하고 수행된다. 이때, 강화 학습에 이용되는 알고리즘은 예를 들어 UCB(upper confidence bound)1, UCB2, linUCB(linear UCB) 등이 이용될 수 있다.
linUCB을 이용하여, 강화 학습이 수행되는 경우에는 하기의 수학식 2가 이용될 수 있다. 하기의 수학식 2는 당해 기술 분야에서 이미 널리 알려진 수식인 바 이에 대한 설명은 생략하도록 한다.
Figure pat00002
지금까지, 도 14를 참조하여 CMAB 기반의 강화 학습에 대하여 간략하게 설명하였다. 이하에서는, 본 발명의 몇몇 실시예에 따라 각 암에 대응되는 파일 그룹을 형성하는 방법에 대하여 도 15 및 도 16을 참조하여 간략하게 설명하도록 한다.
지금까지 각 대상 파일이 하나의 암에 대응된다고 가정하여 설명하였으나, 본 발명의 실시예에 따르면, 보다 효율적인 학습을 위해, 하나의 암은 적어도 하나의 대상 파일로 구성된 파일 그룹에 대응되도록 모델링 될 수 있다. 대상 파일과 암이 1:1로 대응되는 경우, 지나치게 많은 개수의 암이 존재하여 학습에 소모되는 컴퓨팅 비용이 크게 증가될 수 있기 때문이다.
일 실시예에서, 도 15에 도시된 바와 같이, 파일의 이름을 기준으로 복수의 파일이 적어도 하나의 파일 그룹으로 그룹핑 될 수 있다. 이는, 도 15에 도시된 바와 같이, 파일 이름이 일반적으로 해당 파일의 버전을 반영하고 있다는 점을 이용한 것이다. 특히, 도 15에는 파일 이름에 "기획서"가 공통되는 파일들이 제1 그룹(491)으로 형성되고, 파일 이름에 "설계도"가 공통되는 파일들이 제2 그룹(493)으로 형성된 것이 예시되었다. 이때, 제1 그룹(491)은 예를 들어 암(#1)에 대응되고, 제2 그룹(493)은 암(#2)에 대응될 수 있다.
일 실시예에서, 도 16에 도시된 바와 같이, 파일의 내용을 기준으로 복수의 파일이 적어도 하나의 파일 그룹으로 그룹핑 될 수 있다. 파일의 이름은 유사하더라도 파일의 내용은 전혀 상이하거나, 파일의 이름은 전혀 상이하나 내용은 유사한 파일들이 존재할 수 있기 때문이다.
구체적으로, 파일에 포함된 키워드의 유사도(또는 주제의 유사도)에 기초하여 복수의 파일이 적어도 하나의 파일 그룹으로 그룹핑될 수 있다. 이를 위해, LDA(Latent Dirichlet allocation), k-평균 클러스터링(k-means cluutering) 등의 비지도 학습 알고리즘이 이용될 수 있다. 또는, 키워드의 유사도를 산출하기 위해 TF-IDF(term frequency - inverse document frequency) 기반의 벡터 유사도가 이용될 수 있다. 키워드의 유사도를 이용하여 그룹핑 또는 클러스터링 하는 방법은 이미 당해 기술 분야에서 널리 알려진 것이므로, 이에 대한 자세한 설명은 생략하도록 한다.
이외에도, 본 발명의 실시예에 따르면, 파일의 형식, 파일의 소유자, 파일의 보안 등급 등 다양한 파일 속성에 기초하여 파일이 그룹핑될 수 있다.
지금까지, 도 6 내지 도 16을 참조하여, 본 발명의 실시예에 따른 기계 학습 방법과 기계 학습 기반의 이상 행위 탐지 모델 구축 방법에 대하여 설명하였다. 이하에서는, 도 17 이하의 도면을 참조하여, 기 구축된 기계 학습 기반의 이상 행위 탐지 모델을 이용하여 타깃 객체의 이상 행위를 탐지하는 방법에 대하여 설명하도록 한다.
도 17은 본 발명의 일 실시예에 따른 기계 학습 기반의 이상 행위 탐지 방법을 나타내는 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.
단계(S510)에서, 학습 데이터를 기초로 기계 학습을 수행하여 타깃 객체에 대한 이상 행위 탐지 모델이 구축된다. 이에 대한 설명은 전술한 바와 같으므로, 중복된 설명을 배제하기 위해 생략하도록 한다.
단계(S530)에서, 타깃 객체의 탐지 대상 행위를 가리키는 탐지 대상 데이터가 획득된다. 예를 들어, 상기 타깃 객체의 탐지 대상 행위는 사용자의 파일 사용 행위 등이 될 수 있다. 또한, 상기 탐지 대상 데이터는 이상 행위 탐지 모델을 통해 예측 값을 산출하는데 이용되는 데이터이다. 상기 이상 행위 탐지 모델이 CMAB 기반 모델인 경우, 상기 탐지 데이터는 탐지 대상 행위를 기초로 생성된 컨텍스트 벡터 및 타깃 파일의 정보(또는 타깃 암의 번호)를 포함할 수 있다.
단계(S550)에서, 이상 행위 탐지 모델을 이용하여, 상기 탐지 대상 데이터에 대한 예측 값이 산출된다. 구체적으로, 상기 탐지 대상 데이터가 상기 이상 행위 탐지 모델에 입력되면, 그에 대한 출력으로 상기 예측 값이 산출될 수 있다.
일 실시예에서, 이상 행위 탐지 모델이 지도 학습 기반 모델인 경우 상기 예측 값은 예를 들어 컨피던스 스코어(confidence score)가 될 수 있다. 상기 컨피던스 스코어는 예를 들어 탐지 대상 행위가 특정 클래스(e.g. 이상 행위, 정상 행위)에 해당할 확률에 대응되는 값을 의미한다.
일 실시예에서, 이상 행위 탐지 모델이 강화 학습 기반 모델인 경우 상기 예측 값은 기대 리워드에 관한 값이 될 수 있다.
단계(S570)에서, 예측 값의 LCB(lower confidence bound)를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부가 판정된다. 예를 들어, 상기 예측 값의 LCB가 기 설정된 임계 값 미만인 경우, 상기 탐지 대상 행위는 이상 행위로 판정될 수 있다. 상기 예측 값의 LCB가 매우 낮다는 것은 탐지 대상 데이터가 가리키는 탐지 대상 행위가 일반적으로 발생하지 않는 행위(즉, 매우 낮은 확률로 발생하는 행위)라는 것을 의미하기 때문이다.
이하에서는, 보다 이해의 편의를 제공하기 위해, 이상 행위 탐지 모델이 CMAB 기반 모델인 경우를 가정하여, 이상 행위 판정 단계(S570)에 대하여 부연 설명하도록 한다. 또한, 상기 이상 행위 탐지 모델은 사용자의 파일 사용 행위를 대상으로 이상 행위를 탐지하는 모델이고, 이때 각 암이 적어도 하나의 파일에 대응되는 경우를 예로 들어 설명하도록 한다.
일 실시예에서, 탐지 대상 데이터는 사용자의 파일 사용 행위를 기초로 생성된 타깃 컨텍스트 벡터와 상기 파일 사용 행위의 대상인 타깃 파일의 정보를 포함한다. 그러면, 이상 행위 탐지 장치(100)에 의해, 타깃 파일의 정보에 대응되는 타깃 암이 존재하는지 여부가 판정된다. 본 실시예에서, 상기 타깃 암이 존재하지 않는다는 판정에 응답하여, 상기 탐지 대상 행위가 이상 행위로 판정될 수 있다. 타깃 암이 존재하지 않는 경우, 해당 파일 사용 행위는 지금까지 다른 사용자가 접근하지 않은 파일에 접근하는 흔치 않은 행위이기 때문이다.
일 실시예에서, 상기 탐지 대상 데이터는 상기 탐지 대상 행위를 기초로 생성된 타깃 컨텍스트 벡터 및 타깃 파일에 대응되는 타깃 암의 번호 정보를 포함한다. 본 실시예에서, 이상 행위 탐지 모델을 통해 상기 타깃 컨텍스트 벡터 및 상기 타깃 암의 번호 정보에 대한 기대 리워드가 출력된다. 또한, 상기 타깃 암에 대한 예측 값의 LCB와 기 설정된 상기 타깃 암의 임계 값과의 비교 결과에 기초하여, 상기 탐지 대상 행위가 이상 행위인지 여부가 판정될 수 있다. 예를 들어, 상기 LCB가 상기 임계 값 이하인 경우, 상기 탐지 대상 행위는 이상 행위로 판정될 수 있다.
전술한 실시예에서, 이상 행위 탐지 모델을 구성하는 복수의 암 각각에 대하여 임계 값이 미리 설정되고, 이때 각 암의 임계 값은 각 암에 대응되는 파일의 중요도에 기초하여 설정될 수 있다. 구체적으로, 제1 암의 제1 임계 값은 상기 제1 암에 대응되는 파일의 중요도에 기초하여 결정되고, 제2 암의 제2 임계 값은 상기 제2 암에 대응되는 제1 파일의 중요도에 기초하여 결정될 수 있다. 또한, 상기 제1 임계 값 및 상기 제2 임계 값은 제2 파일의 중요도에 따라 서로 다른 값으로 결정될 수 있다. 예를 들어, 상기 제1 파일의 중요도가 상기 제2 파일의 중요도가 보다 높은 경우(e.g. 보안 등급이 더 높은 경우), 상기 제1 임계 값은 상기 제2 임계 값보다 더 높은 값으로 결정될 수 있다. 중요도 높은 파일에 접근하는 사용자 행위는 보다 엄격한 기준이 적용될 필요가 있기 때문이다.
CMAB 기반의 이상 행위 탐지 모델에서, LCB는 하기의 수학식 3 또는 수학식 4에 의해 산출될 수 있다. 하기 수학식 3은 Chernoff-Hoeffding Bound를 이용하여 LCB를 산출하는 수식이고, 하기 수학식 4는 리지 리그레션(ridge regression)을 이용하여 LCB를 산출하는 수식이다.
하기 수학식 3에서, ma는 암(a)의 출현횟수를 가리키고, na는 암(a)에서 해당 컨텍스트에 대응되는 행위의 출현횟수를 가리킨다. 또한, Xa는 암(a)에 대한 d차원 컨텍스트 벡터를 가리키고, θa는 강화 학습을 통해 갱신된 계수 벡터를 가리킨다.
하기 수학식 4에서, Id는 d x d의 단위 행렬을 가리키고, α는 LCB를 제어하는 소정의 제어 파라미터를 가리키며, 나머지 변수는 하기 수학식 3과 동일하다.
Figure pat00003
Figure pat00004
다만, 상기 수학식 3 및 상기 수학식 4는 LCB를 산출하는 일부 예시일 뿐이고, 신뢰 하한을 가리키는 LCB의 산출 방법은 얼마든지 달라질 수 있다.
일 실시예에서, 상기 탐지 대상 데이터는 상기 탐지 대상 행위를 기초로 생성된 타깃 컨텍스트 벡터 및 타깃 파일에 대응되는 타깃 암의 번호 정보를 포함한다. 본 실시예에서, 도 18에 도시된 바와 같이, 타깃 암의 LCB와 나머지 암에 대하여 기대 리워드의 LCB가 산출되고(S571, S573), LCB의 비교 결과에 기초하여 탐지 대상 행위가 이상 행위인지 여부가 판정된다(S575). 도 19에 도시된 예를 참조하여 부연 설명하면, 타깃 암(530)이 1번 암인 경우, 다른 암에 대해서도 LCB가 산출된다. 또한, 타깃 암(530)의 LCB가 다른 암의 LCB에 비해 낮은 경우에 한하여, 탐지 대상 행위가 이상 행위로 판정될 수 있다. 타깃 암의 LCB가 상대적으로 낮다는 것은, 동일한 컨텍스트에서 타깃 파일에 대한 파일 사용 행위가 다른 파일에 대한 파일 사용 행위보다 일어날 확률이 매우 낮은 행위라는 것을 의미하기 때문이다. 본 실시예에 따르면, 별도의 임계 값이 미리 설정되지 않은 경우 또는 임계 값을 결정하기 힘든 경우에도, LCB의 비교 결과에 기초하여 탐지 대상 행위가 이상 행위인지 여부를 판정할 수 있다.
지금까지, 도 17 내지 도 19를 참조하여, 본 발명의 실시예에 따른 기계 학습 기반 이상 행위 탐지 방법에 대하여 설명하였다. 상술한 방법에 따르면, 수동으로 작성된 탐지 룰에 의존하지 않고, 자동으로 기계 학습을 통해 이상 행위 탐지 모델이 구축되고, LCB에 기초하여 사용자의 이상 행위가 자동으로 탐지될 수 있다. 이에 따라, 관리자의 편의성이 비약적으로 향상되고, 룰 작성에 소요되는 인적 비용 등이 크게 절감될 수 있다. 아울러, 관리자에 의해 명시적으로 작성된 룰을 이용하는 경우에 비하여, 이상 행위 탐지 정확도가 향상될 수 있다.
한편, 본 명세서에 개시된 기술적 사상은 실질적인 변경 없이 다양한 시스템에 적용되어 실시될 수 있다.
제1 실시예로, 카드의 부정 사용 행위를 감지하는 FDC(fraud detection system)에 본 발명이 실시될 수 있다. 상기 제1 실시예에서, 사용자의 카드 결제 행위에 관한 정보는 컨텍스트에 대응되고, 가맹점 종류가 암에 대응될 수 있다. 그러면, 이상 행위 탐지 모델은 전술한 바와 동일한 방법으로 사용자의 카드 부정 사용 행위를 이상 행위로 탐지할 수 있다.
제2 실시예로, 건물, 공장 등의 타깃 시설에 대한 사용자의 부정 출입을 감지하는 출입 관리 시스템에 본 발명이 실시될 수 있다. 상기 제2 실시예에서, 사용자의 출입 행위(e.g. 카드 태깅 등)에 관한 정보는 컨텍스트에 대응되고, 타깃 시설 내 각 도어(door)에 설치된 카드 태그 단말(e.g. 로비폰)이 암에 대응될 수 있다. 그러면, 이상 행위 탐지 모델은 전술한 바와 동일한 방법으로 사용자의 부정 출입 행위를 이상 행위로 탐지할 수 있다.
다만, 상기 열거된 실시예들은 본 발명의 기술적 사상이 실시될 수 있는 일부 예시들에 불과한 것이다. 본 발명의 기술 분야에 종사하는 당업자라면, 본 발명의 기술적 사상이 상기 실시예들 외에도 다양한 시스템에 적용될 수 있다는 것을 자명하게 알 수 있을 것이다.
지금까지 도 1 내지 도 19를 참조하여 설명된 본 발명의 개념은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.
도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.

Claims (25)

  1. 이상 행위 탐지 장치에서 기계 학습 기반으로 타깃 객체(target object)의 이상 행위를 탐지하는 방법에 있어서,
    상기 타깃 객체의 행위에 대한 학습 데이터를 획득하되, 상기 학습 데이터는 정상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제1 학습 데이터 및 이상 행위에 대응되는 상기 타깃 객체의 행위를 가리키는 제2 학습 데이터를 포함하고, 상기 제2 학습 데이터에 상기 제1 학습 데이터보다 더 낮은 학습 값(value)이 부여된 것인, 단계;
    상기 학습 데이터를 기초로 기계 학습(machine learning)을 수행하여 상기 타깃 객체에 대한 이상 행위 탐지 모델을 구축하는 단계;
    상기 타깃 객체의 탐지 대상 행위를 가리키는 탐지 대상 데이터를 획득하는 단계;
    상기 이상 행위 탐지 모델을 이용하여, 상기 탐지 대상 데이터에 대한 예측 값을 산출하는 단계; 및
    상기 예측 값의 LCB(lower confidence bound)를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  2. 제1 항에 있어서,
    상기 학습 데이터는 적어도 하나의 데이터 요소로 구성되고,
    상기 학습 데이터를 획득하는 단계는,
    상기 타깃 객체의 행위의 실제 관측 데이터를 기초로 상기 제1 학습 데이터를 생성하는 단계; 및
    상기 제1 학습 데이터를 구성하는 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여 상기 제2 학습 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  3. 제1 항에 있어서,
    상기 이상 행위 탐지 모델을 구축하는 단계는,
    상기 학습 값을 리워드(reward)로 하는 강화 학습(reinforcement learning)을 수행하여 상기 이상 행위 탐지 모델을 구축하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  4. 제3 항에 있어서,
    상기 타깃 객체의 행위는 복수의 행위 및 복수의 행위 대상을 포함하고,
    상기 이상 행위 탐지 모델은 CMAB(contextual multi-armed bandit) 기반의 강화 학습을 통해 구축된 모델이며,
    상기 복수의 행위 대상에 포함되는 각각의 행위 대상은 암에 대응되고,
    상기 복수의 행위 각각은 컨텍스트(context)에 대응되는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  5. 제4 항에 있어서,
    상기 탐지 대상 데이터는 상기 탐지 대상 행위를 기초로 생성된 타깃 컨텍스트 벡터(target context vector) 및 타깃 암(target arm)의 번호 정보를 포함하고,
    상기 예측 값을 산출하는 단계는,
    상기 타깃 암의 기대 리워드(expected reward)을 상기 예측 값으로 산출하는 단계를 포함하고,
    상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계는,
    상기 예측 값의 LCB가 기 설정된 임계 값 이하인지 여부를 판정하는 단계; 및
    상기 임계 값 이하라는 판정에 응답하여, 상기 탐지 대상 행위를 이상 행위로 판정하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  6. 제4 항에 있어서,
    상기 탐지 대상 데이터는 상기 탐지 대상 행위를 기초로 생성된 타깃 컨텍스트 벡터(target context vector) 및 타깃 암(target arm)의 번호 정보를 포함하고,
    상기 예측 값을 산출하는 단계는,
    상기 타깃 암의 기대 리워드(expected reward)을 상기 예측 값으로 산출하는 단계를 포함하고,
    상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계는,
    상기 복수의 행위에 대응되는 암 각각에 대한 LCB를 산출하는 단계; 및
    상기 예측 값의 LCB를 가리키는 상기 타깃 암의 LCB와 나머지 암의 LCB의 비교 결과에 기초하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  7. 제1 항에 있어서,
    상기 타깃 객체의 행위는 타깃 파일을 대상으로 하는 사용자의 파일 사용 행위이고,
    상기 제1 학습 데이터는 상기 파일 사용 행위에 대한 실제 관측 데이터를 기초로 생성된 컨텍스트 벡터(context vector)를 포함하되,
    상기 실제 관측 데이터는 상기 파일의 속성 정보, 상기 사용자의 속성 정보, 상기 파일 사용 행위의 종류 및 상기 파일의 접근 경로 중 적어도 하나를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  8. 제7 항에 있어서,
    상기 이상 행위 탐지 모델은 CMAB(contextual multi-armed bandit) 기반의 강화 학습을 통해 구축된 모델이고,
    상기 학습 데이터를 획득하는 단계는,
    상기 타깃 파일에 대응되는 암(arm)의 번호를 결정하는 단계; 및
    상기 컨텍스트 벡터 및 상기 암의 번호를 기초로 상기 제1 학습 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  9. 제8 항에 있어서,
    상기 암의 번호를 결정하는 단계는,
    상기 타깃 파일에 대응되는 암이 존재하는지 여부를 판정하는 단계;
    상기 대응되는 암이 존재하지 않는다는 판정에 응답하여, 신규 암을 생성하는 단계; 및
    상기 신규 암의 번호를 상기 타깃 파일에 대응되는 암의 번호로 결정하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  10. 제8 항에 있어서,
    상기 암은,
    복수의 파일이 포함된 파일 그룹에 대응되고,
    상기 파일 그룹은,
    파일의 속성 정보 중 파일 이름 정보를 기초로 그룹핑된 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  11. 제8 항에 있어서,
    상기 암은,
    복수의 파일이 포함된 파일 그룹에 대응되고,
    상기 파일 그룹은,
    파일에 포함된 키워드의 유사도를 기초로 그룹핑된 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  12. 제1 항에 있어서,
    상기 타깃 객체의 행위는 파일을 대상으로 하는 사용자의 파일 사용 행위이고,
    상기 이상 행위 탐지 모델은 CMAB(contextual multi-armed bandit) 기반의 강화 학습을 통해 구축된 모델이며,
    상기 학습 데이터를 획득하는 단계는,
    상기 파일 사용 행위에 대한 실제 관측 데이터를 기초로 상기 제1 학습 데이터를 생성하는 단계; 및
    상기 제1 학습 데이터를 구성하는 적어도 하나의 데이터 요소의 값을 변경하여 상기 제2 학습 데이터를 생성하는 단계를 포함하되,
    상기 제1 학습 데이터에 부여된 학습 값은 지정된 범위에서의 최대 값이고,
    상기 제2 학습 데이터에 부여된 학습 값은 상기 지정된 범위에서의 최소 값인 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  13. 제12 항에 있어서,
    상기 제1 학습 데이터는,
    상기 파일 사용 행위에 대한 실제 관측 데이터를 기초로 생성된 컨텍스트 벡터 및 상기 파일 사용 행위의 타깃 파일을 기초로 결정된 암(arm)의 번호를 포함하되,
    상기 변경되는 적어도 하나의 데이터 요소는,
    상가 컨텍스트 벡터를 구성하는 각 벡터 요소 및 상기 결정된 암의 번호를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  14. 제1 항에 있어서,
    상기 타깃 객체의 행위는 파일을 대상으로 하는 사용자의 파일 사용 행위이고,
    상기 이상 행위 탐지 모델은 CMAB(contextual multi-armed bandit) 기반의 강화 학습을 통해 구축된 모델이며,
    상기 학습 데이터는 상기 파일 사용 행위를 포함하는 컨텍스트에 대응되는 컨텍스트 벡터(context vector) 및 상기 파일에 대응되는 암의 번호 정보를 포함하고,
    상기 이상 행위 탐지 모델을 구축하는 단계는,
    상기 학습 데이터 각각에 부여된 학습 값을 상기 컨텍스트에서 상기 암의 리워드로 하는 강화 학습을 수행하여 상기 이상 행위 탐지 모델을 구축하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  15. 제14 항에 있어서,
    상기 탐지 대상 데이터는 상기 탐지 대상 행위를 기초로 생성된 타깃 컨텍스트 벡터 및 타깃 파일의 정보를 포함하고,
    상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계는,
    상기 타깃 파일에 대응되는 타깃 암이 존재하는지 여부를 판정하는 단계;
    상기 타깃 암이 존재한다는 판정에 응답하여, 상기 타깃 암에 대한 예측 값의 LCB를 이용하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계; 및
    상기 타깃 암이 존재하지 않는다는 판정에 응답하여, 상기 탐지 대상 행위를 이상 행위로 판정하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  16. 제14 항에 있어서,
    상기 탐지 대상 데이터는 상기 탐지 대상 행위를 기초로 생성된 타깃 컨텍스트 벡터 및 타깃 암의 정보를 포함하고,
    상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계는,
    상기 타깃 암에 대한 예측 값의 LCB와 기 설정된 상기 타깃 암의 임계 값과의 비교 결과에 기초하여, 상기 탐지 대상 행위가 이상 행위인지 여부를 판정하는 단계를 포함하되,
    상기 이상 행위 탐지 모델을 구성하는 복수의 암 중에서 제1 암에 제1 임계 값이 설정되고, 제2 암에 제2 임계 값이 설정되며,
    상기 제1 임계 값은 상기 제1 암에 대응되는 파일의 중요도에 기초하여 결정되는 값이고,
    상기 제2 임계 값은 상기 제2 암에 대응되는 파일의 중요도에 기초하여 결정되는 값이며,
    상기 제1 임계 값과 상기 제2 임계 값은 서로 다른 값으로 결정되는 것을 특징으로 하는,
    기계 학습 기반의 이상 행위 탐지 방법.
  17. 기계 학습 장치에 의해 수행되는 기계 학습 방법에 있어서,
    타깃 환경(target environment)의 실제 관측 데이터를 기초로 제1 학습 데이터를 생성하되, 상기 제1 학습 데이터는 적어도 하나의 데이터 요소로 구성되는 것인, 단계;
    상기 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여, 제2 학습 데이터를 생성하는 단계; 및
    상기 제1 학습 데이터 및 상기 제2 학습 데이터를 기초로 기계 학습을 수행하여, 타깃 모델(target model)을 구축하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 방법.
  18. 제17 항에 있어서,
    상기 제1 학습 데이터를 생성하는 단계는,
    상기 제1 학습 데이터에 제1 클래스 레이블(class label)을 부여하는 단계를 포함하고,
    상기 제2 학습 데이터를 생성하는 단계는,
    상기 제1 학습 데이터에 제2 클래스 레이블을 부여하는 단계를 포함하되,
    상기 제2 클래스 레이블은 상기 제1 클래스 레이블과 다른 클래스를 가리키고,
    상기 타깃 모델은 지도 학습(supervised learning) 기반의 기계 학습을 통해 구축된 모델인 것을 특징으로 하는,
    기계 학습 방법.
  19. 제17 항에 있어서,
    상기 제1 학습 데이터를 생성하는 단계는,
    상기 제1 학습 데이터에 제1 리워드(reward)를 부여하는 단계를 포함하고,
    상기 제2 학습 데이터를 생성하는 단계는,
    상기 제1 학습 데이터에 제2 리워드를 부여하는 단계를 포함하되,
    상기 제2 리워드는 상기 제1 리워드와 다른 값을 갖고,
    상기 타깃 모델은 강화 학습(reinforcement learning) 기반의 기계 학습을 통해 구축된 모델인 것을 특징으로 하는,
    기계 학습 방법.
  20. 제19 항에 있어서,
    상기 제1 리워드는 지정된 범위에서 최대 값을 갖는 리워드이고,
    상기 제2 리워드는 상기 지정된 범위에서 최소 값을 갖는 리워드인 것을 특징으로 하는,
    기계 학습 방법.
  21. 제19 항에 있어서,
    상기 제1 학습 데이터는 제1 실제 관측 데이터를 기초로 생성된 제1-1 학습 데이터와 상기 제1 실제 관측 데이터와 다른 제2 실제 관측 데이터를 기초로 생성된 제1-2 학습 데이터를 포함하되,
    상기 제1 리워드를 부여하는 단계는,
    상기 제1 실제 관측 데이터의 발생 빈도를 기초로 제1-1 학습 데이터에 제1-1 리워드를 부여하는 단계; 및
    상기 제2 실제 관측 데이터의 발생 빈도를 기초로 제1-2 학습 데이터에 제1-2 리워드를 부여하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 방법.
  22. 제19 항에 있어서,
    상기 타깃 모델은 MAB(multi-armed bandit) 기반의 기계 학습을 통해 구축된 모델이고,
    상기 제2 학습 데이터를 생성하는 단계는,
    상기 제1 학습 데이터를 구성하는 데이터 요소 중 암(arm)의 번호를 랜덤하게 변경하여, 상기 제2 학습 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 방법.
  23. 제19 항에 있어서,
    상기 타깃 모델은 CMAB(contextual multi-armed bandit) 기반의 기계 학습을 통해 구축된 모델이고,
    상기 제2 학습 데이터를 생성하는 단계는,
    상기 제1 학습 데이터에 포함된 컨텍스트의 구성 요소 또는 상기 제1 학습 데이터에 포함된 암(arm)의 번호 중 적어도 하나를 랜덤하게 변경하여, 상기 제2 학습 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 방법.
  24. 제19 항에 있어서,
    상기 타깃 모델은 CMAB(contextual multi-armed bandit) 기반의 기계 학습을 통해 구축된 모델이고,
    상기 제2 학습 데이터를 생성하는 단계는,
    암의 번호 별로, 기 생성된 학습 데이터의 개수를 산출하는 단계;
    상기 산출된 개수가 임계 값 이하인 암의 번호를 결정하는 단계;
    상기 제1 학습 데이터에 포함된 암의 번호를 상기 결정된 암의 번호로 변경하여, 제3 학습 데이터를 생성하는 단계; 및
    상기 제3 학습 데이터에 포함된 컨텍스트의 구성 요소 중 적어도 하나를 랜덤하게 변경하여, 상기 제2 학습 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 방법.
  25. 제17 항에 있어서,
    상기 제2 학습 데이터를 생성하는 단계는,
    상기 적어도 하나의 데이터 요소의 값을 랜덤(random)하게 변경하여, 후보 학습 데이터를 생성하는 단계;
    기 생성된 제1 학습 데이터 중에서, 상기 후보 학습 데이터와 매칭되는 데이터가 존재하는지 여부를 판정하는 단계; 및
    상기 매칭되는 데이터가 존재하지 않는다는 판정에 응답하여, 상기 후보 학습 데이터를 상기 제2 학습 데이터로 지정하는 단계를 포함하는 것을 특징으로 하는,
    기계 학습 방법.
KR1020170142455A 2017-10-30 2017-10-30 기계 학습 기반의 이상 행위 탐지 방법 및 그 장치 KR102348536B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170142455A KR102348536B1 (ko) 2017-10-30 2017-10-30 기계 학습 기반의 이상 행위 탐지 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170142455A KR102348536B1 (ko) 2017-10-30 2017-10-30 기계 학습 기반의 이상 행위 탐지 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20190048004A true KR20190048004A (ko) 2019-05-09
KR102348536B1 KR102348536B1 (ko) 2022-01-06

Family

ID=66545861

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170142455A KR102348536B1 (ko) 2017-10-30 2017-10-30 기계 학습 기반의 이상 행위 탐지 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102348536B1 (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102105276B1 (ko) * 2019-11-29 2020-04-29 주식회사 애자일소다 강화학습 기반의 결제 분류시스템 및 방법
WO2021070189A1 (en) * 2019-10-07 2021-04-15 Telefonaktiebolaget Lm Ericsson (Publ) Moderator for federated learning
WO2021112344A1 (ko) * 2019-12-05 2021-06-10 포항공과대학교 산학협력단 트래픽 분류 방법 및 장치
WO2021167344A1 (ko) * 2020-02-19 2021-08-26 사회복지법인 삼성생명공익재단 기록된 데이터에서 인과성을 식별하는 강화학습 방법, 장치 및 프로그램
KR102359090B1 (ko) * 2021-05-27 2022-02-08 주식회사 아미크 실시간 기업정보시스템 이상행위 탐지 서비스를 제공하는 방법과 시스템
KR102433831B1 (ko) * 2021-11-17 2022-08-18 한국인터넷진흥원 보안관제 의사결정 지원 시스템 및 방법
CN117172303A (zh) * 2023-10-23 2023-12-05 华中科技大学 针对连续动作空间下深度强化学习的黑盒攻击方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040008375A (ko) 2002-07-18 2004-01-31 광주과학기술원 비정상행위 공통 특징을 이용한 침입탐지방법 및 기록매체
JP2006309485A (ja) * 2005-04-28 2006-11-09 Nec Corp 能動学習方法および能動学習システム
JP2016133895A (ja) * 2015-01-16 2016-07-25 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
KR101743269B1 (ko) * 2016-01-13 2017-06-05 주식회사 엔젠소프트 행위 정보 분석 및 사용자 행위 패턴 모델링을 통한 이상행위 탐지 방법과 그를 위한 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040008375A (ko) 2002-07-18 2004-01-31 광주과학기술원 비정상행위 공통 특징을 이용한 침입탐지방법 및 기록매체
JP2006309485A (ja) * 2005-04-28 2006-11-09 Nec Corp 能動学習方法および能動学習システム
JP2016133895A (ja) * 2015-01-16 2016-07-25 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
KR101743269B1 (ko) * 2016-01-13 2017-06-05 주식회사 엔젠소프트 행위 정보 분석 및 사용자 행위 패턴 모델링을 통한 이상행위 탐지 방법과 그를 위한 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Tobias Jung et al, "Contextual Multi-armed Bandits for Web Server Defense", Proceedings of 2012 International Joint Conference on Neural Networks(2012.06.) *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021070189A1 (en) * 2019-10-07 2021-04-15 Telefonaktiebolaget Lm Ericsson (Publ) Moderator for federated learning
KR102105276B1 (ko) * 2019-11-29 2020-04-29 주식회사 애자일소다 강화학습 기반의 결제 분류시스템 및 방법
WO2021112344A1 (ko) * 2019-12-05 2021-06-10 포항공과대학교 산학협력단 트래픽 분류 방법 및 장치
KR20210070597A (ko) * 2019-12-05 2021-06-15 포항공과대학교 산학협력단 트래픽 분류 방법 및 장치
WO2021167344A1 (ko) * 2020-02-19 2021-08-26 사회복지법인 삼성생명공익재단 기록된 데이터에서 인과성을 식별하는 강화학습 방법, 장치 및 프로그램
KR20210105724A (ko) * 2020-02-19 2021-08-27 사회복지법인 삼성생명공익재단 기록된 데이터에서 인과성을 식별하는 강화학습 방법, 장치 및 프로그램
KR102359090B1 (ko) * 2021-05-27 2022-02-08 주식회사 아미크 실시간 기업정보시스템 이상행위 탐지 서비스를 제공하는 방법과 시스템
KR102433831B1 (ko) * 2021-11-17 2022-08-18 한국인터넷진흥원 보안관제 의사결정 지원 시스템 및 방법
CN117172303A (zh) * 2023-10-23 2023-12-05 华中科技大学 针对连续动作空间下深度强化学习的黑盒攻击方法及装置
CN117172303B (zh) * 2023-10-23 2024-03-08 华中科技大学 针对连续动作空间下深度强化学习的黑盒攻击方法及装置

Also Published As

Publication number Publication date
KR102348536B1 (ko) 2022-01-06

Similar Documents

Publication Publication Date Title
KR102348536B1 (ko) 기계 학습 기반의 이상 행위 탐지 방법 및 그 장치
US10972473B2 (en) Techniques to automatically update payment information in a compute environment
JP6888109B2 (ja) インテリジェントセキュリティ管理
US9727723B1 (en) Recommendation system based approach in reducing false positives in anomaly detection
Halvaiee et al. A novel model for credit card fraud detection using Artificial Immune Systems
US20190354809A1 (en) Computational model management
US9661010B2 (en) Security log mining devices, methods, and systems
JP6971514B1 (ja) 情報処理装置、情報処理方法及びプログラム
Dhalaria et al. Comparative analysis of ensemble methods for classification of android malicious applications
CN111178687B (zh) 金融风险分类方法、装置及电子设备
Amin et al. Cyber security and beyond: Detecting malware and concept drift in AI-based sensor data streams using statistical techniques
Luckett et al. Identifying stealth malware using CPU power consumption and learning algorithms
WO2022269387A1 (en) Anomaly detection over high-dimensional space
Hilal et al. Deep learning enabled class imbalance with sand piper optimization based intrusion detection for secure cyber physical systems
Banirostam et al. Providing and evaluating a comprehensive model for detecting fraudulent electronic payment card transactions with a two-level filter based on flow processing in big data
CN117234844A (zh) 云服务器异常管理方法、装置、计算机设备及存储介质
Hegde et al. Classification framework for fraud detection using hidden markov model
Chandradeva et al. Monetary transaction fraud detection system based on machine learning strategies
US20220358572A1 (en) Device and method to provide data associated with shopping mall web page
Museba et al. An adaptive heterogeneous online learning ensemble classifier for nonstationary environments
US20230096182A1 (en) Systems and methods for predicting and identifying malicious events using event sequences for enhanced network and data security
Chauhan et al. Comparative analysis and research issues in classification techniques for intrusion detection
Kotti Industrial Automation with Safety Aspects using Machine Learning Techniques
Abinaya et al. Big Data in Real Time to Detect Anomalies
KR102465307B1 (ko) 화이트 리스트 생성 방법 및 이를 수행하는 사용자 단말, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램

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