KR102354094B1 - 머신러닝 기반 보안관제 장치 및 방법 - Google Patents

머신러닝 기반 보안관제 장치 및 방법 Download PDF

Info

Publication number
KR102354094B1
KR102354094B1 KR1020190130099A KR20190130099A KR102354094B1 KR 102354094 B1 KR102354094 B1 KR 102354094B1 KR 1020190130099 A KR1020190130099 A KR 1020190130099A KR 20190130099 A KR20190130099 A KR 20190130099A KR 102354094 B1 KR102354094 B1 KR 102354094B1
Authority
KR
South Korea
Prior art keywords
reliability
security control
control device
inference
event
Prior art date
Application number
KR1020190130099A
Other languages
English (en)
Other versions
KR20210046423A (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 KR1020190130099A priority Critical patent/KR102354094B1/ko
Publication of KR20210046423A publication Critical patent/KR20210046423A/ko
Application granted granted Critical
Publication of KR102354094B1 publication Critical patent/KR102354094B1/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
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

탐지된 사이버 보안위협에 대한 머신러닝 기반의 보안관제 장치 및 방법을 개시한다.
본 실시예는, 기존의 보안솔루션(security solutions) 및 탐지 장비(detection equipments)가 제공하는 보안위협(security threat) 탐지 이벤트(detection events)에 대하여 머신러닝(machine learning) 기반 추론 모델을 이용하여 탐지 이벤트에 대한 대응 방안을 자동으로 추론하는 것이 가능한 보안관제 장치 및 방법을 제공하는 데 목적이 있다.

Description

머신러닝 기반 보안관제 장치 및 방법{Method and Apparatus for Security Management Based on Machine Learning}
본 발명은 탐지된 사이버 보안위협 이벤트에 대한 머신러닝 기반의 자동화된 보안관제 장치 및 방법에 관한 것이다.
이하에 기술되는 내용은 단순히 본 발명과 관련되는 배경 정보만을 제공할 뿐 종래기술을 구성하는 것이 아니다.
클라우드(cloud), IoT(Internet of Things), 모바일 등 신규 IT 서비스 환경의 확대 때문에 전체적인 IT(Information Technology) 자산 (resources)이 급증하고 있다. 반면, IT 자산의 인프라(infra), 망(network), DB(Database) 등을 대상으로 사이버 보안위협(cyber security threat)이 급증하고 있다. 또한 기존 유형의 위협 발생에 더하여 신규 유형의 사이버 보안위협이 누적되어 발생하고 있다. 따라서, 보안관제(security management) 전문가의 수작업만으로 사이버 보안위협의 총량에 대응하는 것이 점차 어려워지고 있다.
한편, 악의적인 의도를 가진 해커(hackers), 크래커(crackers) 등의 사이버 공격자(cyber attackers)는 자동화 기술을 사용하거나, 대립적 학습(adversarial learning)을 기반으로 정규 사용자 행위를 모방하여 보안솔루션(security solutions) 및 탐지 장비(detection equipments)를 우회하려는 시도를 지속하고 있다. 이러한 공격자의 동향을 반영하여, 지능형 기술을 사용하여 증가하는 사이버 위협 시도에 대한 탐지 자동화 및 탐지 범위의 증대를 지속적으로 추진하고 있다. 그러나, 보안 솔루션 및 탐지장비의 기술적 진보는 다양한 위협을 보다 효율적으로 탐지하게 해 주지만, 과다 탐지(over-detection)와 오탐지(erroneous detection)의 증가라는 부작용을 보이는 것도 현실이다.
과다탐지 및 오탐지의 증가는 위협 탐지에 최종 대응하는 사이버 보안관제 및 모니터링 서비스에 악영향을 주고 있다. 탐지된 보안위협을 분석하는 최종 대응 과정은 일차적으로 숙련되고 경험 많은 보안관제 전문가의 수작업 분석을 요구한다. 자동화된 공격에 대한 보안솔루션의 탐지 이벤트 중에, 극히 소수만이 유효한 사이버 위협이고 나머지는 유효하지 않은 이벤트이기 때문에, 수작업에 의존하는 보안관제와 모니터링 업무의 효율이 저하되고 있다.
수작업에 따른 문제점에 대한 방안으로, 유효하지 않은 보안위협 탐지 이벤트를 사전에 제거하기 위해, 규칙(rule)에 의존하는 대응 기술이 고려될 수 있다. 그러나 규칙 기반 기술은 사전 제거 규칙의 생성 및 관리가 어렵기 때문에, 단순하거나 극히 자명한 데이터 제거에 한정되어 사용될 수 있을 뿐이므로, 유효하지 않은 이벤트의 사전 제거에 한계를 보인다.
수작업에 따른 문제점을 해결하기 위한, 다른 종래의 기술로서, 탐지된 이벤트에 단순 통계 방식을 적용하는 기술이 존재한다(특허문헌 1 참조). 단순 통계 기반 기술에서는, 현재의 보안위협 탐지 이벤트에 대한 단순 통계치(예컨대 빈도수)를 추출하여 이전에 누적된 통계치와 비교함으로써, 탐지 이벤트의 위협 여부에 대한 최종 판단을 결정한다. 탐지된 이벤트에 대한 수작업을 일부 대치할 수 있으나, 단순 통계 기반 기술은 탐지 이벤트가 내포한 복잡성을 고려하기 어렵고, 이 기술의 적용으로 인해 또다른 오류를 파생할 수 있다. 또한, 최종 판단의 신뢰성 저하에 기인하여 수작업 검토가 추가되어야 한다는 단점이 존재한다.
따라서, 보안위협에 대처하기 위해 탐지 이벤트에 대한 수작업의 부담을 최소화시킬 수 있는 자동 대응방법을 필요로 한다.
특허문헌 1: 대한민국 공개특허, 10-2018-0080449, "보안 이벤트의 연관 분석을 통한 사이버 침해 위협 탐지 방법 및 장치"
본 개시는, 기존의 보안솔루션(security solutions) 및 탐지 장비(detection equipments)로부터 제공되는 보안위협(security threat) 탐지 이벤트(detection events)에 대하여 머신러닝(machine learning) 기반 추론 모델을 이용하여 탐지 이벤트에 대한 대응 방안을 자동으로 추론하는 것이 가능한 보안관제 장치 및 방법을 제공하는 데 주된 목적이 있다.
본 발명의 실시예에 따르면, 보안위협(security threat)에 대한 탐지 이벤트(detection events)를 획득하는 입력부; 상기 탐지 이벤트를 입력 데이터로 변환하는 인코딩부; 적어도 하나의 추론 모델(inference models)을 포함하는 추론 모델 그룹으로부터 하나의 추론 모델을 선택하고, 상기 입력 데이터를 선택된 추론 모델에 입력하여 상기 탐지 이벤트에 대한 대응 방안을 추론하는 대응추론부; 상기 대응 방안에 대한 예측 확률에 기초하여 상기 대응 방안의 신뢰도를 산정하는 신뢰도산정부: 및 상기 산정된 신뢰도에 의존하여 상기 대응 방안을 실행하는 대응실행부를 포함하는 것을 특징으로 하는 보안관제 장치를 제공한다.
본 발명의 다른 실시예에 따르면, 보안관제 장치의 학습방법에 있어서, 보안위협(security threat)에 대한 탐지 이벤트(detection events) 및 라벨(labels)을 획득하는 과정; 상기 탐지 이벤트로부터 특징 데이터를 추출하고, 상기 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여 입력 데이터로 변환하는 과정; 상기 입력 데이터에 배깅(bagging)을 적용하여 머신러닝(machine learning)에 기반하는 적어도 하나의 추론 모델(inference models)에 대한 앙상블(ensemble) 데이터를 생성하는 과정; 상기 앙상블 데이터를 상기 추론 모델 별로 적용하여 추론 결과를 생성하는 과정; 상기 추론 모델 별로 추론 결과에 대한 신뢰도를 산정하고, 상기 신뢰도를 누적하여 누적 신뢰도를 산정하는 과정; 및 상기 추론 결과 및 상기 라벨을 기반으로 상기 추론 모델 별로 파라미터를 업데이트하는 과정을 포함하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 학습방법을 제공한다.
본 발명의 다른 실시예에 따르면, 보안관제 장치의 보안관제 방법에 있어서, 보안위협(security threat)에 대한 탐지 이벤트(detection events)를 획득하는 과정; 상기 탐지 이벤트로부터 특징 데이터를 추출하고, 상기 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여 입력 데이터로 변환하는 과정; 사전에 트레이닝된 적어도 하나의 추론 모델(inference models)을 포함하는 추론 모델 그룹으로부터 하나의 추론 모델을 선택하고, 상기 입력 데이터를 선택된 추론 모델에 입력하여 상기 탐지 이벤트에 대한 대응 방안을 추론하는 과정; 및 상기 대응 방안에 대한 신뢰도를 산정하고, 상기 신뢰도에 의존하여 상기 대응 방안을 실행하는 과정을 포함하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 보안관제 방법을 제공한다.
본 발명의 다른 실시예에 따르면, 보안관제 장치의 학습방법이 포함하는 각 단계를 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터프로그램을 제공한다.
본 발명의 다른 실시예에 따르면, 보안관제 장치의 보안관제 방법이 포함하는 각 단계를 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터프로그램을 제공한다.
이상에서 설명한 바와 같이 본 실시예에 따르면, 기존의 보안솔루션(security solutions) 및 탐지 장비(detection equipments)로부터 제공되는 보안위협 탐지 이벤트에 대하여 머신러닝(machine learning) 기반 추론 모델을 이용하여 탐지 이벤트에 대한 대응 방안을 자동으로 추론하는 것이 가능한 보안관제 장치 및 방법을 제공함으로써, 자동 분석 및 대응 방안에 대한 신뢰성을 향상시키고, 보안전문가의 수작업 분석 및 대응 과정을 최소화하는 것이 가능해지는 효과가 있다.
또한 본 실시예에 따르면, 머신러닝 기반의 자동화된 보안관제 장치 및 방법을 제공함으로써, 보안솔루션 및 탐지 장비의 기 탐지 이벤트에 대하여 과다 탐지(over-detection)와 오탐지(erroneous detection)를 사전에 판별하여 제거하는 것이 가능해지는 효과가 있다.
또한 본 실시예에 따르면, 머신러닝 기반의 자동화된 보안관제 장치 및 방법을 제공함으로써, 기존의 대응 결과의 오류를 보정하는 한편, 기존의 누적된 결과를 이용함에 있어서, 보안전문가 개개인의 역량차이에 기인하는 대응 방안의 수준 차에 따른 불확실성을 최소화하는 것이 가능해지는 효과가 있다.
도 1은 보안관제 전문가가 관여하는 종래의 보안관제 시스템에 대한 예시도이다.
도 2는 본 발명의 일 실시예에 따른 보안관제 장치에 대한 구성도이다.
도 3은 본 발명의 일 실시예에 따른 추론 모델 그룹의 학습에 대한 개념도이다.
도 4는 본 발명의 일 실시예에 따른 추론 모델의 학습에 대한 순서도이다.
도 5는 본 발명의 일 실시예에 따른 보안관제 방법에 대한 순서도이다.
이하, 본 발명의 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 실시예들의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 실시예들의 구성요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성요소를 다른 구성요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '…부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다.
본 실시예는 탐지된 사이버 보안위협(security threat)에 대한 머신러닝 기반의 자동화된 보안관제 장치 및 방법에 대한 내용을 개시한다. 보다 자세하게는, 기존의 보안솔루션(security solutions) 및 탐지 장비(detection equipments)로부터 제공되는 보안위협 탐지 이벤트(detection events, 이하 탐지 이벤트)에 대하여 머신러닝(machine learning) 기반의 추론 모델을 이용하여 탐지 이벤트에 대한 대응 방안을 자동으로 추론하는 것이 가능한 보안관제 장치 및 방법을 제공한다.
도 1은 보안관제 전문가가 관여하는 종래의 보안관제 시스템에 대한 예시도이다.
종래의 보안관제 시스템(110)에 있어서, N(N은 자연수) 개의 보호 대상 그룹은 보안위협 탐지 이벤트를 제공하는 고객이다. 각 보호 대상 그룹에서 이벤트를 생성하는 주체로는 엔드포인트(end-point) 보안 장치, 네트워크 보안 장치, 침입탐지(IDS: Instruction Detection System 및 IPS: Instruction Prevention System), 웹방화벽(web firewall)을 포함하는 보안솔루션이 될 수 있다. 각 보안솔루션에 대한 기술은 본 발명의 범위를 벗어나므로 더 이상의 자세한 설명은 생략한다.
각 보호 대상 그룹에서 생성된 탐지 이벤트는 수집, 해석 및 정제되어 대용량 빅데이터 분석 모듈(111)에 저장된다.
보안관제에 있어서, 필요 조건에 따른 검색, 통계, 시각화 방법 등을 이용하여 빅데이터 분석 모듈(111)에 저장된 이벤트가 우선적으로 분석된다. 다음 분석 결과를 기반으로 보안관제 전문가가 보안위협에 대한 수작업 분석을 실행하고, 영향도 파악, 대응 및 조치 결과를 위협 대응 이력 DB(112, Database)에 저장한다. 저장된 결과에 대한 통계 정리 후에, 최종 레포트가 작성되어 해당되는 고객 측으로 발송된다.
본 실시예에 따른 보안관제 장치(100)는, 전술한 바와 같은 탐지 이벤트에 대한 분석 및 보안관제 전문가의 수작업 분석을 대체 또는 보완하는 데 목적이 있다.
본 실시예에 따른 보안관제 장치(100)는 서버(미도시) 또는 서버에 준하는 연산 능력을 보유하는 프로그램가능 시스템에 탑재되는 것으로 가정한다. 서버는 복수의 보안솔루션(security solutions) 및 탐지 장비(detection equipments)로부터 유선 또는 무선 전송방식을 이용하여 탐지 이벤트를 획득하는 것으로 가정한다.
이하 도 2를 이용하여 본 실시예에 따른 보안관제 장치를 설명한다. 도 2는 본 발명의 일 실시예에 따른 보안관제 장치에 대한 구성도이다.
본 발명의 실시예에 있어서, 보안관제 장치(100)는 획득된 탐지 이벤트에 대하여 머신러닝(machine learning) 기반 추론 모델(inference model)을 이용하여 탐지 이벤트에 대한 대응 방안을 자동으로 추론한다. 보안관제 장치(100)는 입력부(200), 규칙기반 필터부(210), 전처리 및 인코딩부(220), 대응추론부(230), 신뢰도산정부(240), 대응실행부(250) 및 리트레이닝부(260)의 전부 또는 일부를 포함한다. 여기서, 본 실시예에 따른 보안관제 장치(100)에 포함되는 구성요소가 반드시 이에 한정되는 것은 아니다. 예컨대, 보안관제 장치(100) 상에 추론 모델의 트레이닝을 위한 트레이닝부(미도시)를 추가로 구비할 수 있다.
도 2의 도시는 본 실시예에 따른 예시적인 구성이며, 전처리 및 인코딩 방법, 추론 모델의 구조 및 동작, 신뢰도의 이용 방법 등에 따라 다른 구성요소 또는 구성요소 간의 다른 연결을 포함하는 구현이 가능하다.
본 실시예에 따른 입력부(200)는 보안솔루션(security solutions) 및/또는 탐지 장비(detection equipments)로부터 탐지 이벤트를 획득한다.
본 실시예에 따른 규칙기반 필터부(210)는 탐지 이벤트에 대한 대응 방안을 추론하기 전에, 사전에 설정된 규칙을 기반으로 필터링(filtering)을 수행한다. 규칙기반 필터부(210)는 사전에 설정된 규칙을 저장하는 규칙 DB(211) 및 대응 방안을 저장하는 대응방안 DB(212)를 포함할 수 있다.
규칙기반 필터부(210)는 규칙 DB(211)를 참조하여, 규칙 기반 필터링을 실행한다. 탐지 이벤트가 규칙에 부합하면, 규칙기반 필터부(210)는 대응방안 DB(212)를 참조하여, 탐지 이벤트에 대하여 사전 제거, 차단 또는 통보 등의 대응 방안을 실행한다. 예컨대, 블랙리스트(blacklist) IP(Internet Protocol) 주소와 같은 잘 알려진 공격 위치로부터 발생한 탐지 이벤트가 제거될 수 있다. 탐지 이벤트에 대한 대응이 실행된 경우, 보안관제 장치(100)는 탐지 이벤트에 대한 대응 방안의 추론(inference) 과정을 생략할 수 있다.
본 실시예에 따른 전처리 및 인코딩부(220)는 탐지 이벤트에 대한 보안솔루션들 간의 편차를 보완하기 위한 전처리 과정을 실행하고, 머신러닝 기반 추론 모델에 적합한 형태의 입력 데이터를 생성하는 인코딩 과정을 실행한다.
전처리 과정에서, 전처리 및 인코딩부(220)는 탐지 이벤트 내에서 공란(empty space)으로 획득된 부분을 채우고, 탐지 이벤트에 포함된 오차를 정정할 수 있다.
인코딩 과정에서, 전처리 및 인코딩부(220)는 탐지 이벤트로부터 특징 데이터를 추출하고, 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여 입력 데이터로 변환한다.
탐지 이벤트로부터 추출될 수 있는 특징 데이터는 탐지룰(detection rule)의 탐지 식별 번호(detection ID number) 및 탐지룰 이름(detection rule name), 탐지 이벤트 발생 시간 관련 정보, 위협의 대상에 대한 정보, 탐지 기반이 되는 시그니처(signature), 탐지 장비의 유형, 탐지 장비 제작사, 탐지 결과에 대한 심각도 추정 정보, 위협의 출발지 정보(예컨대 출발지 국가 또는 출발지 IP 주소 등), 위협의 목적지 정보(예컨대 목적지 국가 또는 목적지 IP 주소 등), 위협이 사용하는 서비스 및 포트 정보, 위협이 사용하는 프로토콜, 망 정보 및 패킷 정보, 패킷 부하(payload)에 포함된 내용물, URL(Uniform Resource Locator) 및 URI(Uniform Resource Identifier) 정보 등의 전부 또는 일부를 포함하되, 반드시 이에 한정되는 것은 아니며, 기타 보안위협을 표현할 수 있는 어느 정보든 추가될 수 있다.
특징 추출 과정에서는, 특징 데이터를 이용하여 처리 소요 시간 및 단위시간 당 빈도수, 유사 공격유형의 발생 수, 동일 출발지 및 동일 목적지에 대한 세션(session) 정보 등과 같은 파생 특징 데이터가 생성될 수 있다.
또한, 특징 추출 과정에서는, 특징 데이터 또는 파생 특징 데이터를 사용하여 다차원 행렬(multi-dimensional matrix)이 생성되거나, 시계열 정보를 보유한 특징 데이터 또는 파생 특징 데이터가 순차적(time-series or sequential) 변수로 변환될 수 있다.
인코딩 과정에서는, 특징 추출 과정의 결과를 기반으로 머신러닝 기반 추론 모델에 적합한 형태의 입력 데이터가 생성된다.
본 실시예에 있어서 입력 데이터는 원핫인코딩(one-hot encoding) 데이터 또는 라벨인코딩(label encoding) 데이터일 수 있다. 여기서 원핫인코딩 데이터는 전체 구성요소 중 하나만이 수치로 표시되고 나머지 구성요소는 0으로 표시되는 데이터이다. 한편, 원핫인코딩 벡터보다 차원을 줄인 라벨인코딩 데이터는 연속된 숫자로 표기되는 데이터이다.
본 발명의 다른 실시예에서, 입력 데이터는 신경회로망(neural network) 기반의 오토인코더(auto-encoder)에 의하여 생성된 데이터일 수 있다.
본 실시예에 따른 대응추론부(230)는 입력 데이터를 추론 모델에 입력하여 탐지 이벤트의 보안위협 여부 및 탐지 이벤트에 대한 대응 방안을 추론한다. 대응추론부(230)는 M(M은 자연수) 개의 추론 모델을 포함하는 추론 모델 그룹(231)을 포함한다. 대응추론부(230)는 M 개의 추론 모델 중 선택된 하나의 추론 모델을 이용하여 대응 방안을 추론한다.
선택된 추론 모델은 M 개의 추론 모델에 대한 사전 학습의 결과에 따른 누적 신뢰도가 제일 높은 모델일 수 있다. 추론 모델은 초기 학습(initial learning), 증분 학습(incremental learning), 갱신 학습(renewal learning) 등에 의존하여 다르게 선택될 수 있다. 추론 모델에 대한 학습 과정은 추후에 설명하기로 한다.
추론 결과에 따른 누적 신뢰도에 따라 다른 추론 모델이 선택될 수 있다. 누적된 추론 결과에 근거하는 추론 모델의 선정은 신뢰도산정부(240)에 대한 설명에서 기술하기로 한다.
대응추론부(230)는 대응 방안의 추론을 위하여 트레이닝부에 의하여 사전에 학습된 머신러닝(machine learning) 기반의 추론 모델을 이용한다. 추론 모델의 종류 및 추론 모델의 트레이닝 과정은 추후에 설명하기로 한다.
추론 모델의 추론 결과는 탐지 이벤트의 보안위협 여부 및 탐지 이벤트에 대한 대응 방안을 포함할 수 있다.
탐지 이벤트에 대한 대응 방안은 고객에의 통보 여부, 위협의 모호성에 따른 보안관제 전문가에 의한 재판단 요청 여부, 위협 레포팅 대상 여부, 블랙리스트 등록 여부, 위협 차단 또는 허용 여부 등의 전부 또는 일부를 포함하나, 반드시 이에 한정되는 것은 아니며, 대응 방안으로 이용될 수 있는 어느 방안이든 추가될 수 있다. 즉, 추론 모델은 복수의 대응 방안 및 그 실행 여부를 추론할 수 있다. 한편, 탐지 이벤트의 보안 위협 여부 및 해당되는 신뢰도는 대응 방안의 실행 여부를 결정하는 데 이용될 수 있다.
또한, 각각의 대응 방안에는 위협 정보 여부, 위협에 대한 사전 필터링 여부, 위협에 대한 고객에의 통보 처리 여부, 위협에 대한 블랙리스트 처리 여부, 위협에 대한 레포팅 정보, 위협에 대한 방화벽의 차단 및 거부 로그 등의 전부 또는 일부를 포함될 수 있으나, 반드시 이에 한정되는 것은 아니며, 기타 대응 방안을 표현할 수 있는 어느 정보든 추가될 수 있다.
본 실시예에 따른 신뢰도산정부(240)는 추론된 대응 방안에 대한 신뢰도를 산정한다. 신뢰도산정부(240)는 저신뢰도 이벤트 DB(241)를 포함한다.
추론 모델에 의하여 추론된 대응 방안은 예측 확률로 표현될 수 있다. 추론 모델의 출력 측은 로지스틱 함수(logistic function: 시그모이드(sigmode) 함수와 동일한 의미임)로 구현될 수 있다. 판단을 위한 임계치를 로지스틱 함수값에 적용하면, 임계치 근처에서 판단이 모호한 상황이 발생할 수 있다. 따라서 추론된 대응 방안에 대한 예측 확률을 회귀분석 기반으로 재조정하여 대응 방안의 신뢰도를 산정할 수 있다. 회귀분석을 위한 타겟 변수(target variable)는 보안관제 전문가의 재검토 결과를 반영하여 조정된 값이며, 지속적으로 업데이트될 수 있다.
전술한 바와 같이 추론된 대응 방안은 정확하게는 대응 방안에 대한 실행 여부이므로, 대응 방안의 신뢰도가 높다는 의미는, 대응 방안에 대한 실행 또는 비실행이 확정적이라는 의미이다. 반대로 신뢰도가 낮다는 의미는 대응 방안의 실행 여부가 모호하다는 의미이다.
신뢰도산정부(240)는 산정된 신뢰도를 기 설정된 임계치와 비교한다. 산정된 신뢰도가 기 설정된 임계치보다 낮은 경우, 탐지 이벤트는 저신뢰도 이벤트로 분류된다. 여기서 신뢰도가 낮다는 의미는, 탐지 이벤트의 보안 위협 여부 및 대응 방안의 실행 여부에 대한 신뢰도가 모두 임계치보다 낮다는 의미이다. 저신뢰도 이벤트는 보안관제 전문가에게 재검토가 요청된다. 이는 신뢰성이 확보되지 않은 추론 결과에 따른 자동 대응은 오히려 또다른 위험을 유발할 수 있기 때문이다.
신뢰도산정부(240)는 저신뢰도 이벤트 및 보안관제 전문가가 제공한 대응 방안 라벨을 저신뢰도 이벤트 DB(241)에 저장한다.
한편, 신뢰도산정부(240)는 산정된 신뢰도를 누적하여, 추론 모델 그룹(231)에 포함된 다른 추론 모델이 보유한 누적 신뢰도와 주기적으로 비교한다. 현재 선택된 추론 모델의 누적 신뢰도가 다른 추론 모델의 누적 신뢰도보다 낮은 경우, 보안관제 장치(100)는 더 높은 누적 신뢰도를 보유한 다른 추론 모델로 교체하여 이후의 대응 방안 추론에 교체된 모델을 이용할 수 있다.
본 실시예에 따른 대응실행부(250)는 산정된 신뢰도가 기 설정된 임계치 이상인 경우, 추론된 대응 방안을 실행한다. 여기서 신뢰도가 임계치 이상이라는 의미는, 탐지 이벤트의 보안 위협 여부 및 대응 방안의 실행 여부에 대한 신뢰도가 모두 임계치 이상이라는 의미이다. 추론된 대응 방안은 정확하게는 대응 방안에 대한 실행 여부를 의미하므로, 대응 방안을 실행한다는 의미는 대응을 하지 않는 것도 포함한다.
표 1은 대응실행부(250)가 실행하는 대응 방안에 대한 예시를 나타낸다.
Figure 112019106663253-pat00001
추론 모델은 복수의 대응 방안을 생성할 수 있으므로, 표 1에 예시된 바대로 대응실행부(250)는 복수의 대응 방안 각각을 실행할 수 있다. 예컨대, 탐지 이벤트가 보안 위협이지만, 고객에의 통보가 미실행으로 추론될 경우, 대응실행부(250)는 고객에의 통보를 생략하고, 보안 위협이 발생한 IP 주소를 블랙리스트에 등록할 수 있다.
본 실시예에 따른 리트레이닝부(260)는 저신뢰도 이벤트 DB(241)에 저장된 데이터를 이용하여 사용 중인 추론 모델에 대한 온라인 리트레이닝(online retraining)을 수행한다.
여기서, 온라인 리트레이닝은 학습용 데이터가 획득될 때마다 학습 모델에 대한 리트레이닝을 수행하는 것을 의미한다. 이와는 달리 오프라인 리트레이닝(offline retraining)은, 학습용 데이터를 누적하여 저장해 두었다가, 적절한 시점에 학습 모델에 대한 리트레이닝을 수행하는 것을 의미한다. 저장 공간의 효율적인 이용 측면에서, 온라인 트레이닝이 선호된다. 이하 특별한 언급이 없다면 리트레이닝은 온라인 리트레이닝인 것으로 가정하나, 반드시 이에 한정하는 것은 아니다.
리트레이닝부(260)는 저신뢰도 이벤트 DB(241)에 저장된 저신뢰도 이벤트 및 대응 방안 라벨을 기반으로 사용 중인 추론 모델에 대한 증분 학습(incremental learning)을 수행할 수 있다. 여기서 증분 학습은, 추가된 데이터를 이용하여 리트레이닝을 기반으로 학습 모델의 파라미터를 업데이트하는 학습 방법이다. 일반적으로 증분 학습을 이용하여 학습 모델의 추론 정확도를 높이는 것이 가능하다. 저신뢰도 이벤트는 학습 데이터를 양적으로 증대시킬 수 있는 데이터이다. 따라서, 리트레이닝부(260)에 의한 증분 학습에 기반하여 추론 모델의 추론 정확도를 높이는 것이 가능하다.
본 발명의 다른 실시예에서, 저신뢰도 이벤트 DB(241)를 기반으로 추론 모델 그룹(231)에 포함된 M 개의 추론 모델 전부에 대한 증분 학습(incremental learning)을 실행할 수 있다. M 개의 추론 모델에 대한 증분 학습의 결과에 근거하여 누적 신뢰도가 제일 높은 추론 모델을 선택하여, 이후의 추론 과정에 이용할 수 있다.
이상에서 설명한 바와 같이 본 실시예에 따르면, 기존의 보안솔루션 및 탐지 장비가 제공하는 보안위협 탐지 이벤트에 대하여, 머신러닝 기반 추론 모델을 이용하여 탐지 이벤트에 대한 대응 방안을 자동으로 추론하는 것이 가능하므로, 자동 분석 및 대응 방안에 대한 신뢰성을 향상시키고, 보안전문가의 수작업 분석 및 대응 과정을 최소화하는 것이 가능해진다.
전술한 바와 같이 본 실시예에 따른 보안관제 장치(100)는 머신러닝 기반의 추론 모델을 구비하고, 구비된 추론 모델에 대한 트레이닝 과정을 수행할 수 있다. 이러한 추론 모델은 복수의 보안솔루션 및 탐지 장비로부터 획득한 탐지 이벤트를 기반으로, 적절한 대응 방안을 추론하는 것이 가능하도록 사전에 트레이닝된 모델일 수 있다.
추론 모델 그룹(231)에 속한 추론 모델에 대한 학습은 초기 학습, 증분 학습 및 갱신 학습을 포함한다. 초기 학습은, 추론 모델을 생성하여 학습을 진행하는 것을 의미한다. 증분 학습은, 대응 방안의 추론 과정 중에, 선택된 추론 모델에 대한 온라인 학습을 수행하는 것을 의미한다. 갱신 학습은, 일정 주기마다 추론 모델 그룹에 속한 추론 모델 전부 또는 일부에 대한 누적 신뢰도를 평가하여 만족스럽지 못할 경우, 추론 모델의 전부 또는 일부의 파라미터를 리셋하고, 다시 학습을 진행하는 것을 의미한다.
리트레이닝부(260)에 대한 설명에서 증분 학습이 설명되었으므로, 이하 도 3 및 도 4을 참조하여, 추론 모델의 초기 학습 또는 갱신 학습을 위한 트레이닝 과정에 대해 설명하도록 한다.
도 3은 본 발명의 일 실시예에 따른 추론 모델 그룹의 학습에 대한 개념도이다. 도 4는 본 발명의 일 실시예에 따른 추론 모델의 학습에 대한 순서도이다. 여기서 도 4의 (a)는 추론 모델 전체의 트레이닝 과정에 대한 순서도이고, 도 4의 (b)는 부모델(sub-model)을 포함하는 임의의 추론 모델(제J 추론 모델, J는 1 이상 M 이하의 자연수)에 대한 트레이닝 과정에 대한 순서도이다.
도 3에 도시된 바와 같이 추론 모델 그룹(231)은 M 개의 추론 모델을 포함한다. 각 추론 모델은 머신러닝 기반으로 구현될 수 있으며, 더 자세하게는 의사결정 나무(decision tree)를 기반으로 배깅(bagging) 및 부스팅(boosting)을 이용하는 앙상블 모델(ensemble model), XGboost(eXtreme Gradient Boosting) 또는 Light GBM(Light Gradient Boosting Machine) 모델이 추론 모델로서 사용될 수 있다. 배깅 및 부스팅을 이용하는 추론 모델은 부모델로서 K(K는 자연수) 개의 의사결정 나무를 포함할 수 있다.
또한 SVM(Support Vector Machine) 또는 신경망을 기반으로 한 딥러닝(deep learning) 모델이 추론 모델로서 사용될 수 있다. 딥러닝 모델의 경우, 입력 데이터의 변환에 따라 CNN(Convolutional Neural Network) 또는 RNN(Recurrent Neural Network) 및 이들을 조합한 또다른 모델이 추론 모델로서 사용될 수 있다. 추론에 사용될 수 있는 머신 러닝 기반의 모델이면 그 종류에 제한은 없다.
이하 도 4의 (a)에 예시된 순서도를 참조하여, 추론 모델 전체의 트레이닝 과정에 대하여 설명한다.
트레이닝부는 학습용 탐지 이벤트 및 라벨을 획득한다(S401). 여기서 라벨은 탐지 이벤트의 보안위협 여부 및 탐지 이벤트에 대한 대응 방안의 실행 여부를 나타낸다. 대응추론부(230)에 대한 기술에서 대응 방안의 종류 및 내용이 설명되었으므로 더 이상의 설명은 생략한다.
트레이닝부는 전처리 과정을 실행한다(S402). 탐지 이벤트를 제공하는 보안솔루션들 간의 편차를 보완하기 위해 전처리 과정이 실행될 수 있다. 트레이닝부는 탐지 이벤트 내에서 공란으로 획득된 부분을 채우고, 탐지 이벤트가 포함한 오차를 정정할 수 있다.
트레이닝부는 인코딩 과정을 실행하여 입력 데이터를 생성한다(S403). 트레이닝부는 탐지 이벤트로부터 특징 데이터를 추출하고, 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여, 머신러닝 기반 추론 모델에 적합한 형태의 입력 데이터를 생성한다.
트레이닝부는 입력 데이터에 배깅을 적용하여 추론 모델 별로 앙상블 데이터를 생성한다(S404). 여기서 배깅은 학습용 탐지 이벤트 전체를 중복 가능한 M 개의 그룹으로 분할하여, 분할된 그룹을 추론 모델 별로 적용하는 방법이다.
M 개의 앙상블 데이터를 기반으로 M 개의 추론 모델은 추론 결과를 생성한다(S405).
트레이닝부는 M 개의 추론 결과에 대한 신뢰도를 산정하고, 누적하여 누적 신뢰도를 산정한다(S406).
전술한 바와 같이 라벨은 대응 방안에 대한 실행 여부이므로, 라벨을 목표로 하는 추론 결과의 신뢰도가 높다는 의미는, 대응 방안에 대한 실행 및 비실행을 확정할 수 있다는 의미이다. 반대로 신뢰도가 낮다는 의미는 대응 방안의 실행 여부가 모호하다는 의미이다.
트레이닝부는 각각의 추론 결과 및 라벨을 기반으로 M 개의 추론 모델의 파라미터를 업데이트한다(S407). 각 추론 모델의 파라미터를 업데이트할 때, 추론 모델 별 누적 신뢰도(S406 참조)를 기반으로 부스팅이 적용될 수 있다. 즉 높은 신뢰도를 보이는 추론 모델의 파라미터에 대해서는 업데이트 증분을 감소시키고, 낮은 신뢰도를 보이는 추론 모델의 파라미터에 대해서는 업데이트 증분을 증가시킬 수 있다.
추론 모델 그룹(231)에 대한 초기 학습 또는 갱신 학습이 완료되면, 트레이닝부는 누적 신뢰도를 비교하여 각 추론 모델의 신뢰도 순위를 정한다. 이후 가장 높은 순위의 추론 모델을 선택하여 보안관제 장치(100)의 대응 방안 추론에 사용할 수 있다. 선택된 추론 모델의 추론 과정에서의 누적 신뢰도 및 다른 추론 모델의 누적 신뢰도 간의 비교에 기반하여 추론 모델이 교체될 수 있다.
이하 도 4의 (b)에 예시된 순서도를 참조하여, K 개의 부모델을 포함하는 추론 모델에 대한 트레이닝 과정을 설명한다.
추론 모델에 대한 앙상블 데이터가 준비되는 과정은 도 4의 (a)의 단계(S401 내지 S403)와 동일 또는 유사하다.
트레이닝부는 입력 데이터에 배깅 방법을 적용하여 부모델 별로 앙상블 데이터를 생성한다(S411). 여기서 입력 데이터는 추론 모델에 배정된 앙상블 데이터를 의미하며, 전체 학습용 탐지 이벤트의 일부이다. 배깅은 추론 모델에 배정된 앙상블 데이터를 중복 가능한 K 개의 부그룹으로 분할하여, 분할된 부그룹을 부모델 별로 적용하는 방법이다.
K 개의 부모델은 앙상블 데이터를 기반으로 부추론(sub-inference) 결과를 생성한다(S412).
트레이닝부는 K 개의 부추론 결과에 대한 신뢰도를 산정하고 누적하여 누적 신뢰도를 산정한다(S413).
트레이닝부는 K 개의 부추론 결과에 가중치를 적용하여 가중합한 추론 결과를 생성한다(S414).
트레이닝부는 누적 신뢰도를 기반으로 부스팅을 이용하여 가중치를 업데이트한다(S415). 여기서 부스팅은, 높은 신뢰도를 보이는 부모델에 대한 가중치는 증가시키고, 낮은 신뢰도를 보이는 부모델에 대한 가중치를 감소시키는 작업이다.
추론 결과를 처리하는 과정은 도 4의 (a)의 단계(S406 및 S407)를 따른다. 여기서, 부모델을 포함하는 추론 모델에 대한 파라미터의 업데이트는 부모델의 파라미터를 업데이트하는 것을 의미한다.
부모델의 파라미터를 업데이트할 때, 부모델 별 누적 신뢰도(S413 참조)를 기반으로 부스팅이 적용될 수 있다. 즉 높은 신뢰도를 보이는 부모델에 대한 파라미터는 업데이트 증분을 감소시키고, 낮은 신뢰도를 보이는 부모델에 대한 파라미터는 업데이트 증분을 증가시킬 수 있다.
부모델을 포함하는 추론 모델에 있어서, 부모델에 부스팅이 적용될 때, 추론 모델의 누적 신뢰도가 반영될 수 있다. 즉 추론 모델의 누적 신뢰도를 기반으로 부모델의 파라미터 업데이트 증분을 전체적으로 조정할 수 있다.
도 5는 본 발명의 일 실시예에 따른 보안관제 방법에 대한 순서도이다.
보안관제 장치(100)는 보안솔루션(security solutions) 및 탐지 장비(detection equipments)로부터 탐지 이벤트를 획득한다(S501).
보안관제 장치(100)는 규칙 DB(211)를 참조하여, 규칙 기반 필터링을 실행한다(S502). 여기서 규칙 DB(211)는 사전에 설정된 규칙을 저장한다.
보안관제 장치(100)는 탐지 이벤트가 규칙을 만족하는지를 확인하여(S503), 규칙을 만족하면 대응방안 DB(212)를 이용하여 탐지 이벤트에 대응을 실행한다(S504). 여기서 대응방안 DB(212)는 각 탐지 이벤트에 대한 적절한 대응 방안을 저장하고 있다. 예컨대, 블랙리스트(blacklist) IP(Internet Protocol) 주소와 같은 잘 알려진 공격 위치로부터 발생한 탐지 이벤트가 제거될 수 있다. 탐지 이벤트에 대한 대응이 실행된 경우, 보안관제 장치(100)는 탐지 이벤트에 대한 대응 방안의 추론 과정을 생략할 수 있다.
탐지 이벤트가 규칙을 만족하지 않으면, 보안관제 장치(100)는 전처리 과정을 실행한다(S505). 전처리 과정은 탐지 이벤트를 제공하는 보안솔루션(security solution) 간의 편차를 보완하기 위해 실행된다. 전처리 과정에서, 보안관제 장치(100)는 탐지 이벤트 내에서 공란(empty space)으로 획득된 부분을 채우고, 탐지 이벤트가 포함한 오차를 정정할 수 있다.
보안관제 장치(100)는 인코딩 과정을 실행하여 입력 데이터를 생성한다(S506). 인코딩 과정에서, 보안관제 장치(100)는 탐지 이벤트로부터 특징 데이터를 추출하고, 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여, 머신러닝 기반 추론 모델에 적합한 형태의 입력 데이터를 생성한다.
보안관제 장치(100)는 입력 데이터를 선택된 추론 모델에 입력하여 대응 방안을 추론한다(S507). 보안관제 장치(100)는 추론 모델 그룹(231)이 포함하는 M 개의 추론 모델 중 하나의 추론 모델을 선택하고, 이를 이용하여 대응 방안을 추론한다.
M 개의 추론 모델에 대한 사전 학습에 따른 누적 신뢰도가 가장 큰 모델이 추론 모델로 선택될 수 있다. 추론 모델은 머신러닝(machine learning) 기반의 모델이며 사전에 학습될 수 있다.
추론 모델의 추론 결과는 탐지 이벤트의 보안위협 여부 및 탐지 이벤트에 대한 대응 방안을 포함할 수 있다. 탐지 이벤트의 보안 위협 여부 및 해당되는 신뢰도는 대응 방안의 실행 여부를 결정하는 데 이용될 수 있다.
보안관제 장치(100)는 추론된 대응 방안에 대한 신뢰도를 산정한다(S508). 신뢰도는 추론된 대응 방안에 대한 예측 확률을 회귀분석(regression analysis) 기반으로 재조정하여 산정될 수 있다.
보안관제 장치(100)는 신뢰도가 기 설정된 임계치 이상인지를 확인한다(S509).
신뢰도가 기 설정된 임계치 이상이라고 판단된 경우, 보안관제 장치(100)는 추론된 대응 방안을 실행한다(S510).
신뢰도가 기 설정된 임계치보다 낮은 경우, 보안관제 장치(100)는 탐지 이벤트를 저신뢰도 이벤트로 분류하고, 보안관제 전문가에 의한 재검토를 요청한다(S511).
보안관제 장치(100)는 보안관제 전문가에 의한 재검토 결과 저장 및 추론 모델에 대한 리트레이닝을 실행한다(S512).
보안관제 장치(100)는 저신뢰도 이벤트 및 보안관제 전문가가 제공한 대응 방안 라벨을 저신뢰도 이벤트 DB(241)에 저장한다. 보안관제 장치(100)는 저신뢰도 이벤트 DB(241)에 저장된 데이터를 이용하여 사용 중인 추론 모델에 대한 온라인 리트레이닝(online retraining)을 수행한다. 여기서, 온라인 리트레이닝은 학습용 데이터가 획득될 때마다 학습 모델에 대한 리트레이닝을 수행하는 것을 의미한다.
보안관제 장치(100)는 저신뢰도 이벤트 DB(241)에 저장된 저신뢰도 이벤트 및 대응 방안 라벨을 기반으로 사용 중인 추론 모델에 대한 증분 학습(incremental learning)을 실행할 수 있다.
이상에서 설명한 바와 같이 본 실시예에 따르면, 머신러닝 기반의 자동화된 보안관제 장치 및 방법을 제공함으로써, 보안솔루션 및 탐지 장비의 기 탐지 이벤트에 대하여 과다 탐지(over-detection)와 오탐지(erroneous detection)를 사전에 판별하여 제거하는 것이 가능해지는 효과가 있다.
또한 본 실시예에 따르면, 머신러닝 기반의 자동화된 보안관제 장치 및 방법을 제공함으로써, 기존의 대응 결과의 오류를 보정하는 한편, 기존의 누적된 결과를 이용함에 있어서, 보안전문가 개개인의 역량차이에 기인하는 대응 방안의 수준 차에 따른 불확실성을 최소화하는 것이 가능해지는 효과가 있다.
본 실시예에 따른 각 순서도에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 순서도에 기재된 과정을 변경하여 실행하거나 하나 이상의 과정을 병렬적으로 실행하는 것이 적용 가능할 것이므로, 순서도는 시계열적인 순서로 한정되는 것은 아니다.
본 명세서에 설명되는 시스템들 및 기법들의 다양한 구현예들은, 디지털 전자 회로, 집적 회로, FPGA(field programmable gate array), ASIC(application specific integrated circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현예들은 프로그래밍가능 시스템 상에서 실행가능한 하나 이상의 컴퓨터 프로그램들로 구현되는 것을 포함할 수 있다. 프로그래밍가능 시스템은, 저장 시스템, 적어도 하나의 입력 디바이스, 그리고 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 이들에게 데이터 및 명령들을 전송하도록 결합되는 적어도 하나의 프로그래밍가능 프로세서(이것은 특수 목적 프로세서일 수 있거나 혹은 범용 프로세서일 수 있음)를 포함한다. 컴퓨터 프로그램들(이것은 또한 프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 혹은 코드로서 알려져 있음)은 프로그래밍가능 프로세서에 대한 명령어들을 포함하며 "컴퓨터가 읽을 수 있는 기록매체"에 저장된다.
컴퓨터가 읽을 수 있는 기록매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체는 ROM, CD-ROM, 자기 테이프, 플로피디스크, 메모리 카드, 하드 디스크, 광자기 디스크, 스토리지 디바이스 등의 비휘발성(non-volatile) 또는 비일시적인(non-transitory) 매체일 수 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송) 및 데이터 전송 매체(data transmission medium)와 같은 일시적인(transitory) 매체를 더 포함할 수도 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다.
본 명세서에 설명되는 시스템들 및 기법들의 다양한 구현예들은, 프로그램가능 컴퓨터에 의하여 구현될 수 있다. 여기서, 컴퓨터는 프로그램가능 프로세서, 데이터 저장 시스템(휘발성 메모리, 비휘발성 메모리, 또는 다른 종류의 저장 시스템이거나 이들의 조합을 포함함) 및 적어도 한 개의 커뮤니케이션 인터페이스를 포함한다. 예컨대, 프로그램가능 컴퓨터는 서버, 네트워크 기기, 셋탑 박스, 내장형 장치, 컴퓨터 확장 모듈, 개인용 컴퓨터, 랩탑, PDA(Personal Data Assistant), 클라우드 컴퓨팅 시스템 또는 모바일 장치 중 하나일 수 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 보안관제 장치 200: 입력부
210: 규칙기반 필터부 220: 전처리 및 인코딩부
230: 대응추론부 231: 추론 모델 그룹
240: 신뢰도산정부 241: 저신뢰도 이벤트 DB
250: 대응실행부 260: 리트레이닝부

Claims (18)

  1. 보안위협(security threat)에 대한 탐지 이벤트(detection events)를 획득하는 입력부;
    상기 탐지 이벤트를 입력 데이터로 변환하는 인코딩부;
    상기 입력 데이터를 추론 모델(inference model)에 입력하여 상기 탐지 이벤트에 대한 대응 방안을 추론하는 대응추론부, 여기서, 상기 추론 모델은 추론 모델 그룹으로부터 사전에 선택되고, 상기 대응 방안은 예측 확률로서, 상기 대응 방안의 실행 여부를 나타냄;
    상기 예측 확률에 기초하여 상기 대응 방안의 신뢰도를 산정하는 신뢰도산정부: 및
    상기 산정된 신뢰도에 의존하여 상기 대응 방안을 실행하는 대응실행부
    를 포함하는 것을 특징으로 하는 보안관제 장치.
  2. 제1항에 있어서,
    규칙기반 필터부를 더 포함하되, 상기 규칙기반 필터부는 규칙 DB(Database) 및 대응방안 DB를 포함하며, 상기 규칙 DB를 참조하여, 규칙을 기반으로 상기 탐지 이벤트를 필터링하고, 상기 탐지 이벤트가 상기 규칙에 부합하면, 상기 대응 방안 DB를 참조하여 상기 탐지 이벤트에 대한 대응 방안을 실행하는 것을 특징으로 하는 보안관제 장치.
  3. 제1항에 있어서,
    상기 탐지 이벤트 내에서 공란(empty space)으로 획득된 부분을 채우고, 상기 탐지 이벤트가 포함한 오차를 정정하여 보안솔루션(security solutions)에 따른 탐지 이벤트 간의 편차를 보완하는 전처리부를 더 포함하는 것을 특징으로 하는 보안관제 장치.
  4. 제1항에 있어서,
    상기 인코딩부는,
    상기 탐지 이벤트로부터 특징 데이터를 추출하고, 상기 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여 입력 데이터로 변환하는 것을 특징으로 하는 보안관제 장치.
  5. 제1항에 있어서,
    상기 추론 모델 그룹은,
    적어도 하나 이상의 모델을 포함하고, 상기 모델 각각은 머신러닝(machine learning) 기반으로 구현되되, 상기 모델 각각은 사전에 트레이닝되는 것을 특징으로 하는 보안관제 장치.
  6. 제5항에 있어서,
    상기 추론 모델 그룹에 포함되는 모델 각각에 대한 사전 트레이닝을 종료한 후, 가장 높은 누적 신뢰도를 보유한 모델이 상기 추론 모델로 선택되되, 상기 누적 신뢰도는, 상기 사전 트레이닝에서, 상기 모델 각각이 생성하는 예측 확률에 기초하여 생성된 신뢰도를 누적함으로써, 생성되는 것을 특징으로 하는 보안관제 장치.
  7. 제1항에 있어서,
    상기 신뢰도산정부는,
    회귀분석(regression analysis)을 기반으로 상기 대응 방안에 대한 예측 확률을 재조정하여 상기 대응 방안의 신뢰도를 산정하고, 상기 신뢰도가 기 설정된 임계치보다 낮은 경우, 상기 탐지 이벤트를 저신뢰도 이벤트로 분류하고, 상기 저신뢰도 이벤트 및 해당되는 대응 방안 라벨을 저신뢰도 이벤트 DB에 저장하는 것을 특징으로 하는 보안관제 장치.
  8. 제7항에 있어서,
    상기 저신뢰도 이벤트 DB에 저장된 데이터를 기반으로, 상기 선택된 추론 모델에 대한 증분 학습(incremental learning)을 실행하는 리트레이닝부를 더 포함하는 것을 특징으로 하는 보안관제 장치.
  9. 컴퓨터 상에 구현되는, 보안관제 장치의 학습방법에 있어서,
    보안위협(security threat)에 대한 탐지 이벤트(detection events) 및 라벨(labels)을 획득하는 과정, 여기서, 상기 라벨은 상기 탐지 이벤트에 대한 대응 방안의 실행 여부임;
    상기 탐지 이벤트로부터 특징 데이터를 추출하고, 상기 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여 입력 데이터로 변환하는 과정;
    상기 입력 데이터에 배깅(bagging)을 적용하여 머신러닝(machine learning)에 기반하는 적어도 하나의 추론 모델(inference models)에 대한 앙상블(ensemble) 데이터를 생성하는 과정;
    상기 앙상블 데이터를 상기 추론 모델 별로 적용하여 추론 결과를 생성하는 과정, 여기서, 상기 추론 결과는 예측 확률로서, 상기 대응 방안의 실행 여부를 나타냄;
    상기 추론 모델 별로 상기 예측 확률에 기초하여 상기 추론 결과에 대한 신뢰도를 산정하고, 상기 신뢰도를 누적하여 누적 신뢰도를 산정하는 과정; 및
    상기 추론 결과 및 상기 라벨을 기반으로 상기 추론 모델 별로 파라미터를 업데이트하는 과정
    을 포함하는 것을 특징으로 하는 보안관제 장치의 학습방법.
  10. 제9항에 있어서,
    상기 탐지 이벤트 내에서 공란(empty space)으로 획득된 부분을 채우고, 상기 탐지 이벤트가 포함한 오차를 정정하여 보안솔루션(security solution)에 따른 탐지 이벤트 간의 편차를 보완하는 전처리 과정을 더 포함하는 것을 특징으로 하는 보안관제 장치의 학습방법.
  11. 제9항에 있어서,
    상기 앙상블 데이터를 생성하는 과정은,
    상기 입력 데이터를 상기 추론 모델과 동수의 그룹으로 중복을 허락하여 분할하는 것을 특징으로 하는 보안관제 장치의 학습방법.
  12. 제9항에 있어서,
    상기 파라미터를 업데이트하는 과정은,
    상기 누적 신뢰도에 기반하는 부스팅(boosting)을 이용하여 상기 추론 모델 각각의 파라미터를 업데이트하는 것을 특징으로 하는 보안관제 장치의 학습방법.
  13. 제9항에 있어서,
    상기 추론 모델 각각에 대한 학습을 종료한 후, 상기 추론 모델 별 누적 신뢰도를 비교하여 상기 추론 모델 각각의 순위를 정하고, 가장 높은 순위의 추론 모델을 선택하여 상기 보안관제 장치의 대응 방안 추론에 사용하는 것을 특징으로 하는 보안관제 장치의 학습방법.
  14. 컴퓨터 상에 구현되는, 보안관제 장치의 보안관제 방법에 있어서,
    보안위협(security threat)에 대한 탐지 이벤트(detection events)를 획득하는 과정;
    상기 탐지 이벤트로부터 특징 데이터를 추출하고, 상기 특징 데이터를 구성하는 문자 또는 문자열을 수치화하여 입력 데이터로 변환하는 과정;
    상기 입력 데이터를 추론 모델(inference model)에 입력하여 상기 탐지 이벤트에 대한 대응 방안을 추론하는 과정, 여기서, 상기 추론 모델은, 사전에 트레이닝된 적어도 하나의 머신 러닝(machine learning) 기반 모델을 포함하는 추론 모델 그룹으로부터 사전에 선택되고, 상기 대응 방안은 예측 확률로서, 상기 대응 방안의 실행 여부를 나타냄; 및
    상기 예측 확률에 기초하여 상기 대응 방안에 대한 신뢰도를 산정하고, 상기 신뢰도에 의존하여 상기 대응 방안을 실행하는 과정
    을 포함하는 것을 특징으로 하는 보안관제 장치의 보안관제 방법.
  15. 제14항에 있어서
    규칙 DB(Database)를 참조하여, 상기 탐지 이벤트를 규칙을 기반으로 필터링을 수행하고, 상기 탐지 이벤트가 상기 규칙에 부합하면, 대응방안 DB를 참조하여 상기 탐지 이벤트에 대한 대응 방안을 실행하는 과정; 및
    상기 탐지 이벤트 내의 비어 있는 데이터(missing data)를 채우고, 상기 탐지 이벤트가 포함한 오차를 정정하여 보안솔루션(security solution)에 따른 탐지 이벤트 간의 편차를 보완하는 전처리 과정
    을 더 포함하는 것을 특징으로 하는 보안관제 장치의 보안관제 방법.
  16. 제14항에 있어서,
    상기 신뢰도가 기 설정된 임계치보다 낮은 경우, 상기 탐지 이벤트를 저신뢰도 이벤트로 분류하고, 상기 저신뢰도 이벤트 및 해당되는 대응 방안 라벨을 저신뢰도 이벤트 DB에 저장하는 과정; 및
    상기 저신뢰도 이벤트 DB에 저장된 데이터를 기반으로, 상기 추론 모델에 대한 증분 학습(incremental learning)을 실행하는 과정
    을 더 포함하는 것을 특징으로 하는 보안관제 장치의 보안관제 방법.
  17. 제9항 내지 제13항 중 어느 한 항에 따른 보안관제 장치의 학습방법이 포함하는 각 단계를 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터프로그램.
  18. 제14항 내지 제16항 중 어느 한 항에 따른 보안관제 장치의 보안관제 방법이 포함하는 각 단계를 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터프로그램.
KR1020190130099A 2019-10-18 2019-10-18 머신러닝 기반 보안관제 장치 및 방법 KR102354094B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190130099A KR102354094B1 (ko) 2019-10-18 2019-10-18 머신러닝 기반 보안관제 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190130099A KR102354094B1 (ko) 2019-10-18 2019-10-18 머신러닝 기반 보안관제 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20210046423A KR20210046423A (ko) 2021-04-28
KR102354094B1 true KR102354094B1 (ko) 2022-01-20

Family

ID=75721003

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190130099A KR102354094B1 (ko) 2019-10-18 2019-10-18 머신러닝 기반 보안관제 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102354094B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102374127B1 (ko) 2021-12-06 2022-03-14 주식회사 이글루시큐리티 인공지능 기반 웹방화벽 모델링 방법 및 장치
KR20240003616A (ko) * 2022-07-01 2024-01-09 주식회사 안랩 행위 스캔 서비스 시스템 및 행위 스캔 서비스의 제공 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018077597A (ja) * 2016-11-08 2018-05-17 株式会社日立製作所 セキュリティ対策立案支援システムおよび方法
KR101951208B1 (ko) * 2018-09-28 2019-02-25 주식회사 루터스시스템 방화벽에이전트를 이용해 네트워크 트래픽을 감시하는 방화벽 시스템

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102047782B1 (ko) 2017-01-04 2019-11-22 한국전자통신연구원 보안 이벤트의 연관 분석을 통한 사이버 침해 위협 탐지 방법 및 장치
KR102100204B1 (ko) * 2017-10-31 2020-04-13 삼성에스디에스 주식회사 기계 학습 기반의 분류 방법 및 그 장치
KR102221492B1 (ko) * 2017-12-13 2021-03-02 주식회사 마이더스에이아이 텍스트 마이닝 기반 보안 이벤트 자동 검증 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018077597A (ja) * 2016-11-08 2018-05-17 株式会社日立製作所 セキュリティ対策立案支援システムおよび方法
KR101951208B1 (ko) * 2018-09-28 2019-02-25 주식회사 루터스시스템 방화벽에이전트를 이용해 네트워크 트래픽을 감시하는 방화벽 시스템

Also Published As

Publication number Publication date
KR20210046423A (ko) 2021-04-28

Similar Documents

Publication Publication Date Title
US10785241B2 (en) URL attack detection method and apparatus, and electronic device
RU2758041C2 (ru) Постоянное обучение для обнаружения вторжения
US11425148B2 (en) Identifying malicious network devices
US11218448B2 (en) Aggregating alerts of malicious events for computer security
US20190065738A1 (en) Detecting anomalous entities
US20160226893A1 (en) Methods for optimizing an automated determination in real-time of a risk rating of cyber-attack and devices thereof
CN107241296B (zh) 一种Webshell的检测方法及装置
CN112242984B (zh) 检测异常网络请求的方法、电子设备和计算机程序产品
CN113486334A (zh) 网络攻击预测方法、装置、电子设备及存储介质
CN112492059A (zh) Dga域名检测模型训练方法、dga域名检测方法、装置及存储介质
KR102354094B1 (ko) 머신러닝 기반 보안관제 장치 및 방법
US9860109B2 (en) Automatic alert generation
JP2019110513A (ja) 異常検知方法、学習方法、異常検知装置、および、学習装置
US20220377000A1 (en) Systems and methods for utilizing a neural network model to perform packet capture data analysis
US11463475B1 (en) Click-to-call fraud detection
US9942255B1 (en) Method and system for detecting abusive behavior in hosted services
CN114338064B (zh) 识别网络流量类型的方法、装置、系统、设备和存储介质
US10726123B1 (en) Real-time detection and prevention of malicious activity
CN110874638B (zh) 面向行为分析的元知识联邦方法、装置、电子设备及系统
KR20190028880A (ko) 봇넷 탐지 시스템을 학습하기 위한 학습 데이터를 생성하는 방법 및 그 장치
JP6707952B2 (ja) 制御装置、制御方法及びプログラム
TWI703846B (zh) Url異常定位方法、裝置、伺服器及儲存媒體
CN109902831B (zh) 业务决策处理方法以及装置
CN115208938B (zh) 用户行为管控方法及装置、计算机可读存储介质
CN116668164B (zh) 工业防火墙安全隔离检测处理方法、系统及存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant