KR101631242B1 - 잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치 - Google Patents

잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치 Download PDF

Info

Publication number
KR101631242B1
KR101631242B1 KR1020150012590A KR20150012590A KR101631242B1 KR 101631242 B1 KR101631242 B1 KR 101631242B1 KR 1020150012590 A KR1020150012590 A KR 1020150012590A KR 20150012590 A KR20150012590 A KR 20150012590A KR 101631242 B1 KR101631242 B1 KR 101631242B1
Authority
KR
South Korea
Prior art keywords
network flow
malicious
signature
malicious traffic
network
Prior art date
Application number
KR1020150012590A
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 KR1020150012590A priority Critical patent/KR101631242B1/ko
Priority to US14/847,171 priority patent/US20160219068A1/en
Priority to EP15184475.0A priority patent/EP3051767A1/en
Application granted granted Critical
Publication of KR101631242B1 publication Critical patent/KR101631242B1/ko

Links

Images

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/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/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Abstract

잠재 디리클레 할당을 이용하는 악성 트래픽 시그니처의 자동화된 식별 방법 및 장치가 개시된다. 시그니처 식별 장치는 입력 데이터를 가공하여 적어도 하나의 네트워크 플로우를 생성하고, 적어도 하나의 네트워크 플로우에 대하여 잠재 디리클레 할당을 적용함으로서 탐지 규칙의 시그니처를 생성한다. 시그니처 식별 장치는 클러스터링에 의해 분류된 네트워크 트래픽에 대하여, 클러스터 별 키워드의 분포 정보를 이용하여 악성 트래픽의 시그니처를 자동으로 식별한다.

Description

잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치{METHOD AND APPARATUS FOR AUTOMATED IDENTIFICATION OF SIFNATURE OF MALICIOUS TRAFFIC SIGNATURE USING LATENT DIRICHLET ALLOCATION}
아래의 실시예들은 악성 트래픽 시그니처의 식별에 관한 것으로, 보다 상세하게는 잠재 디리클레 할당을 이용하는 악성 트래픽 시그니처의 자동화된 식별 방법 및 장치가 개시된다.
인터넷은 일반인이 일상 생활에서 쉽게 접할 수 있는 거대한 정보의 공간이 되었고, 인터넷을 통해 다양한 정보 서비스들이 시간적 제약 및 공간적 제약을 극복한 형태로 제공된다. 이러한 정보 서비스들에 의해, 초연결사회의 서막이 오르고 있다.
한편, 다양한 인터넷 기술들 및 어플리케이션들이 등장함에 따라, 인터넷 기술들 및 어플리케이션들에 의한 역기능들도 함께 증가하고 있다. 이러한 역기능 중 하나가 악성 트래픽에 의한 침입(intrusion)이다.
대중적으로 사용되는 정보 보호 시스템으로서 침입 탐지 방지 시스템이 있다. 침입 탐지ㅇ방지 시스템은 탐지 규칙을 사용하여 악성 트래픽의 페이로드(payload)에 포함된 특정한 비트 패턴을 탐지하는 방법을 통하여 각종의 인터넷 웜(worm), 악성 코드(malicious code) 및 서비스 거부 공격(Denial of Service; DoS)등에 대응한다.
그러나, 비트 패턴을 탐지하는 방법은 미리 알려진 트래픽 패턴에 대해서만 동작할 수 있다는 문제점을 갖는다.
또한, 최근의 악성 코드 혹은 악성 트래픽은 탐지를 회피하기 위한 전략으로서, 다형성(polymorphism)을 채택하고 있다. 다형성은 악성 코드 또는 악성 트래픽이 자가 복제(self replica)를 생성할 때 자신의 시그니처 패턴을 변형시키는 것을 의미할 수 있다.
악성 코드 혹은 악성 트래픽이 다형성을 채택할 때, 비트 패턴 탐지 방법은 의도적으로 변형된 악성 코드 또는 악성 트래픽을 탐지할 수 없다. 다형성에 대한 대응을 위해서는, 보안 전문가가 직접 악성 코드 또는 악성 트래픽을 수집하고 분석하고, 분석의 결과에 일일이 탐지 규칙을 생성해야 한다.
전술된 것과 같이, 탐지 규칙을 사용하는 기존의 기술로서, 한국공개특허 제10-2006-0007581호 및 한국등록특허 제10-0628329호 등이 있다. 그러나, 이러한 기존의 기술은 악성 코드 및 악성 트래픽의 다형성에 대응할 수 없으며, 보안 전문가의 분석을 통해 새로운 탐지 규칙이 작성되어야 한다는 한계를 보인다.
일 실시예는, 잠재 디리클레 할당 방법을 이용하여 악성 코드 또는 악성 트래픽을 내포한 네트워크 트래픽에 대한 클러스터링을 수행하는 방법 및 장치를 제공할 수 있다.
일 실시예는, 클러스터링에 의해 분류된 네트워크 트래픽에 대하여, 클러스터 별 키워드의 분포 정보를 이용하여 악성 트래픽의 시그니처를 자동으로 식별하는 방법 및 장치를 제공할 수 있다.
일 실시예는, 침입 탐지 시스템이 미리 알려지지 않은 악성 코드 또는 악성 트래픽을 높은 탐지율로 탐지할 수 있게 하는 탐지 규칙의 시그니처를 식별하는 방법 및 장치를 제공할 수 있다.
일 실시예는, 침입 탐지 시스템이 다형성을 내재적 특성으로 갖는 악성 코드 또는 악성 트래픽을 높은 탐지율로 탐지할 수 있게 하는 탐지 규칙의 시그니처를 식별하는 방법 및 장치를 제공할 수 있다.
일 실시예는, 침입 탐지 시스템을 운용하는 보안 전문가가 침입 탐지 시스템에서 사용할 탐지 규칙을 생성함에 있어서, 악성 코드 혹은 악성 트래픽에 대한 통계적 분석 및 시그니처 추출을 자동으로 수행하는 방법 및 장치를 제공할 수 있다.
일 측에 있어서, 입력 데이터를 가공하여 적어도 하나의 네트워크 플로우를 생성하는 단계; 및 상기 적어도 하나의 네트워크 플로우에 대하여 잠재 디리클레 할당을 적용함으로서 탐지 규칙의 시그니처를 생성하는 단계를 포함하는 시그니처 식별 방법이 제공된다.
상기 시그니처 식별 방법은, 상기 입력 데이터를 수신하는 단계를 더 포함할 수 있다.
상기 입력 데이터는 악성 코드 데이터 및 악성 트래픽 데이터 중 적어도 하나를 포함할 수 있다.
상기 적어도 하나의 네트워크 플로우를 생성하는 단계는, 상기 입력 데이터를 상기 적어도 하나의 네트워크 플로우로 분할하는 단계를 포함할 수 있다.
상기 적어도 하나의 네트워크 플로우를 생성하는 단계는, 상기 적어도 하나의 네트워크 플로우에서 적어도 하나의 부분 문자열을 추출하는 단계; 및 상기 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서의 상기 적어도 하나의 부분 문자열의 발견 빈도를 계산하는 단계를 포함할 수 있다.
상기 적어도 하나의 부분 문자열은 상기 적어도 하나의 네트워크 플로우에서 발견되는 모든 부분 문자열일 수 있다.
상기 탐지 규칙의 시그니처를 생성하는 단계는, 상기 적어도 하나의 네트워크 플로우를 클러스터로 분류하는 단계; 상기 클러스터로 분류된 적어도 하나의 네트워크 플로우에서 소정의 조건을 충족시키는 부분 문자열을 추출하는 단계; 및 상기 추출된 부분 문자열을 상기 클러스터로 분류된 상기 적어도 하나의 네트워크 플로우를 탐지하는 상기 탐지 규칙의 시그니처로 설정하는 단계를 포함할 수 있다.
상기 적어도 하나의 네트워크 플로우는 학습된 잠재 디리클레 할당의 할당 모델을 사용하여 상기 클러스터로 분류될 수 있다.
상기 탐지 규칙의 시그니처를 생성하는 단계는, 상기 적어도 하나의 네트워크 플로우를 사용하여 상기 잠재 디리클레 할당의 상기 할당 모델에 대한 학습을 수행하는 단계를 더 포함할 수 있다.
상기 학습의 환경 변수는 디리클레 분포의 매개 변수를 포함할 수 있다.
상기 디리클레 분포는 주어진 상기 적어도 하나의 네트워크 플로우에 대하여 상기 적어도 하나의 네트워크 플로우의 각 네트워크 플로우가 어떤 적어도 하나의 토픽을 내포하는가에 대한 확률을 모델링할 수 있다.
상기 소정의 조건을 충족시키는 부분 문자열은 발견 빈도가 높은 부분 문자열일 수 있다.
상기 소정의 조건을 충족시키는 부분 문자열은 발견 빈도가 소정의 값 이상인 부분 문자열일 수 있다.
상기 시그니처 식별 방법은, 상기 잠재 디리클레 할당을 사용한 결과를 출력하는 단계를 더 포함할 수 있다.
상기 잠재 디리클레 할당을 사용한 결과를 출력하는 단계는, 상기 잠재 디리클레 할당에 대한 통계 데이터를 출력하는 단계를 포함할 수 있다.
상기 통계 데이터는 분류된 상기 클러스터 별로 출력될 수 있다.
다른 일 측에 있어서, 입력 데이터를 가공하여 적어도 하나의 네트워크 플로우를 생성하는 전처리부; 및 상기 적어도 하나의 네트워크 플로우에 대하여 잠재 디리클레 할당을 적용함으로서 탐지 규칙의 시그니처를 생성하는 생성부를 포함하는 시그니처 식별 장치가 제공된다.
상기 시그니처 식별 장치는, 상기 입력 데이터를 수신하는 수신부를 더 포함할 수 있다.
상기 전처리부는 상기 적어도 하나의 네트워크 플로우에서 적어도 하나의 부분 문자열을 추출할 수 있고, 상기 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서의 상기 적어도 하나의 부분 문자열의 발견 빈도를 계산할 수 있다.
상기 생성부는 상기 적어도 하나의 네트워크 플로우를 클러스터로 분류할 수 있고, 상기 클러스터로 분류된 적어도 하나의 네트워크 플로우에서 소정의 조건을 충족시키는 부분 문자열을 추출할 수 있고, 상기 추출된 부분 문자열을 상기 클러스터로 분류된 상기 적어도 하나의 네트워크 플로우를 탐지하는 상기 탐지 규칙의 시그니처로 설정할 수 있다.
상기 시그니처 식별 방법은, 상기 잠재 디리클레 할당을 사용한 결과를 출력하는 출력부를 더 포함할 수 있다.
잠재 디리클레 할당을 이용하는 악성 트래픽에 대한 자동화된 시그니처 식별 방법 및 장치가 제공된다.
잠재 디리클레 할당 방법을 이용하여 악성 코드 또는 악성 트래픽을 내포한 네트워크 트래픽에 대한 클러스터링을 수행하는 방법 및 장치가 제공된다.
클러스터링에 의해 분류된 네트워크 트래픽에 대하여, 클러스터 별 키워드의 분포 정보를 이용하여 악성 트래픽의 시그니처를 자동으로 식별하는 방법 및 장치가 제공된다.
침입 탐지 시스템이 미리 알려지지 않은 악성 코드 또는 악성 트래픽을 높은 탐지율로 탐지할 수 있게 하는 탐지 규칙의 시그니처를 식별하는 방법 및 장치가 제공된다.
침입 탐지 시스템이 다형성을 내재적 특성으로 갖는 악성 코드 또는 악성 트래픽을 높은 탐지율로 탐지할 수 있게 하는 탐지 규칙의 시그니처를 식별하는 방법 및 장치가 제공된다.
침입 탐지 시스템을 운용하는 보안 전문가가 침입 탐지 시스템에서 사용할 탐지 규칙을 생성함에 있어서, 악성 코드 혹은 악성 트래픽에 대한 통계적 분석 및 시그니처 추출을 자동으로 수행하는 방법 및 장치가 제공된다.
도 1은 일 실시예에 따른 잠재 드리클레 할당을 이용한 악성 트래픽의 시그니처를 자동으로 식별하는 시그니처 식별 장치의 구조도이다.
도 2는 일 실시예에 따른 잠재 드리클래 할당을 이용한 악성 트래픽의 시그니처를 자동으로 식별하는 시그니처 식별 방법의 흐름도이다.
도 3은 일 실시예에 따른 수신부의 구조도이다.
도 4는 일 예에 따른 입력 데이터 수신 방법의 흐름도이다.
도 5는 일 예에 따른 전처리부의 구조도이다.
도 6은 일 예에 따른 전처리 방법의 흐름도이다.
도 7은 일 예에 따른 부분 문자열의 추출 방법을 설명한다.
도 8은 일 예에 따른 할당부의 구조도이다.
도 9는 일 예에 따른 잠재 디리클레 할당 방법의 흐름도이다.
도 10은 일 예에 따른 출력부의 구조도이다.
도 11은 일 예에 따른 출력 방법의 흐름도이다.
도 12는 일 예에 따른 식별 장치를 구현하는 컴퓨터 시스템의 구조도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 실시예들은 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 실시예들에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 용어가 가지는 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석될 수 있다. 실시예들에서, 특정 부분과 다른 부분에 대한 연결관계는, 양자의 직접적인 연결관계 이외에, 그 사이에 또 다른 부분을 거쳐 연결되는 간접적인 연결관계를 포함할 수 있다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낼 수 있다.
도 1은 일 실시예에 따른 잠재 드리클레 할당을 이용한 악성 트래픽의 시그니처를 자동으로 식별하는 시그니처 식별 장치의 구조도이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 시그니처 식별 장치(100)는 수신부(110), 전처리부(120), 생성부(130) 및 출력부(140)를 포함할 수 있다. 일 실시예에 따르면, 수신부(110), 전처리부(120), 생성부(130) 및 출력부(140)의 적어도 일부는 프로그램 모듈들일 수 있으며, 외부의 장치 또는 시스템과 통신할 수 있다. 이러한 프로그램 모듈들은 운영 체제, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 시그니처 식별 장치(100)에 포함될 수 있으며, 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈 중 적어도 일부는 시그니처 식별 장치(100)와 통신 가능한 원격 기억 장치에 저장될 수도 있다. 이러한 프로그램 모듈들은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴(routine), 서브루틴(subroutine), 프로그램, 오브젝트(object), 컴포넌트(component) 및 데이터 구조(data structure) 등을 포괄할 수 있지만, 이에 제한되지는 않는다. 프로그램 모듈들은 식별 장치(100)의 적어도 하나의 프로세서(processor)에 의해 수행되는 명령어(instruction)로 구성될 수 있다.
수신부(110), 전처리부(120), 생성부(130) 및 출력부(140)의 기능 및 동작에 대해서 하기에서 도 2 내지 도 11을 참조하여 상세하게 설명된다.
도 2는 일 실시예에 따른 잠재 드리클래 할당을 이용한 악성 트래픽의 시그니처를 자동으로 식별하는 시그니처 식별 방법의 흐름도이다.
단계(210)에서, 수신부(110)는 입력 데이터를 수신할 수 있다. 수신부(110)는 잠재 디리클레 할당을 이용한 악성 트래픽의 자동화된 식별 방법이 사용할 데이터를 제공할 수 있다.
입력 데이터는 악성 코드 데이터 및 악성 트래픽 데이터 중 적어도 하나를 포함할 수 있다.
사용자는 악성 코드 또는 악성 트래픽을 내포하는 악성 네트워크 트레이스 데이터를 입력할 수 있고, 수신부(110)는 입력된 악성 네트워크 트레이스 데이터를 수신할 수 있다.
일 예에 따른 입력 데이터 수신 방법이 아래에서 도 4를 참조하여 상세하게 설명된다.
단계(220)에서, 전처리부(120)는 잠재 디리클레 할당에 적합하도록 입력 데이터를 가공하여 적어도 하나의 네트워크 플로우를 생성할 수 있다.
일 예에 따른 전처리 방법이 아래에서 도 6을 참조하여 상세하게 설명된다.
전처리부(120)는 수신부(110)와 연결될 수 있으며, 수신부(110)로부터 입력 데이터를 수신할 수 있다.
단계(230)에서, 생성부(130)는 적어도 하나의 네트워크 플로우에 대하여 잠재 디리클레 할당을 적용함으로써 탐지 규칙의 시그니처를 생성할 수 있다. 생성부(130)는 적어도 하나의 네트워크 플로우를 사용하여 잠재 디리클레 할당을 수행할 수 있다.
일 예에 따른 잠재 디리클레 할당 방법이 아래에서 도 9를 참조하여 상세하게 설명된다.
생성부(130)는 전처리부(120)와 연결될 수 있으며, 생성부(130)로부터 적어도 하나의 네트워크 플로우 등을 수신할 수 있다.
단계(240)에서, 출력부(140)는 잠재 디리클레 할당을 사용한 결과를 출력할 수 있다.
출력부는 잠재 디리클레 할당의 결과와 관련된 통계 데이터를 출력할 수 있다.
일 예에 따른 결과 출력 방법이 아래에서 도 11을 참조하여 상세하게 설명된다.
출력부(140)는 생성부(130)와 연결될 수 있으며, 통계 데이터를 생성하기 위한 정보를 생성부(130)로부터 획득할 수 있다.
도 3은 일 실시예에 따른 수신부의 구조도이다.
수신부(110)는 악성 코드 수신부(310) 및 악성 트래픽 수신부(320)를 포함할 수 있다.
악성 코드 수신부(310)는 악성 코드를 입력 데이터로서 수신할 수 있다.
악성 코드는 네트워크를 통하지 않고 사용자의 컴퓨터에 악영향을 끼칠 수 있는 소프트웨어를 총칭할 수 있다. 악성 코드는 컴퓨터 바이러스(virus), 스파이웨어(spyware) 및 트로이 목마(Trojan horse) 등과 같은 멀웨어(malware)를 포함할 수 있다.
악성 트래픽 수신부(310)는 악성 트래픽을 입력 데이터로서 수신할 수 있다.
악성 트래픽은 네트워크를 통해 전파되는 사용자의 컴퓨터에 악영항을 미칠 수 있는 소프트웨어를 총칭할 수 있다. 악성 트래픽은 컴퓨터 바이러스, 스파이웨어 및 트로이 목마 등과 같은 멀웨어를 포함할 수 있다.
악성 코드 수신부(310) 및 악성 트래픽 수신부(320)에 의해 하나 이상의 악성 네트워크 트레이스 데이터가 제공될 수 있다.
도 4는 일 예에 따른 입력 데이터 수신 방법의 흐름도이다.
도 2를 참조하여 전술된 단계(210)는 단계(410) 및 단계(420)를 포함할 수 있다.
단계(410)에서, 악성 코드 수신부(310)는 악성 코드를 입력 데이터로서 수신할 수 있다.
단계(420)에서, 악성 트래픽 수신부(310)는 악성 트래픽을 입력 데이터로서 수신할 수 있다.
입력 데이터를 제공하기 위해 단계(410) 및 단계(420) 중 적어도 하나의 단계가 선택적으로 수행될 수 있다.
도 5는 일 예에 따른 전처리부의 구조도이다.
전처리부(120)는 플로우 조립부(510), 부분 문자열(substring) 추출부(520) 및 부분 문자열 빈도 계산부(530)를 포함할 수 있다.
플로우 조립부(510)는 입력 데이터인 악성 코드 또는 악성 트래픽을 적어도 하나의 네트워크 플로우로 분할할 수 있다.
플로우 조립부(510)는 입력 데이터인 악성 코드 또는 악성 트래픽을 네트워크 플로우의 단위로 조립할 수 있다. 플로우 조립부(510)에 의해 입력 데이터가 잠재 디리클레 할당 방법에 의해 사용될 형태로 가공될 수 있다.
부분 문자열 추출부(520)는 적어도 하나의 네트워크 플로우에서 적어도 하나의 부분 문자열을 추출할 수 있다. 부분 문자열 추출부(520)는 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서 적어도 하나의 부분 문자열을 추출할 수 있다.
부분 문자열 추출부(520)는 적어도 하나의 네트워크 플로우에서 발견되는 모든 부분 문자열을 추출할 수 있다. 말하자면, 적어도 하나의 부분 문자열은 적어도 하나의 네트워크 플로우에서 발견되는 모든 부분 문자열일 수 있다.
일 예에 따른 부분 문자열의 추출이 아래에서 도 7을 참조하여 예시된다.
부분 문자열 빈도 계산부(530)는 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서의 적어도 하나의 부분 문자열의 발견 빈도를 계산할 수 있다.
부분 문자열 빈도 계산부(530)는 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서의 모든 부분 문자열들의 각 부분 문자열의 발견 빈도를 계산할 수 있다.
예를 들면, 플로우의 데이터가 "0x123AB2123AB"일 때, 부분 문자열 "0x123A"의 발견 빈도는 2일 수 있다. 전술된 것과 같은 방식으로, 전체의 적어도 하나의 네트워크 플로우에 대해서 부분 문자열이 추출될 수 있고, 부분 문자열이 적어도 하나의 네트워크 플로우에서 발견되는 빈도가 측정될 수 있다.
도 6은 일 예에 따른 전처리 방법의 흐름도이다.
도 2를 참조하여 전술된 단계는 아래의 단계들(610, 620 및 630)을 포함할 수 있다.
단계(610)에서, 플로우 조립부(510)는 입력 데이터인 악성 코드 또는 악성 트래픽을 적어도 하나의 네트워크 플로우로 분할할 수 있다.
단계(620)에서, 부분 문자열 추출부(520)는 적어도 하나의 네트워크 플로우에서 적어도 하나의 부분 문자열을 추출할 수 있다. 부분 문자열 추출부(520)는 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서 적어도 하나의 부분 문자열을 추출할 수 있다.
부분 문자열 추출부(520)는 적어도 하나의 네트워크 플로우에서 발견되는 모든 부분 문자열을 추출할 수 있다. 말하자면, 적어도 하나의 부분 문자열은 적어도 하나의 네트워크 플로우에서 발견되는 모든 부분 문자열일 수 있다.
단계(630)에서, 부분 문자열 빈도 계산부(530)는 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서의 적어도 하나의 부분 문자열의 발견 빈도를 계산할 수 있다.
부분 문자열 빈도 계산부(530)는 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서의 모든 부분 문자열들의 각 부분 문자열의 발견 빈도를 계산할 수 있다.
도 7은 일 예에 따른 부분 문자열의 추출 방법을 설명한다.
도 7에서, 입력 데이터는 n개의 플로우들인 A 1,A 2,...,A n 을 포함한다. 말하자면, 입력 데이터는 A 1,A 2,...,A n 으로 분할될 수 있다. n은 1 이상의 정수일 수 있다.
i가 1 이상 n 이하일 때, 플로우 A i의 길이는 M i 일 수 있다. 플로우는 문자열(string)로 간주될 수 있다. 플로우 A i 의 길이가 M i 이면, A i 는 문자열
Figure 112015008659738-pat00001
일 수 있다.
lA i 로부터 추출될 부분 문자열의 최소 길이일 수 있다. A i 의 부분 문자열들 중, 길이가 l인 첫 번째 부분 문자열은
Figure 112015008659738-pat00002
일 수 있다. 부분 문자열의 시작 위치가 우측으로 한 문자씩 이동되면서 다음의 부분 문자열들이 계속적으로 추출될 수 있다. 길이가 l인 마지막 부분 문자열은
Figure 112015008659738-pat00003
일 수 있다.
부분 문자열 추출부(520)는 적어도 하나의 네트워크 플로우의 모두에게 대해서 이러한 부분 문자열의 추출 과정을 수행할 수 있다.
도 8은 일 예에 따른 할당부의 구조도이다.
생성부(130)는 모델 학습부(810), 클러스터링부(820) 및 시그니처 추출부(830)를 포함할 수 있다.
모델 학습부(810)는 적어도 하나의 네트워크 플로우를 사용하여 잠재 디리클레 할당의 할당 모델에 대한 학습을 수행할 수 있다.
학습의 환경 변수는 α(alpha), β(beta), nTopics, nWord, nIteration를 포함할 수 있다.
α는 디리클레 분포의 매개 변수일 수 있다.
β는 nTopics개의 토픽에 대해, nWord 가지의 단어들의 각각이 생성될 확률을 나타내는 행렬일 수 있다. 행렬의 크기는 nTopic × nWord일 수 있다.
nTopics은 토픽의 개수일 수 있다.
nWord는 단어의 개수일 수 있다.
nIteration는 잠재 디리클레 할당 모델에 대한 학습의 반복 횟수일 수 있다.
디리클레 분포는 주어진 적어도 하나의 네트워크 플로우에 대하여 적어도 하나의 네트워크 플로우의 각 네트워크 플로우가 어떤 적어도 하나의 토픽을 내포하는가에 대한 확률을 모델링할 수 있다.
클러스터링부(820)는 학습된 할당 모델을 사용하여 적어도 하나의 네트워크 플로우를 클러스터로 분류할 수 있다. 예를 들면, 클러스터링부(820)는 모델 학습부(810)에서 학습된 잠재 디리클레 할당 모델을 통하여, 악성 코드 또는 악성 트래픽의 클러스터링을 수행할 수 있다.
클러스터를 구성하는 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에 대해, nTopic개의 토픽들의 각 토픽에 대하여 가중치 Θ(theta)가 존재할 수 있다. nWord개의 단어들의 각 단어의 토픽은 가중치(weight)에 의한 다항 분포(binomial distribution)로 선택될 수 있으며, 실제 단어는 상기 각 단어의 토픽의 가중치에 기반을 두어 선택될 수 있다.
시그니처 추출부(830)는 클러스터로 분류된 적어도 하나의 네트워크 플로우에서 소정의 조건을 충족시키는 부분 문자열을 추출할 수 있다.
예를 들면, 시그니처 추출부(830)는 클러스터로 분류된 적어도 하나의 네트워크 플로우에서 발견 빈도가 높은 부분 문자열을 추출할 수 있다. 또는, 시그니처 추출부(830)는 클러스터로 분류된 상기 적어도 하나의 네트워크 플로우에서 상대적으로 발견 빈도가 높은 부분 문자열을 추출할 수 있다. 또는, 시그니처 추출부(830)는 클러스터로 분류된 적어도 하나의 네트워크 플로우에서 상대적으로 발견 빈도가 소정의 값 이상인 문자열을 추출할 수 있다.
말하자면, 소정의 조건을 충족시키는 부분 문자열은 발견 빈도가 높은 부분 문자열 또는 발견 빈도가 소정의 값 이상인 부분 문자열일 수 있다.
시그니처 추출부(830)는 추출된 부분 문자열을 클러스터로 분류된 적어도 하나의 네트워크 플로우를 탐지하는 탐지 규칙의 시그니처로 설정할 수 있다.
부분 문자열은 탐지 규칙의 키워드(keyword)로서 사용될 수 있다. 시그니처는 클러스터에서 소정의 조건을 충족시키는 부분 문자열일 수 있다. 예를 들면, 시그니처는 클러스터 별 발견 빈도가 높은 부분 문자열일 수 있다. 말하자면, 시그니처 추출부(830)는 클러스터를 구성하는 네트워크 플로우에 대한 탐지를 위한 탐지 규칙의 시그니처를 출력할 수 있다.
도 9는 일 예에 따른 잠재 디리클레 할당 방법의 흐름도이다.
도 2를 참조하여 전술된 단계(230)는 아래의 단계들(910, 920, 930 및 940)을 포함할 수 있다.
단계(910)에서, 모델 학습부(810)는 적어도 하나의 네트워크 플로우를 사용하여 잠재 디리클레 할당의 할당 모델에 대한 학습을 수행할 수 있다.
단계(920)에서, 클러스터링부(820)는 학습된 할당 모델을 사용하여 적어도 하나의 네트워크 플로우를 클러스터로 분류할 수 있다.
단계(930)에서, 시그니처 추출부(830)는 클러스터로 분류된 적어도 하나의 네트워크 플로우에서 소정의 조건을 충족시키는 부분 문자열을 추출할 수 있다.
단계(940)에서, 시그니처 추출부(830)는 추출된 부분 문자열을 클러스터로 분류된 적어도 하나의 네트워크 플로우를 탐지하는 탐지 규칙의 시그니처로 설정할 수 있다.
도 10은 일 예에 따른 출력부의 구조도이다.
출력부(140)는 통계 데이터 출력부(1010) 및 시그니처 출력부(1020)를 포함할 수 있다.
통계 데이터 출력부(1010)는 잠재 디리클레 할당에 대한 통계 데이터를 출력할 수 있다.
통계 데이터는 분류된 클러스터 별 π(phi), θ(theta), 단어의 집합, nIteration을 포함할 수 있다. 통계 데이터는 분류된 클러스터 별로 출력될 수 있다.
π는 주제 별 단어 분포일 수 있다.
nIteration은 잠재 디리클레 할당의 반복의 횟수일 수 있다.
사용자는 통계 데이터로서 출력되는 데이터를 이용하여 탐지 규칙을 생성할 수 있고, 시그니처의 선택에 있어서 시그니처의 클러스터 별 중요도를 고려할 수 있다.
시그니처 출력부(1020)는 설정된 시그니처를 출력할 수 있다.
잠재 디리클레 할당에 대한 통계 데이터를 출력하기 위해, 단계(1010) 및 단계(1020) 중 적어도 하나의 단계가 선택적으로 수행될 수 있다.
도 11은 일 예에 따른 출력 방법의 흐름도이다.
도 2를 참조하여 전술된 단계(240)는 아래의 단계들(1110 및 1120)를 포함할 수 있다.
단계(1110)에서, 통계 데이터 출력부(1010)는 잠재 디리클레 할당에 대한 통계 데이터를 출력할 수 있다.
단계(1120)에서, 시그니처 출력부(1020)는 설정된 시그니처를 출력할 수 있다.
도 12는 일 예에 따른 식별 장치를 구현하는 컴퓨터 시스템의 구조도이다.
식별 장치(100)는 도 12에서 도시된 전자 장치(1200)로서 구현될 수 있다.
식별 장치(100)는 컴퓨터에 의해 독출(read)될 수 있는 기록매체를 포함하는 컴퓨터 시스템에서 구현될 수 있다. 도 12에 도시된 바와 같이, 전자 장치(1200)는 버스(1222)를 통하여 서로 통신하는 적어도 하나의 처리부 (processor)(1221), 메모리(1223), 사용자 인터페이스(User Interface; UI) 입력 디바이스(1226), UI 출력 디바이스(1227) 및 저장소(1228)를 포함할 수 있다. 또한, 전자 장치(1200)는 네트워크(1230)에 연결되는 네트워크 인터페이스(1229)를 더 포함할 수 있다. 프로세서(1221)는 중앙 처리 장치(Central Processing Unit; CPU) 또는 메모리(1223)나 저장소(1228)에 저장된 프로세싱(processing) 명령어(instruction)들을 실행하는 반도체 장치일 수 있다. 메모리(1223) 및 저장소(1228)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 롬(ROM)(1224)이나 램(RAM)(1225)을 포함할 수 있다.
식별 장치(100)의 적어도 하나의 모듈 및 적어도 하나의 모듈의 하위의 모듈은 메모리(1223)에 저장될 수 있고, 적어도 하나의 프로세서(1221)에 의하여 실행되도록 구성될 수 있다. 식별 장치(100)의 데이터 또는 정보의 통신과 관련된 기능은 네트워크 인터페이스(1229)를 통해 수행될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
100: 시그니처 식별 장치
110: 수신부
120: 전처리부
130: 할당부
140: 출력부

Claims (20)

  1. 악성 코드 또는 악성 트래픽을 내포하는 악성 네트워크 트레이스 데이터를 수신하는 단계;
    상기 악성 네트워크 트레이스 데이터를 가공하여 적어도 하나의 네트워크 플로우를 생성하는 단계; 및
    상기 적어도 하나의 네트워크 플로우에 대하여 잠재 디리클레 할당을 적용함으로써 상기 악성 코드 및 상기 악성 코드의 다형성의 변형에 대한 탐지 규칙 또는 상기 악성 트래픽 및 상기 악성 트래픽의 다형성의 변형에 대한 탐지 규칙의 시그니처를 생성하는 단계
    를 포함하고,
    상기 시그니처는 상기 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서 발견되는 l 이상 m 이하의 길이의 모든 부분 문자열들 중 발견 빈도가 소정의 값 이상인 문자열이고,
    상기 l 및 상기 m은 각각 정수이고,
    상기 l은 상기 모든 부분 문자열들의 소정의 최소 길이이고, 상기 m은 상기 각 네트워크 플로우의 길이인 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 적어도 하나의 네트워크 플로우를 생성하는 단계는,
    상기 악성 네트워크 트레이스 데이터를 상기 적어도 하나의 네트워크 플로우로 분할하는 단계
    를 포함하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  4. 제1항에 있어서,
    상기 적어도 하나의 네트워크 플로우를 생성하는 단계는,
    상기 적어도 하나의 네트워크 플로우에서 적어도 하나의 부분 문자열을 추출하는 단계; 및
    상기 적어도 하나의 네트워크 플로우의 상기 각 네트워크 플로우에서의 상기 적어도 하나의 부분 문자열의 발견 빈도를 계산하는 단계
    를 포함하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 탐지 규칙의 시그니처를 생성하는 단계는,
    상기 적어도 하나의 네트워크 플로우를 클러스터로 분류하는 단계;
    상기 클러스터로 분류된 적어도 하나의 네트워크 플로우에서 소정의 조건을 충족시키는 부분 문자열을 추출하는 단계; 및
    상기 추출된 부분 문자열을 상기 클러스터로 분류된 상기 적어도 하나의 네트워크 플로우를 탐지하는 상기 탐지 규칙의 시그니처로 설정하는 단계
    를 포함하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  7. 제6항에 있어서,
    상기 적어도 하나의 네트워크 플로우는 학습된 잠재 디리클레 할당의 할당 모델을 사용하여 상기 클러스터로 분류되는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  8. 제6항에 있어서,
    상기 탐지 규칙의 시그니처를 생성하는 단계는,
    상기 적어도 하나의 네트워크 플로우를 사용하여 상기 잠재 디리클레 할당의 상기 할당 모델에 대한 학습을 수행하는 단계
    를 더 포함하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  9. 제8항에 있어서,
    상기 학습의 환경 변수는 디리클레 분포의 매개 변수를 포함하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  10. 제9항에 있어서,
    상기 디리클레 분포는 주어진 상기 적어도 하나의 네트워크 플로우에 대하여 상기 적어도 하나의 네트워크 플로우의 상기 각 네트워크 플로우가 어떤 적어도 하나의 토픽을 내포하는가에 대한 확률을 모델링하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  11. 삭제
  12. 삭제
  13. 제1항에 있어서,
    상기 잠재 디리클레 할당을 사용한 결과를 출력하는 단계
    를 더 포함하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  14. 제13항에 있어서,
    상기 잠재 디리클레 할당을 사용한 결과를 출력하는 단계는,
    상기 잠재 디리클레 할당에 대한 통계 데이터를 출력하는 단계
    를 포함하는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  15. 제14항에 있어서,
    상기 통계 데이터는 분류된 클러스터 별로 출력되는 악성 코드 또는 악성 트래픽의 시그니처를 식별하는 방법.
  16. 악성 코드 또는 악성 트래픽을 내포하는 악성 네트워크 트레이스 데이터를 수신하는 수신부;
    상기 악성 네트워크 트레이스 데이터를 가공하여 적어도 하나의 네트워크 플로우를 생성하는 전처리부; 및
    상기 적어도 하나의 네트워크 플로우에 대하여 잠재 디리클레 할당을 적용함으로써 상기 악성 코드 및 상기 악성 코드의 다형성의 변형에 대한 탐지 규칙 또는 상기 악성 트래픽 및 상기 악성 트래픽의 다형성의 변형에 대한 탐지 규칙의 시그니처를 생성하는 생성부
    를 포함하고,
    상기 시그니처는 상기 적어도 하나의 네트워크 플로우의 각 네트워크 플로우에서 발견되는 l 이상 m 이하의 길이의 모든 부분 문자열들 중 발견 빈도가 소정의 값 이상인 문자열이고,
    상기 l 및 상기 m은 각각 정수이고,
    상기 l은 상기 모든 부분 문자열들의 소정의 최소 길이이고, 상기 m은 상기 각 네트워크 플로우의 길이인 악성 코드 또는 악성 트래픽에 대한 시그니처 식별 장치.
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020150012590A 2015-01-27 2015-01-27 잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치 KR101631242B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020150012590A KR101631242B1 (ko) 2015-01-27 2015-01-27 잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치
US14/847,171 US20160219068A1 (en) 2015-01-27 2015-09-08 Method and apparatus for automatically identifying signature of malicious traffic using latent dirichlet allocation
EP15184475.0A EP3051767A1 (en) 2015-01-27 2015-09-09 Method and apparatus for automatically identifying signature of malicious traffic using latent dirichlet allocation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150012590A KR101631242B1 (ko) 2015-01-27 2015-01-27 잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101631242B1 true KR101631242B1 (ko) 2016-06-16

Family

ID=54146970

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150012590A KR101631242B1 (ko) 2015-01-27 2015-01-27 잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치

Country Status (3)

Country Link
US (1) US20160219068A1 (ko)
EP (1) EP3051767A1 (ko)
KR (1) KR101631242B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102006220B1 (ko) * 2018-05-24 2019-08-02 주식회사 윈스 시그니처 재구성 장치 및 방법
KR20210090312A (ko) * 2020-01-09 2021-07-20 한국전자통신연구원 Rat 유사 트래픽 식별 장치 및 방법

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10609053B2 (en) * 2015-11-24 2020-03-31 Intel Corporation Suspicious network traffic identification method and apparatus
US11258681B2 (en) 2016-12-16 2022-02-22 Nicira, Inc. Application assessment and visibility for micro-segmentation of a network deployment
CN106815310B (zh) * 2016-12-20 2020-04-21 华南师范大学 一种对海量文档集的层次聚类方法及系统
JP6719492B2 (ja) * 2018-02-26 2020-07-08 三菱電機株式会社 ルール生成装置およびルール生成プログラム
US11588854B2 (en) 2019-12-19 2023-02-21 Vmware, Inc. User interface for defining security groups
US11909653B2 (en) * 2020-01-15 2024-02-20 Vmware, Inc. Self-learning packet flow monitoring in software-defined networking environments
US11558255B2 (en) 2020-01-15 2023-01-17 Vmware, Inc. Logical network health check in software-defined networking (SDN) environments
WO2022067539A1 (zh) * 2020-09-29 2022-04-07 山石网科通信技术股份有限公司 网络流量处理方法、装置、存储介质及计算机设备
WO2022248892A1 (en) * 2021-05-26 2022-12-01 Citrix Systems, Inc. Reconstructing execution call flows to detect anomalies

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090051436A (ko) * 2007-11-19 2009-05-22 (주) 시스메이트 부적절한 패킷의 분류 방법 및 장치
KR20090059781A (ko) * 2007-12-07 2009-06-11 한국전자통신연구원 시그니처 최적화 시스템 및 방법
KR20140065235A (ko) * 2012-11-21 2014-05-29 서울대학교산학협력단 트래픽 분류 장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1771708A (zh) * 2003-05-30 2006-05-10 国际商业机器公司 检测网络攻击
KR100609700B1 (ko) 2004-07-20 2006-08-08 한국전자통신연구원 패킷 침입 탐지 규칙 간략화 장치 및 그 방법과 간략화된침입 탐지 규칙을 이용한 패킷 침입 탐지 장치 및 방법
KR100628329B1 (ko) 2005-07-30 2006-09-27 한국전자통신연구원 네트워크 세션 특성 정보에 대한 공격 행위 탐지규칙 생성장치 및 그 방법
US20120173702A1 (en) * 2010-12-30 2012-07-05 Telefonaktiebolaget L M Ericsson (Publ) Automatic Signature Generation For Application Recognition And User Tracking Over Heterogeneous Networks
US9336388B2 (en) * 2012-12-10 2016-05-10 Palo Alto Research Center Incorporated Method and system for thwarting insider attacks through informational network analysis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090051436A (ko) * 2007-11-19 2009-05-22 (주) 시스메이트 부적절한 패킷의 분류 방법 및 장치
KR20090059781A (ko) * 2007-12-07 2009-06-11 한국전자통신연구원 시그니처 최적화 시스템 및 방법
KR20140065235A (ko) * 2012-11-21 2014-05-29 서울대학교산학협력단 트래픽 분류 장치 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102006220B1 (ko) * 2018-05-24 2019-08-02 주식회사 윈스 시그니처 재구성 장치 및 방법
US11223641B2 (en) 2018-05-24 2022-01-11 Wins Co., Ltd. Apparatus and method for reconfiguring signature
KR20210090312A (ko) * 2020-01-09 2021-07-20 한국전자통신연구원 Rat 유사 트래픽 식별 장치 및 방법
KR102386616B1 (ko) * 2020-01-09 2022-04-15 한국전자통신연구원 Rat 유사 트래픽 식별 장치 및 방법

Also Published As

Publication number Publication date
US20160219068A1 (en) 2016-07-28
EP3051767A1 (en) 2016-08-03

Similar Documents

Publication Publication Date Title
KR101631242B1 (ko) 잠재 디리클레 할당을 이용한 악성 트래픽의 시그니처의 자동화된 식별 방법 및 장치
Alsaheel et al. {ATLAS}: A sequence-based learning approach for attack investigation
US11188650B2 (en) Detection of malware using feature hashing
US8108931B1 (en) Method and apparatus for identifying invariants to detect software tampering
JP5992622B2 (ja) 悪意あるアプリケーション診断装置及び方法
US8631498B1 (en) Techniques for identifying potential malware domain names
US9762593B1 (en) Automatic generation of generic file signatures
US10484419B1 (en) Classifying software modules based on fingerprinting code fragments
US10691739B2 (en) Multi-label content recategorization
US10133865B1 (en) Systems and methods for detecting malware
US11250256B2 (en) Binary linear classification
Mehtab et al. AdDroid: rule-based machine learning framework for android malware analysis
Rana et al. Evaluation of tree based machine learning classifiers for android malware detection
EP3547121B1 (en) Combining device, combining method and combining program
KR101858620B1 (ko) 기계 학습을 이용한 자바스크립트 분석 장치 및 방법
US10417285B2 (en) Corpus generation based upon document attributes
US11295013B2 (en) Dimensionality reduction based on functionality
JP2016091549A (ja) マルウェアイベントとバックグラウンドイベントとを分離するためのシステム、デバイス、および方法
KR20210084204A (ko) 악성 코드 수집 방법 및 시스템
WO2017052942A1 (en) Multi-label classification for overlapping classes
JP6505533B2 (ja) 悪質なコードの検出
US10678917B1 (en) Systems and methods for evaluating unfamiliar executables
Kumar et al. Machine learning based malware detection in cloud environment using clustering approach
Ren et al. MobiSentry: Towards easy and effective detection of android malware on smartphones
CN108156127B (zh) 网络攻击模式的判断装置、判断方法及其计算机可读取储存媒体

Legal Events

Date Code Title Description
AMND Amendment
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant