KR102618707B1 - 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법 - Google Patents

침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법 Download PDF

Info

Publication number
KR102618707B1
KR102618707B1 KR1020230120043A KR20230120043A KR102618707B1 KR 102618707 B1 KR102618707 B1 KR 102618707B1 KR 1020230120043 A KR1020230120043 A KR 1020230120043A KR 20230120043 A KR20230120043 A KR 20230120043A KR 102618707 B1 KR102618707 B1 KR 102618707B1
Authority
KR
South Korea
Prior art keywords
attack
information
penetration test
penetration
data
Prior art date
Application number
KR1020230120043A
Other languages
English (en)
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 KR1020230120043A priority Critical patent/KR102618707B1/ko
Application granted granted Critical
Publication of KR102618707B1 publication Critical patent/KR102618707B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법이 제공된다. 상기 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치는 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 하나 이상의 프로세서를 포함하고, 상기 하나 이상의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하고, 상기 공격 행위 정보에 상응하는 공격 메타데이터 정보를 생성하고, 상기 공격 메타데이터 정보를 상기 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하고, 상기 공격 메타데이터 정보는 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 포함할 수 있다.

Description

침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법{DEVICE AND METHOD FOR GENERATING LEARNING DATA UTILIZING PENETRATION TEST ATTACK DATA, AND LEARNING DEVICE AND METHOD FOR ARTIFICIAL NEURAL NETWORK MODEL UTILIZING THE LEARNING DATA}
본 발명은 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법에 관한 것이다.
정보통신기술(Information & Communication Technology, ICT)의 발달로 인하여 다양한 사이버보안 위협이 증가하고 있다. 따라서, 정보 시스템의 보안 문제로 인한 심각한 재정적 손실이나 인명 피해가 발생할 수 있다.
인공지능 기술을 이용하여 사이버 공격을 탐지하기 위한 기술들이 제안되고 있으나, 사이버 공격 데이터에 대한 절대적인 양이 부족한 관계로 인공지능 모델의 학습에 필요한 학습 데이터가 부족한 상황이다.
등록특허공보 제10-1639869호, 2016.07.14.
본 발명이 해결하고자 하는 과제는 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치는 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 하나 이상의 프로세서를 포함하고, 상기 하나 이상의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하고, 상기 공격 행위 정보에 상응하는 공격 메타데이터 정보를 생성하고, 상기 공격 메타데이터 정보를 상기 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하고, 상기 공격 메타데이터 정보는 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 포함한다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 침투 테스트 공격 데이터를 이용한 인공 신경망 모델 학습 장치는 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 하나 이상의 프로세서를 포함하고, 상기 하나 이상의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써 침투 테스트가 수행되는 단말 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하고, 상기 공격 행위 정보에 상응하는 공격 메타데이터 정보를 생성하고, 상기 공격 메타데이터 정보를 상기 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하고, 상기 학습 데이터를 이용하여 인공 신경망 모델을 학습시키고, 상기 공격 메타데이터 정보는 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 포함한다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 방법은 침투 테스트가 수행되는 단말 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하는 단계, 상기 공격 행위 정보에 상응하는 공격 메타데이터 정보를 생성하는 단계, 및 상기 공격 메타데이터 정보를 상기 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하는 단계를 포함하고, 상기 공격 메타데이터 정보는 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 포함한다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 침투 테스트 공격 데이터를 이용한 인공 신경망 모델 학습 방법은 침투 테스트가 수행되는 단말 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하는 단계, 상기 공격 행위 정보에 상응하는 공격 메타데이터 정보를 생성하는 단계, 상기 공격 메타데이터 정보를 상기 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하는 단계, 및 상기 학습 데이터를 이용하여 인공 신경망 모델을 학습시키는 단계를 포함하고, 상기 공격 메타데이터 정보는 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 포함한다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명은 침투 테스트의 공격 데이터를 이용하여 데이터의 교환이 용이하고 활용 가능성이 높은 표준화된 형태의 학습 데이터를 생성할 수 있다.
본 발명은 침투 테스트의 공격 데이터를 이용하여 생성된 학습 데이터를 이용하여 인공 신경망 모델의 학습을 수행함으로써, 침투 테스트의 공격 데이터를 최신화할 때마다 이를 반영하는 방식으로 인공 신경망 모델 기반 보안 제품의 최신화 업데이트도 용이할 수 있다.
본 발명은 침투 테스트를 하면서 시스템 로그를 수집함으로써, 실제 사이버 공격과 유사한 상황에서의 시스템 로그를 수집할 수 있고, 인공 신경망 모델 학습에 필요한 많은 양의 공격 데이터를 확보할 수 있다.
본 발명에 따르면, 충분한 학습 데이터를 확보할 수 있기 때문에 지도 학습 방식의 AI 보안 제품을 제공할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 인공 신경망 모델의 학습 장치를 간략하게 나타낸 도면이다.
도 2는 본 발명의 다른 실시예에 따른 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 인공 신경망 모델의 학습 장치를 간략하게 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따라, 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치에서 수행되는 학습 데이터의 생성 방법을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따라, 인공 신경망 모델의 학습 장치에서 수행되는 인공 신경망 모델의 학습 방법을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따라, 공격 메타데이터 정보의 예시를 나타낸 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 발명을 설명함에 있어서 관련된 공지 기술에 대하여 통상의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 인공 신경망 모델의 학습 장치를 간략하게 나타낸 도면이다.
도 1을 참조하면, 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치(100)는 하나 이상의 프로세서(110), 메모리(120) 및 통신부(130)를 포함할 수 있다.
프로세서(110)는 하나 이상의 코어로 구성될 수 있다. 프로세서(110)는 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치(100)의 전체적인 동작을 제어할 수 있다. 프로세서(110)는 메모리(120)에 저장된 하나 이상의 인스트럭션을 판독하여 본 개시의 일 실시예에 따른 학습 데이터를 생성할 수 있다.
메모리(120)는 프로세서(110)가 생성하거나 결정한 임의의 형태의 정보 및 통신부(130)를 통해 수신한 임의의 형태의 정보를 저장할 수 있다. 메모리(120)는 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체를 포함할 수 있다. 메모리(120)는 프로세서(110)에 의해 실행되는 하나 이상의 인스트럭션을 저장할 수 있다.
통신부(130)는 임의의 형태의 데이터, 정보 및 신호 등을 송수신할 수 있는 임의의 유무선 통신 네트워크를 포함할 수 있다.
인공 신경망 모델의 학습 장치(200)는 하나 이상의 프로세서(210), 메모리(220) 및 통신부(230)를 포함할 수 있다.
프로세서(210)는 하나 이상의 코어로 구성될 수 있다. 프로세서210)는 인공 신경망 모델의 학습 장치(200)의 전체적인 동작을 제어할 수 있다. 프로세서(210)는 메모리(220)에 저장된 하나 이상의 인스트럭션을 판독하여 학습 데이터 생성 장치(100)에서 생성된 학습 데이터를 이용하여 인공 신경망 모델을 학습시킬 수 있다.
프로세서(210)는 인공 신경망 모델의 학습을 위한 입력 데이터의 처리, 입력 데이터에서의 피쳐 추출, 오차 계산, 역전파(backpropagation)를 이용한 인공 신경망 모델의 가중치 업데이트 등의 인공 신경망 모델의 학습을 위한 계산을 수행할 수 있다.
메모리(220)는 프로세서(210)가 생성하거나 결정한 임의의 형태의 정보 및 통신부(230)를 통해 수신한 임의의 형태의 정보를 저장할 수 있다. 메모리(220)는 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체를 포함할 수 있다. 메모리(220)는 프로세서(210)에 의해 실행되는 하나 이상의 인스트럭션을 저장할 수 있다.
통신부(230)는 임의의 형태의 데이터, 정보 및 신호 등을 송수신할 수 있는 임의의 유무선 통신 네트워크를 포함할 수 있다.
네트워크(300)는 임의의 형태의 데이터 및 신호 등을 송수신할 수 있는 임의의 유무선 통신 네트워크를 포함할 수 있다. 구체적으로, 네트워크(300)는 학습 데이터 생성 장치(100)와 인공 신경망 모델의 학습 장치(200) 간에 데이터 및 신호 등을 송수신할 수 있는 유무선 통신 네트워크를 포함할 수 있다.
도 1을 통해 상술한 바와 같이, 학습 데이터 생성 장치(100)와 인공 신경망 모델의 학습 장치(200)는 각각 독립적으로 분리되어 운영될 수 있다.
도 2는 본 발명의 다른 실시예에 따른 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 인공 신경망 모델의 학습 장치를 간략하게 나타낸 도면이다.
도 2를 참조하면, 인공 신경망 모델의 학습 장치(200)는 학습 데이터 생성 장치(100)를 포함할 수 있다. 따라서, 인공 신경망 모델의 학습 장치(200)는 본 발명의 일 실시예에 따른 학습 데이터를 생성하고, 생성된 학습 데이터를 이용하여 인공 신경망 모델을 학습시킬 수 있다.
도 2를 통해 상술한 바와 같이, 인공 신경망 모델의 학습 장치(200)는 학습 데이터 생성 장치(100)를 포함할 수 있다.
다음으로, 본 발명의 일 실시예에 따라, 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치(100)의 프로세서(110)에 의해 수행되는 학습 데이터의 생성 방법을 후술하도록 한다.
도 3은 본 발명의 일 실시예에 따라, 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치에서 수행되는 학습 데이터의 생성 방법을 나타낸 도면이다. 도 3에 도시되는 단계들은 예시적인 단계들이다. 따라서, 본 개시의 사사의 범위를 벗어나지 않는 한도에서 도 3의 단계들 중 일부가 생략되거나 추가적인 단계들이 존재할 수 있다는 점 또한 당업자에게 명백할 것이다. 도 3에서 도시되는 흐름도는 예를 들어, 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치(100)에 의해 수행될 수 있다.
침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치(100)의 프로세서(110)는 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집할 수 있다(S110).
엔드포인트는 단말, 네트워크에 연결하고 네트워크를 통해 통신하는 장치를 의미할 수 있다. 예를 들어, 엔드포인트는 모바일, 데스크톱, 가상머신, 임베디드 디바이스, 서버 등 네트워크에 연결하는 모든 장치를 포함할 수 있다.
네트워크 단은 데이터 전송을 관리하고 라우팅, 패킷 전달, 논리적 주소 지정 등을 수행하는 단을 의미할 수 있다. 예를 들어, 네트워크 단은 VPN, 프록시, 전용 어플라이언스 등을 포함할 수 있다.
시스템 로그는 시스템에서 발생하는 이벤트와 활동에 관한 정보를 기록한 것일 수 있다. 예를 들어, 시스템 로그는 이벤트 및 오류 메시지, 접속 기록, 시스템 리소스 사용량, 보안 이벤트, 네트워크 활동, 시스템 상태 및 변화 등에 관한 정보를 포함할 수 있다. 일 실시예에서, 프로세서(110)는 시스템 로그에 기록된 접속 기록, 보안 이벤트 등에 관한 정보에서 침투 테스터의 공격 행위 정보를 수집할 수 있다.
프로세서(110)는 MITRE CAR(Cyber Analytics Repository)의 데이터 모델 규격 또는 ECS(Elastic Common Schema) 규격에 따라 침투 테스터의 공격 행위 정보를 정의할 수 있다.
공격 행위 정보는 특정 시스템 또는 네트워크를 침해, 공격하는 과정에서 사용되는 전략, 방법 등을 나타내는 정보일 수 있다. 공격 행위 정보는 코드 형태, 텍스트 형태 등으로 표시될 수 있고, 사전 결정된 규격(예를 들어, MITRE CAR, ECS 등)에 따라 정의될 수 있다.
MITRE CAR의 데이터 모델 규격은 특정 정보를 객체(object), 액션(action), 필드(field)로 정의하는 규격일 수 있다. 따라서, 프로세서(110)는 MITRE CAR의 데이터 모델 규격에 따라 침투 테스터의 공격 행위 정보를 객체(object), 액션(action), 필드(field)로 정의할 수 있다.
객체는 데이터가 나타내는 항목일 수 있다. 예를 들어, 객체는 호스트, 파일(file), 드라이버(driver), 이메일(email), 모듈(module) 등을 포함할 수 있다. 객체는 어휘 측면에서 명사에 대응될 수 있다.
액션은 객체의 생성, 파괴, 수정 등 객체에서 발생하는 상태 변화나 이벤트를 의미할 수 있다. 액션은 객체가 할 수 있는 일과 객체에 일어날 수 있는 일을 설명할 수 있다. 액션은 어휘 측면에서 동사에 대응될 수 있다. 액션은 2차원 테이블 형태인 커버리지 메트릭스(coverage matrix)에 표시될 수 있다. 액션은 커버리지 메트릭스에서 y축에 표시될 수 있다. 커버리지 메트릭스는 데이터 모델 또는 프레임워크 내에서 객체, 액션, 필드의 조합을 나타내는 표일 수 있다.
필드는 객체의 관찰 가능한 속성을 나타낼 수 있다. 속성은 플래그(flag), 식별자(identifier), 데이터 요소(data element), 또는 다른 객체에 대한 참조가 포함될 수 있다. 필드는 어휘 측면에서 형용사에 대응될 수 있다. 필드는 커버리지 메트릭스에서 x축에 표시될 수 있다.
ECS 규격은 공통 필드 세트, Elasticsearch 데이터 유형, Elasticsearch로 수집된 데이터에 대해 허용되는 값 및 사용 계층 구조를 정의하는 커뮤니티 기반의 오픈 소스 사양 규격일 수 있다. 따라서, 프로세서(110)는 ECS 규격에 따라 침투 테스터의 공격 행위 정보를 정의할 수 있다.
Elasticsearch는 오픈 소스 기반의 분산 검색 및 분석 엔진을 의미할 수 있다.
프로세서(110)는 공격 행위 정보에 상응하는 공격 메타데이터 정보를 생성할 수 있다(S120). 공격 메타데이터 정보는 침투 테스트 표적 시스템의 식별 정보, 침투 테스트 표적 시스템의 보안 취약점 정보, 침투 테스터의 공격 기법 정보를 포함할 수 있다.
프로세서(110)는 침투 테스트 표적 시스템의 식별 정보, 침투 테스트 표적 시스템의 보안 취약점 정보, 침투 테스터의 공격 기법 정보를 각각 정의할 수 있다.
프로세서(110)는 데이터 교환 표준 형식에 따라 침투 테스트 표적 시스템의 식별 정보, 침투 테스트 표적 시스템의 보안 취약점 정보 및 상기 침투 테스터의 공격 기법 정보를 각각 오브젝트로 포함하는 공격 메타데이터 정보를 정의할 수 있다.
데이터 교환 표준 형식은 데이터를 다른 시스템, 플랫폼 또는 언어 간에 공유하고 전달하기 위한 일반적인 규격을 의미할 수 있다. 데이터 교환 표준 형식은 XML (eXtensible Markup Language), JSON (JavaScript Object Notation) 등을 포함할 수 있다.
XML은 계층 구조로 구성된 마크업 언어로, 데이터를 텍스트 형식으로 표현할 수 있다. XML은 태그와 속성을 사용하여 데이터의 구조와 의미를 설명할 수 있다.
JSON은 경량 데이터 교환 형식으로, 데이터를 키-값 쌍의 객체나 배열로 표현할 수 있다.
프로세서(110)는 데이터 교환 표준 형식에 따라 커스텀 오브젝트 또는 커스텀 필드를 이용하여 침투 테스트에 관한 부가 정보를 정의할 수 있다. 커스텀 오브젝트는 침투 테스트에 관한 부가 정보를 입력하기 위해 생성된 오브젝트일 수 있다. 커스텀 필드는 침투 테스트에 관한 부가 정보를 입력하기 위해 생성된 필드일 수 있다.
침투 테스트에 관한 부가 정보는 데이터 교환 표준 형식에 따라 침투 테스트 표적 시스템의 식별 정보, 침투 테스트 표적 시스템의 보안 취약점 정보 및 침투 테스터의 공격 기법 정보 이외에 침투 테스트와 관련된 정보일 수 있다. 예를 들어, 침투 테스트에 관한 부가 정보는 표적 시스템에 대한 세부 정보, 침투 테스트의 성공 여부 등을 포함할 수 있다.
침투 테스트 표적 시스템의 식별 정보는 CPE(Common Platform Enumeration) 규격에 따른 CPE 식별자 및 침투 테스트 표적 시스템에 관한 설명을 포함할 수 있다. 침투 테스트 표적 시스템에 관한 설명은 CPE 식별자에 따라 분류되어 기재될 수 있다.
CPE 규격은 사전 결정된 CPE 식별자에 따라 식별 대상(예를 들어, 침투 테스트 표적 시스템 등)에 대한 정보를 분류하여 표기하는 규격일 수 있다. CPE 식별자는 구조화된 이름 지정 방식일 수 있다. CPE 식별자의 컴포넌트는 part, vendor, product, version, update, edition, language 등을 포함할 수 있다. part는 식별 대상의 종류를 나타내는 것으로, "a" (application), "o" (operating system), "h" (hardware), "g" (middleware) 등으로 표시될 수 있다. vendor는 식별 대상을 개발한 업체 또는 사람에 관한 정보를 포함할 수 있다. product는 식별 대상의 이름에 관한 정보를 포함할 수 있다. version은 식별 대상의 버전에 관한 정보를 포함할 수 있다. update는 버전의 업데이트 또는 패치 정보를 포함할 수 있다. edition은 식별 대상의 에디션 또는 릴리스 정보를 포함할 수 있다. language는 식별 대상의 지원 언어에 관한 정보를 포함할 수 있다.
침투 테스트 표적 시스템의 보안 취약점 정보는 CVE(Common Vulnerability Exposure) 규격에 따른 CVE 식별자 및 보안 취약점에 관한 설명을 포함할 수 있다. 보안 취약점에 관한 설명은 CVE 식별자에 따라 분류되어 표시될 수 있다.
보안 취약점 정보는 소프트웨어 및 일부 하드웨어 구성요소(예를 들어, 펌웨어(firmware) 등)에서 발견되는 계산 논리(computational logic)(예를 들어, 코드 등)의 요구사항, 설계 또는 구현에서의 약점이나 결함에 관한 정보일 수 있다. 보안 취약점 정보는 시스템의 기밀성, 무결성 또는 가용성에 부정적인 영향을 줄 수 있는 정보를 포함할 수 있다.
CVE 규격은 공개적으로 알려진 컴퓨터 보안 결함 목록으로, 사전 결정된 CVE 식별자에 따라 보안 취약점에 관한 설명을 분류하여 표기하는 규격일 수 있다. CVE 식별자는 보안 취약점과 관련된 연도 및 고유 넘버를 포함할 수 있다.
침투 테스터의 공격 기법 정보는 공격 전술(Tactics) 및 기법(Techniques) 분류 정보, 또는 공격 패턴 정보 중 하나 이상을 포함할 수 있다.
공격 전술 및 기법 분류 정보는 ATT&CK(Adversary Tactic, Technique and Common Knowledge) 프레임워크에 따라 ATT&CK 식별자 및 공격 기법에 관한 설명을 포함할 수 있다.
ATT&CK는 공격자의 행위 패턴과 기술을 시스템 및 네트워크 보안을 강화하기 위한 가이드로 정리한 것일 수 있다.
공격 전술은 공격자의 공격 목표에 따른 행동을 나타내는 정보를 의미할 수 있다. 예를 들어, 공격 전술은 정찰(Reconnaissance), 자원 개발(Resource Development), 초기 접근(Initial Access), 실행(Execution), 지속(Persistence), 권한 상승(Privilege Escalation), 방어 회피(Defense Evasion), 자격증명 획득(Credential Access), 발견(Discovery), 측면 이동(Lateral Movement), 수집(Collection), C2(Command and Control), 데이터유출(Exfiltaration), 영향(impact) 등을 포함할 수 있다.
정찰은 공격 대상에 대한 정보 수집 및 이해 단계로, 대상 네트워크 및 시스템을 조사하고 취약점을 찾기 위해 정보를 수집하는 것을 의미할 수 있다.
자원 개발은 공격에 사용될 도구 및 인프라를 준비하는 단계로, 공격에 필요한 악성 코드나 도구를 개발하거나 획득하는 것을 의미할 수 있다.
초기 접근은 시스템 내로 침투하는 첫 번째 단계로, 취약점을 활용하거나 사회 공학 기술을 사용하여 원격으로 시스템에 접근하는 것을 의미할 수 있다.
실행은 악성 코드나 스크립트를 실행하여 시스템 내에서 원하는 작업을 수행하는 것을 의미할 수 있다.
지속은 시스템에 장기적인 접근을 유지하기 위해 백도어나 다른 메커니즘을 설치하거나 설정하는 것을 의미할 수 있다.
권한 상승은 시스템 내에서 더 높은 권한을 얻기 위해 다양한 기술 활용하는 것을 의미할 수 있다.
방어 회피는 탐지를 회피하고 분석을 어렵게 만드는 기술을 활용하여 보안 시스템을 회피하는 것을 의미할 수 있다.
자격증명 획득은 시스템 내의 유효한 계정 정보를 획득하거나 크랙된 암호를 사용하여 인증을 우회하는 것을 의미할 수 있다.
발견은 시스템 내의 정보 및 자원을 탐색하여 공격을 계획하고 확장하는 것일 수 있다.
측면 이동은 시스템 내에서 이동하여 더 많은 호스트 또는 자원에 접근하는 것으로, 원격에서 시스템에 침투하는 공격일 수 있다.
수집은 훔친 정보나 데이터를 수집하거나 검사하기 위해 시스템 내에서 작업을 수행하는 것을 의미할 수 있다.
C2(Command & Control)는 원격 서버나 인프라를 사용하여 원격으로 시스템을 조작하고 제어하는 것을 의미할 수 있다.
데이터 유출은 탈취한 데이터를 외부로 전송하거나 유출하는 것으로, 실제 해커에게 정보를 전송할 위험이 있을 수 있다.
영향은 시스템 또는 데이터를 손상시키거나 서비스의 가용성을 저해하기 위해 작업을 수행하는 것으로, 공격의 최종 목표를 실행하는 것이므로 위험할 수 있다.
기법은 공격자가 목표에 대한 공격 전술을 달성하기 위한 기술을 나타내는 정보를 의미할 수 있다.
침투 테스터의 공격 패턴 정보는 CAPEC(Common Attack Pattern Enumeration and Classification) 프레임워크에 따라 CAPEC 식별자 및 공격 패턴에 관한 설명을 포함할 수 있다.
CAPEC는 공격자가 알려진 약점을 공격하기 위해 채택한 공격 패턴을 정의할 수 있다. 공격자는 CAPEC에서 정의된 여러 공격 패턴을 ATT&CK의 특정 공격기법을 통해 사용할 수 있다. CAPEC 식별자의 컴포넌트는 공격 패턴 분류, 공격 패턴 설명, 보안 대응 등을 포함할 수 있다. 공격 패턴 분류는 공격 패턴을 카테고리별로 분류하여 유형별로 정리한 정보를 포함할 수 있다. 공격 패턴 설명은 각 공격 패턴에 대한 설명을 포함할 수 있다. 보안 대응은 공격 패턴에 대한 대응 전략에 관한 정보를 포함할 수 있다.
공격 패턴은 공격자가 대상을 손상시키려고 시도하는 방식을 설명하는 TTP 유형일 수 있다. 공격 패턴은 공격을 분류하고, 특정 공격을 공격이 따르는 패턴으로 일반화하고, 공격 수행 방법에 대한 자세한 정보를 제공할 수 있다. 예를 들어, 공격 패턴은 스피어 피싱(spear phishing)을 포함할 수 있다. 스피어 피싱은 악성 코드를 전달하기 위해서 링크를 클릭하거나 첨부 파일을 열도록 유도하는 이메일을 공격 대상에게 보내는 유형의 공격일 수 있다.
프로세서(110)는 공격 메타데이터 정보를 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성할 수 있다(S130).
다음으로, 인공 신경망 모델의 학습 장치(200)에서 학습 데이터를 이용하여 인공 신경망 모델의 학습을 수행하는 방법을 후술하도록 한다.
도 4는 본 발명의 일 실시예에 따라, 인공 신경망 모델의 학습 장치(200)에서 수행되는 인공 신경망 모델의 학습 방법을 나타낸 도면이다. 도 4에 도시되는 단계들은 예시적인 단계들이다. 따라서, 본 개시의 사사의 범위를 벗어나지 않는 한도에서 도 4의 단계들 중 일부가 생략되거나 추가적인 단계들이 존재할 수 있다는 점 또한 당업자에게 명백할 것이다. 도 4에서 도시되는 흐름도는 예를 들어, 인공 신경망 모델의 학습 장치(200)에 의해 수행될 수 있다.도 4에서 중복되는 단계(S110 내지 S130)에 관한 설명은 앞선 도 3을 참조하여 설명된 내용으로 대체될 수 있다. 이하에서는 이전과 중복되는 내용을 생략하였다.
프로세서(210)는 학습 데이터를 이용하여 인공 신경망 모델을 학습시킬 수 있다(S140).
인공 신경망 모델은 공격 행위 정보 및 공격 메타데이터 정보를 포함하는 학습 데이터를 이용하여, 공격 행위 정보가 입력되면 그에 대한 응답으로 공격 메타 데이터 정보를 출력하도록 학습될 수 있다.
인공 신경망 모델은 일반적으로 노드(node)라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 노드들은 뉴런(neuron)들로 지칭될 수도 있다. 인공 신경망 모델은 적어도 하나 이상의 노드들을 포함하여 구성된다. 인공 신경망 모델들을 구성하는 노드(또는 뉴런)들은 하나 이상의 링크에 의해 상호 연결될 수 있다.
인공 신경망 모델 내에서, 링크를 통해 연결된 하나 이상의 노드들은 상대적으로 입력 노드 및 출력 노드의 관계를 형성할 수 있다. 입력 노드 및 출력 노드의 개념은 상대적인 것으로서, 하나의 노드에 대하여 출력 노드 관계에 있는 임의의 노드는 다른 노드와의 관계에서 입력 노드 관계에 있을 수 있으며, 그 역도 성립할 수 있다. 상술한 바와 같이, 입력 노드 대 출력 노드 관계는 링크를 중심으로 생성될 수 있다. 하나의 입력 노드에 하나 이상의 출력 노드가 링크를 통해 연결될 수 있으며, 그 역도 성립할 수 있다.
하나의 링크를 통해 연결된 입력 노드 및 출력 노드 관계에서, 출력 노드의 데이터는 입력 노드에 입력된 데이터에 기초하여 그 값이 결정될 수 있다. 여기서 입력 노드와 출력 노드를 상호 연결하는 링크는 가중치(weight)를 가질 수 있다. 가중치는 가변적일 수 있으며, 인공 신경망 모델이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변 될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 가중치에 기초하여 출력 노드 값을 결정할 수 있다.
인공 신경망 모델은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수와 동일할 수 있으며, 입력 레이어에서 히든 레이어(hidden layer, 은닉층)로 진행됨에 따라 노드의 수가 감소하다가 다시 증가하는 형태의 신경망일 수 있다. 또한, 다른 일 실시예에 따른 신경망은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수 보다 적을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하는 형태의 신경망일 수 있다. 또한, 또 다른 일 실시예에 따른 인공 신경망 모델은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수보다 많을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 증가하는 형태의 신경망일 수 있다. 또 다른 일 실시예에 따른 인공 신경망 모델은 상술한 신경망들의 조합된 형태의 신경망일 수 있다.
인공 신경망 모델에 포함되는 딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)은 입력 레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 신경망을 의미할 수 있다. 딥 뉴럴 네트워크를 이용하면 데이터의 잠재적인 구조(latent structures)를 파악할 수 있다. 딥 뉴럴 네트워크는 컨볼루션 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder) 등을 포함할 수 있다. 전술한 딥 뉴럴 네트워크의 기재는 예시일 뿐이며, 본 개시는 이에 제한되지 않는다.
인공 신경망 모델은 지도 학습(supervised learning)으로 학습될 수 있다. 인공 신경망 모델의 학습은 인공 신경망 모델이 특정한 동작을 수행하기 위한 지식을 인공 신경망 모델에 적용하는 과정일 수 있다.
인공 신경망 모델은 출력의 오류를 최소화하는 방향으로 학습될 수 있다. 인공 신경망 모델의 학습은 반복적으로 학습 데이터를 인공 신경망 모델에 입력시키고 학습 데이터에 대한 인공 신경망 모델의 출력과 타겟의 에러를 계산하고, 에러를 줄이기 위한 방향으로 인공 신경망 모델의 에러를 인공 신경망 모델의 출력 레이어에서부터 입력 레이어 방향으로 역전파(backpropagation)하여 인공 신경망 모델의 각 노드의 가중치를 업데이트 하는 과정일 수 있다. 지도 학습의 경우 각각의 학습 데이터에 정답이 라벨링되어있는 학습 데이터(예를 들어, 공격 행위 정보 및 공격 메타데이터 정보를 포함하는 학습 데이터)를 사용할 수 있다. 예를 들어, 학습 데이터는 학습 데이터 각각에 카테고리가 라벨링된 데이터일 수 있다. 라벨링된 학습 데이터가 인공 신경망 모델에 입력되고, 인공 신경망 모델의 출력과 학습 데이터의 라벨(레이블)(예를 들어, 공격 메타데이터 정보)을 비교함으로써 오류(error)가 계산될 수 있다.
인공 신경망 모델의 학습에서 학습 데이터는 실제 데이터(즉, 학습된 인공 신경망 모델을 이용하여 처리하고자 하는 데이터, 예를 들어, 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그 등)의 부분집합일 수 있다. 따라서, 학습 데이터에 대한 오류는 감소하나 실제 데이터에 대해서는 오류가 증가하는 학습 사이클이 존재할 수 있다. 과적합(overfitting)은 이와 같이 학습 데이터에 과하게 학습하여 실제 데이터에 대한 오류가 증가하는 현상이다. 예를 들어, 노란색 고양이를 보여 고양이를 학습한 인공 신경망 모델이 노란색 이외의 고양이를 보고는 고양이임을 인식하지 못하는 현상이 과적합의 일종일 수 있다. 과적합은 머신러닝 알고리즘의 오류를 증가시키는 원인으로 작용할 수 있다. 이러한 과적합을 막기 위하여 다양한 최적화 방법이 사용될 수 있다. 과적합을 막기 위해서는 학습 데이터를 증가시키거나, 레귤라리제이션(regularization), 학습의 과정에서 네트워크의 노드 일부를 비활성화하는 드롭아웃(dropout), 배치 정규화 레이어(batch normalization layer) 활용 등의 방법이 적용될 수 있다.
다음으로, 공격 행위 정보에 상응하는 공격 메타데이터 정보에 대한 설명을 후술하도록 한다.
도 5는 본 발명의 일 실시예에 따라, 공격 메타데이터 정보의 예시를 나타낸 도면이다.
도 5를 참조하면, 공격 메타데이터 정보는 이름과 설명 정보(410), 침투 테스터의 공격 기법 정보(420), 침투 테스트 표적 시스템의 식별 정보(430)와 보안 취약점 정보(440)를 포함할 수 있다.
도 5의 공격 메타데이터 정보는 침투 테스터의 공격 행위 정보가 다음과 같은 경우에 대한 예시이다.
c:/> reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v pentest /t REG_SZ /d "C:\Users\pentest\pentest_autorun.exe"
이름과 설명 정보(410)는 공격 메타데이터의 이름 및 이에 관한 설명을 포함할 수 있다. 예를 들어, 이름은 "registry autorun"일 수 있다. 그에 관한 설명은 "윈도우 레지스트리 자동 실행 속성을 악용한 악성코드 자동실행"일 수 있다.
공격 기법 정보(420)는 공격 패턴 정보(421), 공격 전술 및 기법 분류 정보(422)를 포함할 수 있다.
공격 패턴 정보(421)는 CAPEC 식별자 및 공격 패턴에 관한 설명을 포함할 수 있다. 예를 들어, CAPEC 식별자는 "capec-270"일 수 있다. 공격 패턴에 관한 설명은 "Modification of Registry Run Keys"일 수 있다.
공격 전술 및 기법 분류 정보(422)는 ATT&CK 식별자 및 공격 기법에 관한 설명을 포함할 수 있다. 예를 들어, ATT&CK 식별자는 "t1547.001"일 수 있다. 공격 기법에 관한 설명은 "Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder"일 수 있다.
침투 테스트 표적 시스템의 식별 정보(430)는 CPE 식별자 및 침투 테스트 표적 시스템에 관한 설명을 포함할 수 있다.
예를 들어, CPE 식별자는 "cpe:2.3:o:microsoft:windows_2000:*:sp4:*:*:*:*:*:*" 일 수 있다. 침투 테스트 표적 시스템에 관한 설명은 "Microsoft Windows 2000 SP4"일 수 있다.
침투 테스트 표적 시스템의 보안 취약점 정보(440)는 CWE(Common Weakness Enumeration) 규격에 따른 CWE 식별자 및 CWE에 따른 보안 취약점에 관한 설명을 포함할 수 있다. CWE에 따른 보안 취약점에 관한 설명은 CWE 식별자에 따라 분류되어 표시될 수 있다. CWE 규격은 컴퓨터 소프트웨어, 하드웨어 등에서 발생할 수 있는 취약점(weakness)을 정의하고 분류하는 표준화된 목록으로, 사전 결정된 CWE 식별자에 따라 CWE에 따른 보안 취약점에 관한 설명을 분류하여 표기하는 규격일 수 있다.
또는, 보안 취약점 정보(440)는 CWE 식별자 및 CWE에 따른 보안 취약점에 관한 설명(441)과 함께 CVE (Common Vulnerabilities and Exposures) 규격에 따른 CVE 식별자 및 CVE에 따른 보안 취약점에 관한 설명(442)을 포함할 수 있다.
예를 들어, CWE 식별자는 "cwe-15"일 수 있다. CWE에 따른 보안 취약점에 관한 설명은 "External Control of System or Configuration Setting"일 수 있다. CVE 식별자는 "CVE-2009-0243"일 수 있다. CVE에 따른 보안 취약점에 관한 설명은 "Microsoft Windows does not properly enforce the Autorun and NoDriveTypeAutoRun registry values"일 수 있다.
도 1 내지 도 5를 참조하여 상술한 바와 같이, 본 발명의 일 실시예에 따른 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치(100)는 침투 테스트의 공격 데이터를 이용하여 데이터의 교환이 용이하고 활용 가능성이 높은 표준화된 형태의 학습 데이터를 생성할 수 있다.
인공 신경망 모델의 학습 장치(200)는 침투 테스트의 공격 데이터를 이용하여 생성된 학습 데이터를 이용하여 인공 신경망 모델의 학습을 수행함으로써, 침투 테스트의 공격 데이터를 최신화할 때마다 이를 반영하는 방식으로 인공 신경망 모델 기반 보안 제품의 최신화 업데이트도 용이할 수 있다.
학습 데이터 생성 장치(100)는 침투 테스트를 하면서 시스템 로그를 수집함으로써, 실제 사이버 공격과 유사한 상황에서의 시스템 로그를 수집할 수 있고, 인공 신경망 모델 학습에 필요한 많은 양의 공격 데이터를 확보할 수 있다.
또한, 본 발명에 따르면, 충분한 학습 데이터를 확보할 수 있기 때문에 지도 학습 방식의 AI 보안 제품을 제공할 수 있다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.

Claims (10)

  1. 하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 하나 이상의 프로세서를 포함하고,
    상기 하나 이상의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써
    침투 테스트 수행 중 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하고,
    데이터 교환 표준 형식에 따라 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 각각 오브젝트로 포함하는 공격 메타데이터 정보를 생성하고,
    상기 데이터 교환 표준 형식에 따라 커스텀 오브젝트 또는 커스텀 필드를 이용하여 상기 침투 테스트에 관한 부가 정보를 정의하고,
    상기 공격 메타데이터 정보를 상기 침투 테스터의 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하고,
    상기 수집한 침투 테스터의 공격 행위 정보를 MITRE CAR(Cyber Analytics Repository)의 데이터 모델 규격 또는 ECS(Elastic Common Schema) 규격에 따라, 상기 침투 테스트 표적 시스템의 식별 정보를 CPE(Common Platform Enumeration) 규격에 따라, 상기 침투 테스트 표적 시스템의 보안 취약점 정보를 CVE(Common Vulnerability Exposure) 규격에 따라, 상기 침투 테스터의 공격 기법 정보를 ATT&CK(Adversary Tactic, Technique and Common Knowledge) 프레임워크 또는 CAPEC(Common Attack Pattern Enumeration and Classification) 프레임워크에 따라 정의하고,
    상기 침투 테스터의 공격 행위 정보 및 상기 공격 메타데이터 정보를 포함하는 상기 학습 데이터를 이용하여 지도 학습(supervised learning)으로 학습한 인공 신경망 모델은 공격 행위 정보가 입력되면 공격 메타데이터 정보를 상기 입력에 대한 응답으로 출력하도록 구성되는,
    침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치.
  2. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 CPE 규격에 따라 CPE 식별자 및 침투 테스트 표적 시스템에 관한 설명을 포함하는 상기 침투 테스트 표적 시스템의 식별 정보를 정의하는,
    침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치.
  3. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 CVE 규격에 따라 CVE 식별자 및 보안 취약점에 관한 설명을 포함하는 상기 침투 테스트 표적 시스템의 보안 취약점 정보를 정의하는,
    침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치.
  4. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 ATT&CK 프레임워크에 따라 ATT&CK 식별자 및 공격 기법에 관한 설명을 포함하는 상기 침투 테스터의 공격 전술(Tactics) 및 기법(Techniques) 분류 정보를 정의하고,
    상기 CAPEC 프레임워크에 따라 CAPEC 식별자 및 공격 패턴에 관한 설명을 포함하는 상기 침투 테스터의 공격 패턴 정보를 정의하고,
    상기 침투 테스터의 공격 기법 정보는 상기 공격 전술 및 기법 분류 정보 또는 상기 공격 패턴 정보 중 하나 이상을 포함하는,
    침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 하나 이상의 프로세서를 포함하고,
    상기 하나 이상의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써
    침투 테스트 수행 중 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하고,
    데이터 교환 표준 형식에 따라 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 각각 오브젝트로 포함하는 공격 메타데이터 정보를 생성하고,
    상기 데이터 교환 표준 형식에 따라 커스텀 오브젝트 또는 커스텀 필드를 이용하여 상기 침투 테스트에 관한 부가 정보를 정의하고,
    상기 공격 메타데이터 정보를 상기 침투 테스터의 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하고,
    상기 침투 테스터의 공격 행위 정보 및 상기 공격 메타데이터 정보를 포함하는 상기 학습 데이터를 이용하여 지도 학습(supervised learning)으로 인공 신경망 모델을 학습시키고,
    상기 수집한 침투 테스터의 공격 행위 정보를 MITRE CAR(Cyber Analytics Repository)의 데이터 모델 규격 또는 ECS(Elastic Common Schema) 규격에 따라, 상기 침투 테스트 표적 시스템의 식별 정보를 CPE(Common Platform Enumeration) 규격에 따라, 상기 침투 테스트 표적 시스템의 보안 취약점 정보를 CVE(Common Vulnerability Exposure) 규격에 따라, 상기 침투 테스터의 공격 기법 정보를 ATT&CK(Adversary Tactic, Technique and Common Knowledge) 프레임워크 또는 CAPEC(Common Attack Pattern Enumeration and Classification) 프레임워크에 따라 정의하고,
    상기 학습한 인공 신경망 모델은 공격 행위 정보가 입력되면 공격 메타데이터 정보를 상기 입력에 대한 응답으로 출력하도록 구성되는,
    침투 테스트 공격 데이터를 이용한 인공 신경망 모델 학습 장치.
  9. 학습 데이터 생성 장치에 의해서 수행되는 방법으로서,
    침투 테스트 수행 중 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하는 단계;
    데이터 교환 표준 형식에 따라 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 각각 오브젝트로 포함하는 공격 메타데이터 정보를 생성하는 단계;
    상기 데이터 교환 표준 형식에 따라 커스텀 오브젝트 또는 커스텀 필드를 이용하여 상기 침투 테스트에 관한 부가 정보를 정의하는 단계; 및
    상기 공격 메타데이터 정보를 상기 침투 테스터의 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하는 단계를 포함하고,
    상기 수집한 침투 테스터의 공격 행위 정보를 MITRE CAR(Cyber Analytics Repository)의 데이터 모델 규격 또는 ECS(Elastic Common Schema) 규격에 따라, 상기 침투 테스트 표적 시스템의 식별 정보를 CPE(Common Platform Enumeration) 규격에 따라, 상기 침투 테스트 표적 시스템의 보안 취약점 정보를 CVE(Common Vulnerability Exposure) 규격에 따라, 상기 침투 테스터의 공격 기법 정보를 ATT&CK(Adversary Tactic, Technique and Common Knowledge) 프레임워크 또는 CAPEC(Common Attack Pattern Enumeration and Classification) 프레임워크에 따라 정의하고,
    상기 침투 테스터의 공격 행위 정보 및 상기 공격 메타데이터 정보를 포함하는 상기 학습 데이터를 이용하여 지도 학습(supervised learning)으로 학습한 인공 신경망 모델은 공격 행위 정보가 입력되면 공격 메타데이터 정보를 상기 입력에 대한 응답으로 출력하도록 구성되는,
    침투 테스트 공격 데이터를 이용한 학습 데이터 생성 방법.
  10. 인공 신경망 모델 학습 장치에 의해서 수행되는 방법으로서,
    침투 테스트 수행 중 침투 테스트가 수행되는 엔드포인트 또는 네트워크 단에서 발생하는 시스템 로그에 기초하여 침투 테스터의 공격 행위 정보를 수집하는 단계;
    데이터 교환 표준 형식에 따라 침투 테스트 표적 시스템의 식별 정보, 상기 침투 테스트 표적 시스템의 보안 취약점 정보, 상기 침투 테스터의 공격 기법 정보를 각각 오브젝트로 포함하는 공격 메타데이터 정보를 생성하는 단계;
    상기 데이터 교환 표준 형식에 따라 커스텀 오브젝트 또는 커스텀 필드를 이용하여 상기 침투 테스트에 관한 부가 정보를 정의하는 단계;
    상기 공격 메타데이터 정보를 상기 침투 테스터의 공격 행위 정보에 대한 레이블로 지정하여 학습 데이터를 구성하는 단계; 및
    상기 침투 테스터의 공격 행위 정보 및 상기 공격 메타데이터 정보를 포함하는 상기 학습 데이터를 이용하여 지도 학습(supervised learning)으로 인공 신경망 모델을 학습시키는 단계를 포함하고,
    상기 수집한 침투 테스터의 공격 행위 정보를 MITRE CAR(Cyber Analytics Repository)의 데이터 모델 규격 또는 ECS(Elastic Common Schema) 규격에 따라, 상기 침투 테스트 표적 시스템의 식별 정보를 CPE(Common Platform Enumeration) 규격에 따라, 상기 침투 테스트 표적 시스템의 보안 취약점 정보를 CVE(Common Vulnerability Exposure) 규격에 따라, 상기 침투 테스터의 공격 기법 정보를 ATT&CK(Adversary Tactic, Technique and Common Knowledge) 프레임워크 또는 CAPEC(Common Attack Pattern Enumeration and Classification) 프레임워크에 따라 정의하고,
    상기 학습한 인공 신경망 모델은 공격 행위 정보가 입력되면 공격 메타데이터 정보를 상기 입력에 대한 응답으로 출력하도록 구성되는,
    침투 테스트 공격 데이터를 이용한 인공 신경망 모델 학습 방법.
KR1020230120043A 2023-09-09 2023-09-09 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법 KR102618707B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230120043A KR102618707B1 (ko) 2023-09-09 2023-09-09 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230120043A KR102618707B1 (ko) 2023-09-09 2023-09-09 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102618707B1 true KR102618707B1 (ko) 2023-12-28

Family

ID=89384857

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230120043A KR102618707B1 (ko) 2023-09-09 2023-09-09 침투 테스트 공격 데이터를 이용한 학습 데이터 생성 장치 및 방법, 및 생성된 학습 데이터를 이용한 인공 신경망 모델의 학습 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102618707B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101639869B1 (ko) 2014-08-04 2016-07-14 (주)엔토빌소프트 악성코드 유포 네트워크 탐지 프로그램
KR101850098B1 (ko) * 2017-11-21 2018-04-19 한국인터넷진흥원 취약점 정보 공유 문서 생성 방법, 그 시스템 및 장치
US20190075123A1 (en) * 2017-09-06 2019-03-07 Rank Software Inc. Systems and methods for cyber intrusion detection and prevention
KR20220094093A (ko) * 2020-12-28 2022-07-05 엑사비스 주식회사 회귀보안검사를 이용한 이상행위 학습 및 탐지 시스템 및 그 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101639869B1 (ko) 2014-08-04 2016-07-14 (주)엔토빌소프트 악성코드 유포 네트워크 탐지 프로그램
US20190075123A1 (en) * 2017-09-06 2019-03-07 Rank Software Inc. Systems and methods for cyber intrusion detection and prevention
KR101850098B1 (ko) * 2017-11-21 2018-04-19 한국인터넷진흥원 취약점 정보 공유 문서 생성 방법, 그 시스템 및 장치
KR20220094093A (ko) * 2020-12-28 2022-07-05 엑사비스 주식회사 회귀보안검사를 이용한 이상행위 학습 및 탐지 시스템 및 그 방법

Similar Documents

Publication Publication Date Title
US11683333B1 (en) Cybersecurity and threat assessment platform for computing environments
US20200410399A1 (en) Method and system for determining policies, rules, and agent characteristics, for automating agents, and protection
US11316891B2 (en) Automated real-time multi-dimensional cybersecurity threat modeling
Moustafa et al. Explainable intrusion detection for cyber defences in the internet of things: Opportunities and solutions
Burnap et al. Malware classification using self organising feature maps and machine activity data
Dalalana Bertoglio et al. Overview and open issues on penetration test
US20200186544A1 (en) Systems And Methods For Behavioral Threat Detection
US11025661B2 (en) Method for improving the security of a networked system by adjusting the configuration parameters of the system components
CN103065088B (zh) 基于计算机用户的裁决检测计算机安全威胁的系统和方法
KR20180105688A (ko) 인공 지능을 기반으로 한 컴퓨터 보안
US20230370490A1 (en) System and method for cyber exploitation path analysis and task plan optimization
US20230370491A1 (en) System and method for cyber exploitation path analysis and response using federated networks
US11973771B2 (en) System and method for security in Internet-of-Things and cyber-physical systems based on machine learning
US20200186546A1 (en) Systems And Methods For Behavioral Threat Detection
US20230291755A1 (en) Enterprise cybersecurity ai platform
US20240106847A1 (en) Methods and systems for detecting reconnaissance and infiltration in data lakes and cloud warehouses
Bayani et al. Data guardianship: Safeguarding compliance in AI/ML cloud ecosystems
Rubio et al. Tracking advanced persistent threats in critical infrastructures through opinion dynamics
Gianvecchio et al. Closing the gap with APTs through semantic clusters and automated cybergames
WO2024059292A1 (en) An automated sandbox generator for a cyber-attack exercise on a mimic network in a cloud environment
Wei et al. Toward identifying APT malware through API system calls
Cao et al. Learning state machines to monitor and detect anomalies on a kubernetes cluster
Vyas et al. Automated cyber defence: A review
US11777979B2 (en) System and method to perform automated red teaming in an organizational network
Baiardi et al. Twin based continuous patching to minimize cyber risk

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