KR102313843B1 - 다중 기계 학습 기반 악성 url 예측 방법, 그리고 이를 구현하기 위한 장치 - Google Patents

다중 기계 학습 기반 악성 url 예측 방법, 그리고 이를 구현하기 위한 장치 Download PDF

Info

Publication number
KR102313843B1
KR102313843B1 KR1020200141625A KR20200141625A KR102313843B1 KR 102313843 B1 KR102313843 B1 KR 102313843B1 KR 1020200141625 A KR1020200141625 A KR 1020200141625A KR 20200141625 A KR20200141625 A KR 20200141625A KR 102313843 B1 KR102313843 B1 KR 102313843B1
Authority
KR
South Korea
Prior art keywords
url
machine learning
data
models
prediction
Prior art date
Application number
KR1020200141625A
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 KR1020200141625A priority Critical patent/KR102313843B1/ko
Priority to KR1020210134826A priority patent/KR102438527B1/ko
Application granted granted Critical
Publication of KR102313843B1 publication Critical patent/KR102313843B1/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/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 실시예에 따른 컴퓨팅 장치에 의해 수행되는 방법은, 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 단계, 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 단계, 및 상기 모델 각각의 성능 수치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 단계를 포함한다.

Description

다중 기계 학습 기반 악성 URL 예측 방법, 그리고 이를 구현하기 위한 장치{METHOD FOR PREDICTING MALIGNANT URL BASED ON MUTIPLE MACHINE LEARNING AND APPARATUS IMPLEMENTING THE SAME METHOD}
본 발명은 다중 기계 학습 기반 악성 URL 예측 방법, 그리고 이를 구현하기 위한 장치에 관한 것으로서, 보다 자세하게는, 기계 학습 알고리즘을 이용하여 피싱 사이트와 같은 악성 URL을 탐지하기 위한 다중 기계 학습 기반 악성 URL 예측 방법, 그리고 이를 구현하기 위한 장치에 관한 것이다.
개인 정보를 탈취하는 피싱, 악성코드의 은닉 및 유포하는 등과 같은 악성 행위를 수행하는 웹 사이트는 정부 또는 금융 기관 등 개인의 민감한 정보들을 보유하고 있는 기관에 있어 보안상 위협이 되고 있다.
이러한 피싱 사이트와 같은 웹 사이트의 도메인은 악성 URL(Uniform Resource Locator)로 분류되고, 이를 탐지함에 의해 보안상 문제가 발생하는 것을 방지할 수 있다.
기존에는 악성 URL을 탐지하기 위한 기술로써, 사전에 입력된 악성 URL에 관한 정보를 기반으로 차단하는 시그니처(signature) 방법이 사용되어 왔다.
그러나, 악성 URL은 비교적 짧은 생명 주기를 가지고 있고, 다양하고 새로운 형태로 변형되므로, 악성 URL의 시그니처를 가지고 있지 않은 경우 악성 URL을 탐지 및 예측하는 것은 불가능하다.
또한, 악성 URL의 신고로 인한 도메인 변경 및 재등록이나, 도메인 추적의 난이도 향상을 위한 실시간 변경 등의 이유로 인해 시그니처를 확보하는 것이 쉽지 않다. 더구나, 랜덤으로 생성된 도메인을 활용하는 등 일정 패턴이 없는 경우에는 시그니처 방법으로 예측이 어려운 문제점이 있다.
이와 같은 문제점으로 인해, 악성 URL을 예측함에 있어 시그니처 방법 대신 기계 학습 모델이 사용되고 있다. 그러나, 단일 기계 학습 모델만을 사용하는 경우 예측의 정확도가 떨어질 수 있고, 어떤 기계 학습 모델을 사용하는 지에 따라 특징 데이터를 학습하는 방식이 다르고, 분석 대상에 따라 학습되는 특징 데이터가 상이하다.
공개특허공보 제10-2020-0109677호(2020.09.23. 등록)
본 발명이 해결하고자 하는 기술적 과제는, 짧은 생명 주기를 가지고 다양하고 새로운 형태로 변형되는 악성 URL에 대한 사전에 입력된 시그니처 정보가 존재하지 않는 경우에도 악성 URL 여부를 예측할 수 있는 다중 기계 학습 기반 악성 URL 예측 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는, 악성 URL의 분석 대상이 되는 데이터의 특성에 따라 서로 다른 기계 학습 알고리즘을 학습함에 의해 정확도가 향상된 예측 결과를 제공할 수 있는 다중 기계 학습 기반 악성 URL 예측 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 컴퓨팅 장치에 의해 수행되는 방법은, 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 단계, 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 단계, 및 상기 모델 각각의 성능 수치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 단계를 포함한다.
일 실시예로서, 상기 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 단계는, 상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 단계, 상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 단계, 및 상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 단계를 포함할 수 있다.
일 실시예로서, 상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 단계는, 상기 학습용 URL 데이터로부터 특징 데이터로서 URL 데이터, URL 콘텐츠 데이터, 및 URL 호스트 데이터를 추출하는 단계를 포함할 수 있다.
일 실시예로서, 상기 학습용 URL 데이터로부터 특징 데이터로서 URL 데이터, URL 콘텐츠 데이터, 및 URL 호스트 데이터를 추출하는 단계는, URL 접속 페이지 내에 포함된 내부 URL 및 외부 URL 각각을 상기 URL 데이터로서 추출하는 단계를 포함할 수 있다.
일 실시예로서, 상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 단계는, 상기 학습용 URL 데이터로부터 추출된 특징 데이터의 유형에 따라 서로 다른 기계 학습 방법론에 기반한 기계 학습을 수행하는 단계를 포함할 수 있다.
일 실시예로서, 상기 학습용 URL 데이터로부터 추출된 특징 데이터의 유형에 따라 서로 다른 기계 학습 방법론에 기반한 기계 학습을 수행하는 단계는, 상기 특징 데이터의 유형이 URL 데이터인 경우, CNN 또는 로지스틱 회귀(Logistic Regression) 알고리즘에 기반한 기계 학습을 수행하는 단계를 포함할 수 있다.
일 실시예로서, 상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 단계는, 상기 생성된 모델 각각의 성능 수치로서 상기 모델 각각의 정확도(accuracy)를 측정하는 단계, 및 상기 측정된 정확도를 이용하여 상기 모델 각각의 가중치를 결정하는 단계를 포함할 수 있다.
일 실시예로서, 상기 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 단계는, 상기 예측 대상 URL에 대한 특징 추출 및 전처리 과정을 수행하는 단계, 상기 특징 추출 및 전처리 과정이 완료된 상기 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델 각각에 입력하는 단계, 및 상기 각각의 모델로부터 악성 URL 여부에 대한 예측 결과를 출력하는 단계를 포함할 수 있다.
일 실시예로서, 상기 모델 각각의 성능 수치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 단계는, 상기 복수의 모델 생성 시 측정되는 상기 모델 각각의 정확도와 상기 정확도를 이용하여 계산된 각각의 가중치를 획득하는 단계, 상기 각각의 가중치를 이용하여 상기 모델의 예측 결과가 악성 또는 정상인 경우 각각의 가중 평균값을 산출하는 단계, 및 상기 각각의 가중 평균값에 기반하여 상기 예측 대상 URL이 악성 URL인지 여부를 판단하는 단계를 포함할 수 있다.
일 실시예로서, 상기 예측 대상 URL을 이용하여 적어도 하나의 위험 요소와 관련된 외부 데이터를 조회하는 단계, 상기 각 위험 요소의 조회 결과를 이용하여 위험 점수를 산출하는 단계, 상기 악성 URL인지 여부를 예측한 결과에 상기 위험 점수를 반영하여 위험도를 계산하는 단계, 및 상기 위험도에 기반하여 상기 예측 대상 URL의 예측 결과를 출력하는 단계를 더 포함할 수 있다.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 장치는, 하나 이상의 프로세서, 외부장치와 통신하는 통신 인터페이스, 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리, 및 상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 동작, 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 동작, 및 상기 모델 각각의 성능 수치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 동작을 수행하기 위한 인스트럭션들(instructions)을 포함한다.
일 실시예로서, 상기 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 동작은, 상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 동작, 상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 동작, 및 상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 동작을 포함할 수 있다.
일 실시예로서, 상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 동작은, 상기 학습용 URL 데이터로부터 특징 데이터로서 URL 데이터, URL 콘텐츠 데이터, 및 URL 호스트 데이터를 추출하는 동작을 포함할 수 있다.
일 실시예로서, 상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 동작은, 상기 학습용 URL 데이터로부터 추출된 특징 데이터의 유형에 따라 서로 다른 기계 학습 방법론에 기반한 기계 학습을 수행하는 동작을 포함할 수 있다.
일 실시예로서, 상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 동작은, 상기 생성된 모델 각각의 성능 수치로서 상기 모델 각각의 정확도(accuracy)를 측정하는 동작, 및 상기 측정된 정확도를 이용하여 상기 모델 각각의 가중치를 결정하는 동작을 포함할 수 있다. 이 때, 모델 각각의 성능 수치로서, 모델 각각의 정확도(accuracy) 대신 F1-score, 재현율(recall), 및 정밀도(precision) 등이 사용될 수 있다.
일 실시예로서, 상기 모델 각각의 성능 수치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 동작은, 상기 복수의 모델 생성 시 측정되는 상기 모델 각각의 정확도와 상기 정확도를 이용하여 계산된 각각의 가중치를 획득하는 동작, 상기 각각의 가중치를 이용하여 상기 모델의 예측 결과가 악성 또는 정상인 경우 각각의 가중 평균값을 산출하는 동작, 및 상기 각각의 가중 평균값에 기반하여 상기 예측 대상 URL이 악성 URL인지 여부를 판단하는 동작을 포함할 수 있다.
일 실시예로서, 상기 컴퓨터 프로그램은, 상기 예측 대상 URL을 이용하여 적어도 하나의 위험 요소와 관련된 외부 데이터를 조회하는 동작, 상기 각 위험 요소의 조회 결과를 이용하여 위험 점수를 산출하는 동작, 상기 악성 URL인지 여부를 예측한 결과에 상기 위험 점수를 반영하여 위험도를 계산하는 동작, 및 상기 위험도에 기반하여 상기 예측 대상 URL의 예측 결과를 출력하는 동작을 수행하기 위한 인스트럭션들을 더 포함할 수 있다.
도 1은 본 발명의 실시예에 따른 개념도이다.
도 2는 본 발명의 일 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 장치의 구성을 도시한 블록도이다.
도 3은 본 발명의 다른 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 몇몇 실시예에 따른 학습용 URL 데이터를 이용한 학습 과정을 도시한 예이다.
도 5는 본 발명의 몇몇 실시예에 따른 예측 대상 URL에 대한 예측 과정을 도시한 예이다.
도 6은 본 발명의 몇몇 실시예에 따른 예측 과정과 위험도 평가에 의한 최종 예측 결과를 출력하는 예이다.
도 7은 본 발명의 몇몇 실시예에 따른 다중 기계 학습 기반으로 생성된 복수의 모델 각각의 예측 결과에 모델 각각의 성능 수치를 적용하는 예이다.
도 8은 본 발명의 몇몇 실시예에 따른 예측 대상 URL의 위험도 평가 과정을 도시한 예이다.
도 9는 본 발명의 몇몇 실시예에 따른 URL로부터 추출되는 주요 특징 데이터를 보여주는 예이다.
도 10은 본 발명의 몇몇 실시예에 따른 방법들을 구현할 수 있는 예시적인 컴퓨팅 장치의 하드웨어 구성도이다.
이하, 첨부된 도면을 참조하여 본 개시의 바람직한 실시 예들을 상세히 설명한다. 본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 개시의 기술적 사상을 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 개시를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
이하, 본 개시의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 개념도이다. 도 1을 참조하면, 본 발명의 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 장치(1)는 학습부(11)와 예측부(12)로 구성되고, 학습용 URL 데이터(101)를 이용하여 학습을 수행한 후 얻게 되는 복수의 기계학습 모델에 기반하여 예측 대상 URL(103)에 대한 예측 결과를 얻을 수 있다.
도시된 예에서, 학습용 URL 데이터(101)가 학습부(11)에 입력되면, 학습부(11)에서 기계학습을 수행한 후 출력되는 복수의 기계 학습 모델(102)을 얻게 된다. 이 때, 출력된 복수의 기계 학습 모델(102)은 예측부(12)로 전달된다.
예측 대상 URL(103)이 예측부(12)에 입력되면, 학습부(11)로부터 전달된 복수의 기계 학습 모델(102)을 이용하여 각각의 예측 결과가 생성되고, 각각의 예측 결과를 활용하여 예측 대상 URL이 악성 URL인지 여부에 대한 예측 결과(104)가 예측부(12)에서 출력된다.
상기와 같은 본 발명의 실시예에 따라, 악성 URL에 대한 시그니처 정보가 존재하지 않는 경우에도 악성 URL 여부를 예측할 있는 방법을 제공할 수 있다. 또한, 악성 URL의 분석 대상이 되는 데이터의 특성에 따라 서로 다른 기계 학습 알고리즘을 학습함에 의해 정확도가 향상된 예측 결과를 제공할 수 있다.
도 2는 본 발명의 일 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 장치의 구성을 도시한 블록도이다. 도 2를 참조하면, 본 발명의 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 장치(1)는 학습부(11) 및 예측부(12)를 포함하고, 외부 서버(20), 데이터 저장부(30), 및 사용자 단말(10)과 네트워크를 통해 연결될 수 있다. 다중 기계 학습 기반 악성 URL 예측 장치(1)는 사용자 단말(10)로부터 수신되는 악성 URL 예측을 위한 기계 학습 모델의 생성 및 분석 요청을 처리하여, 그 결과를 제공한다.
외부 서버(20)는 악성 URL의 공개 출처 정보를 제공하는 사이트의 웹 서버로서, 이로부터 학습을 위한 악성 URL 데이터를 얻을 수 있다.
학습부(11)는 수집 모듈(111), 전처리 모듈(112), 및 학습 모듈(113)로 구성되고, 외부 서버(20)로부터 제공되는 악성 URL의 공개 출처 정보를 이용하여 학습용 악성 URL 데이터를 수집하고, 이를 이용하여 기계 학습을 통해 생성되는 복수의 모델을 출력한다.
수집 모듈(111)은 외부 서버(20)로부터 제공되는 악성 URL의 공개 출처 정보를 이용하여 학습용 악성 URL 데이터를 수집하고, 이를 네트워크로 연결된 데이터 저장부(30)에 저장한다. 예로서, 수집 모듈(111)은 외부 서버(20)의 웹 사이트를 크롤링(crawling)하는 방법으로 자동으로 학습을 위한 악성 URL 데이터를 얻을 수 있다.
전처리 모듈(112)은 데이터 저장부(30)에 저장된 학습용 악성 URL 데이터를 읽어오고, 학습용 악성 URL 데이터로부터 특징 데이터를 추출하고, 추출된 특징 데이터를 기계 학습이 가능한 형태로 변환한다.
일 실시예로서, 전처리 모듈(112)은 학습용 악성 URL 데이터로부터 분석 대상에 따른 특징 데이터를 추출할 수 있다. 예로서, 분석 대상이 URL의 문자 패턴, URL의 응답 웹 콘텐츠, URL의 응답 호스트로 정의되고, 각각의 분석 대상에 대응하는 특징 데이터로서 예컨대 URL 데이터, URL 콘텐츠 데이터, URL 호스트 데이터가 추출될 수 있다. 이 때, URL 데이터는 URL을 구성하고 있는 문자 패턴, 구문 등을 분석하는데 사용되고, URL 콘텐츠 데이터는 URL에 접속하여 수신되는 응답 페이지 내의 HTML 소스 코드, 스크립트 등 내부 콘텐츠를 분석하는데 사용될 수 있다. 또한, URL 호스트 데이터는 URL에 접속하여 수신되는 포트 스캔 결과 등의 네트워크 데이터를 분석하는데 사용될 수 있다.
예로서, 도 9에 도시된 바와 같이, 학습용 악성 URL 데이터로부터 추출되는 특징 데이터(90)는, URL 기반 특징, HTML/JS 기반 특징, 도메인 기반 특징, 및 비정상 특징 등 다양한 특징들을 포함할 수 있다.
일 실시예로서, 전처리 모듈(112)은 추출된 특징 데이터를 기계 학습이 가능하도록 벡터 형식의 데이터로 변환한다. 이 때, 벡터 형식의 데이터로 변환하기 위한 텍스트 임베딩(Text Embedding) 작업이 수행될 수 있다. 텍스트 임베딩 모델로서, 예컨대 Word2Vec, FastText, Glove, Sent2Vec, 및 Elmo 등 단어 또는 문장 기반의 모델이 적용될 수 있다.
학습 모듈(113)은 전처리 모듈(112)에서 특징 데이터의 추출 및 전처리가 완료된 학습용 URL 데이터를 이용하여 기계 학습을 수행하고, 이로부터 복수의 기계 학습 모델을 생성한다.
일 실시예로서, 학습 모듈(113)은 학습용 URL 데이터를 이용하여 복수의 서로 다른 기계 학습 알고리즘에 기반하여 학습하고, 학습을 통해 각각의 알고리즘에 의한 복수의 모델을 생성할 수 있다. 이 때, 학습을 위해 사용되는 복수의 서로 다른 기계 학습 알고리즘으로서, 예컨대 서포트 벡터 머신(SVM: support vector machine), 랜덤 포레스트(RF: random forest), 부스팅(boosting), 의사결정 나무(decision tree), 로지스틱 회귀(LR: logistic regression), 합성 곱 신경망(CNN: convolutional neural network), 및 순환 신경망(RNN: recurrent neural network) 등이 사용될 수 있다.
예측부(12)는 입력 모듈(121), 전처리 모듈(122), 및 예측 모듈(123)로 구성되고, 사용자 단말(10)로부터 입력되거나 외부 장치로부터 제공되는 예측 대상 URL 데이터를 이용하여 예측 대상 URL에 대한 예측 결과를 출력한다.
입력 모듈(121)은 사용자 단말(10) 또는 외부 장치로부터 제공되는 예측 대상 URL 데이터가 입력된다. 이 때, 예측 대상 URL 데이터는 하나의 URL 또는 URL 리스트를 포함할 수 있다.
전처리 모듈(122)은 입력 모듈(121)에서 입력된 예측 대상 URL 데이터로부터 특징 데이터를 추출하고, 추출된 특징 데이터를 기계 학습 모델 기반으로 예측이 가능한 형태로 변환한다. 이 때, 예측 대상 URL 데이터에 대한 특징 추출 및 변환 과정은 학습부(11)의 전처리 모듈(112)에서 수행되는 과정과 동일하다.
일 실시예로서, 전처리 모듈(122)은 예측 대상 URL 데이터로부터 분석 대상에 따른 특징 데이터를 추출할 수 있다. 예로서, 분석 대상이 URL의 문자 패턴, URL의 응답 웹 콘텐츠, URL의 응답 호스트로 정의되고, 각각의 분석 대상에 대응하는 특징 데이터로서 예컨대 URL 데이터, URL 콘텐츠 데이터, URL 호스트 데이터가 추출될 수 있다.
여기서, URL 데이터는, 프로토콜 및 3-레벨 도메인(third-level domain) 등과 같은 중복 요소를 제거한 순수 URL을 포함할 수 있다. URL 콘텐츠 데이터는, 응답 HTML 콘텐츠에서 HTML 길이 등과 같은 특징을 포함할 수 있다. URL 호스트 데이터는, 호스트 머신의 포트 상태 등과 같은 특징을 포함할 수 있다.
예로서, 도 9에 도시된 바와 같이, 예측 대상 URL 데이터로부터 추출되는 특징 데이터(90)는, URL 기반 특징, HTML/JS 기반 특징, 도메인 기반 특징, 및 비정상 특징 등 다양한 특징들을 포함할 수 있다.
일 실시예로서, 전처리 모듈(122)은 예측 대상 URL 데이터의 각 URL에 접속하여 수신된 응답 페이지 내에 포함된 내부 URL 및 외부 URL 각각을 추출하고, 추출된 내부 URL 및 외부 URL로부터 특징 데이터를 추출할 수도 있다.
일 실시예로서, 전처리 모듈(122)는 추출된 특징 데이터를 기계 학습 모델 기반으로 예측이 가능한 형태인 벡터 형식의 데이터로 변환 및 정규화(normalize) 작업을 수행할 수 있다.
예측 모듈(123)은 학습 모듈(113)에서 생성된 복수의 기계 학습 모델 각각을 로드하고, 로드된 각각의 기계 학습 모델을 이용하여 예측 대상 URL이 악성 URL인지 또는 정상 URL인지 여부에 관한 예측 결과를 생성한다.
또한, 예측 모듈(123)은 각각의 기계 학습 모델을 이용하여 생성된 각각의 예측 결과에 모델 각각의 성능 수치를 적용하는 앙상블(ensemble) 기법을 활용하여 최종 예측 결과를 출력한다.
일 실시예로서, 예측 모듈(123)은 학습 모듈(113)에서 생성된 복수의 기계 학습 모델 각각의 성능 수치를 로드한다. 여기서, 각각의 기계 학습 모델의 성능 수치는, 기계 학습을 통해 출력되는 모델 각각의 정확도(accuracy)를 이용하여 부여한 가중치에 관한 정보를 포함할 수 있다.
일 실시예로서, 예측 모듈(123)은 로드된 모델 각각의 성능 수치, 즉, 가중치에 관한 정보를 모델 각각의 예측 결과에 적용함에 의해 예측 대상 URL이 악성 URL인지 여부에 관한 최종 예측 결과를 출력할 수 있다.
도 3은 본 발명의 다른 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 방법을 설명하기 위한 순서도이다.
본 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 방법은 컴퓨팅 장치(100)에 의하여 실행될 수 있고, 예컨대 다중 기계 학습 기반 악성 URL 예측 장치(1)에 의해 실행될 수 있다. 본 실시예에 따른 방법을 실행하는 상기 컴퓨팅 장치(100)는 응용 프로그램 실행 환경을 구비한 컴퓨팅 장치일 수 있다. 본 실시예에 따른 방법에 포함되는 일부 동작의 수행 주체에 대한 기재가 생략될 수 있으며, 그러한 경우 그 주체는 상기 컴퓨팅 장치(100)임을 유의한다.
도 3을 참조하면, 먼저, 동작 S31에서, 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델이 생성되고, 복수의 모델 각각의 성능 수치가 출력된다. 여기서, 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성된 것일 수 있다. 예로서, 서로 다른 기계 학습 방법론으로서, 예컨대 서포트 벡터 머신(SVM: support vector machine), 랜덤 포레스트(RF: random forest), 부스팅(boosting), 의사결정 나무(decision tree), 로지스틱 회귀(LR: logistic regression), 합성 곱 신경망(CNN: convolutional neural network), 및 순환 신경망(RNN: recurrent neural network) 등이 사용될 수 있다.
일 실시예로서, 동작 S31은, 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정이 수행되는 동작, 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 기계 학습이 수행되는 동작, 및 기계 학습을 통해 복수의 모델이 생성되고, 모델 각각의 성능이 검증되는 동작을 포함할 수 있다.
일 실시예로서, 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정이 수행되는 동작은, 학습용 URL 데이터로부터 특징 데이터로서 URL 데이터, URL 콘텐츠 데이터, 및 URL 호스트 데이터가 추출되는 동작을 포함할 수 있다. 이 때, URL 접속 페이지 내에 포함된 내부 URL 및 외부 URL 각각이 URL 데이터로서 추출될 수 있다.
일 실시예로서, 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 기계 학습이 수행되는 동작은, 학습용 URL 데이터로부터 추출된 특징 데이터의 유형에 따라 서로 다른 기계 학습 방법론에 기반한 기계 학습이 수행되는 동작을 포함할 수 있다. 예로서, 특징 데이터의 유형이 URL 데이터인 경우, CNN 또는 로지스틱 회귀 등의 알고리즘에 기반하여 기계 학습이 수행될 수 있다. 다른 예로서, 특징 데이터의 유형이 URL 콘텐츠 데이터인 경우, SVM, 랜덤 포레스트, 부스팅, 의사결정 나무 등의 알고리즘에 기반하여 기계 학습이 수행될 수 있다.
일 실시예로서, 기계 학습을 통해 복수의 모델이 생성되고, 모델 각각의 성능이 검증되는 동작은, 생성된 모델 각각의 성능 수치로서 모델 각각의 정확도(accuracy)가 측정되는 동작, 및 측정된 정확도를 이용하여 모델 각각의 가중치가 결정되는 동작을 포함할 수 있다. 이 때, 모델 각각의 성능 수치로서, 모델 각각의 정확도(accuracy) 대신 F1-score, 재현율(recall), 및 정밀도(precision) 등이 사용될 수 있다.
여기서, 모델 각각의 가중치는, 각각의 정확도(accuracy)의 평균 값을 계산하고, 각각의 정확도와 평균 값의 차이로 계산되는 평균 편차를 이용하여 산출될 수 있다.
다음으로, 동작 S32에서, 예측 대상 URL의 특징 데이터를 생성된 복수의 모델에 입력하여 모델 각각에 의한 예측 결과가 출력된다.
일 실시예로서, 동작 S32는, 예측 대상 URL에 대한 특징 추출 및 전처리 과정이 수행되는 동작, 특징 추출 및 전처리 과정이 완료된 예측 대상 URL의 특징 데이터가 생성된 복수의 모델 각각에 입력되는 동작, 및 각각의 모델로부터 악성 URL 여부에 대한 예측 결과가 출력되는 동작을 포함할 수 있다.
마지막으로, 동작 S33에서, 모델 각각의 성능 수치를 모델 각각의 예측 결과에 적용하여 예측 대상 URL이 악성 URL인지 여부가 예측된다.
일 실시예로서, 동작 S33은, 복수의 모델 생성 시 측정되는 모델 각각의 정확도와 정확도를 이용하여 계산된 각각의 가중치가 획득되는 동작, 각각의 가중치를 이용하여 모델의 예측 결과가 악성 또는 정상인 경우 각각의 가중 평균값이 산출되는 동작, 및 각각의 가중 평균값에 기반하여 예측 대상 URL이 악성 URL인지 여부가 판단되는 동작을 포함할 수 있다.
일 실시예로서, 상기 방법은, 예측 대상 URL을 이용하여 적어도 하나의 위험 요소와 관련된 외부 데이터가 조회되는 동작, 각 위험 요소의 조회 결과를 이용하여 위험 점수가 산출되는 동작, 악성 URL인지 여부를 예측한 결과에 위험 점수를 반영하여 위험도가 계산되는 동작, 및 위험도에 기반하여 예측 대상 URL의 예측 결과가 출력되는 동작을 더 포함할 수 있다.
상기와 같이, 본 발명의 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 방법에 의하면, 악성 URL에 대한 사전에 입력된 시그니처 정보가 존재하지 않는 경우에도 악성 URL 여부를 예측할 수 있다. 또한, 악성 URL의 분석 대상이 되는 데이터의 특성에 따라 서로 다른 기계 학습 알고리즘을 학습함에 의해 정확도가 향상된 예측 결과를 제공할 수 있다.
도 4는 본 발명의 몇몇 실시예에 따른 학습용 URL 데이터를 이용한 학습 과정을 도시한 예이다. 도 4를 참조하면, 본 발명의 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 학습 장치(1)의 학습부(11)는 수집 모듈(111), 전처리 모듈(112), 및 학습 모듈(113) 각각에 포함된 서브 모듈의 동작을 수행하여 학습 과정을 수행한다.
도시된 구성에서, 수집 모듈(111)은 URL 자동 수집 서브 모듈(1111)을 포함하고, URL 자동 수집 서브 모듈(1111)은 외부 웹 사이트로부터 제공되는 악성 URL의 공개 출처 정보(1011)로부터 학습용 URL 데이터를 자동 수집하여 데이터 저장부(30)에 저장한다. 이 때, URL 자동 수집 서브 모듈(1111)은 예컨대 악성 URL을 제공하는 외부 웹 사이트를 크롤링하여 자동으로 학습용 URL 데이터를 수집할 수 있다.
전처리 모듈(112)은 특징 추출 서브 모듈(1121) 및 특징 데이터 전처리 서브 모듈(1122)를 포함한다. 특징 추출 서브 모듈(1121)은 데이터 저장부(30)에 저장된 학습용 악성 URL 데이터를 로드하여 특징 데이터를 추출한 후 특징 데이터 전처리 서브 모듈(1122)로 전달한다.
일 실시예로서, 특징 추출 서브 모듈(1121)은 학습용 악성 URL 데이터로부터 분석 대상에 따른 특징 데이터를 추출할 수 있다. 이 때, 특징 데이터로서 예컨대 URL 데이터, URL 콘텐츠 데이터, URL 호스트 데이터가 추출될 수 있다. 여기서, URL 데이터는 URL을 구성하고 있는 문자 패턴, 구문 등을 분석하는데 사용되고, URL 콘텐츠 데이터는 URL에 접속하여 수신되는 응답 페이지 내의 HTML 소스 코드, 스크립트 등 내부 콘텐츠를 분석하는데 사용될 수 있다. 또한, URL 호스트 데이터는 URL에 접속하여 수신되는 포트 스캔 결과 등의 네트워크 데이터를 분석하는데 사용될 수 있다.
특징 데이터 전처리 서브 모듈(1122)은 특징 추출 서브 모듈(1121)로부터 전달된 특징 데이터를 기계 학습이 가능하도록 벡터 형식의 데이터로 변환하여 학습 모듈(113)로 전달한다.
학습 모듈(113)은 기계 학습 서브 모듈(1131) 및 모델 검증 서브 모듈(1132)를 포함한다. 기계 학습 서브 모듈(1131)은 특징 데이터 전처리 서브 모듈(1122)로부터 전달된 학습용 URL 데이터를 이용하여 기계 학습을 수행하고, 이로부터 복수의 기계 학습 모델을 생성한다.
일 실시예로서, 기계 학습 서브 모듈(1131)은 학습용 URL 데이터를 이용하여 복수의 서로 다른 기계 학습 알고리즘에 기반하여 학습하고, 학습을 통해 각각의 알고리즘에 의한 복수의 모델을 생성할 수 있다. 이 때, 복수의 모델 각각은, 예컨대 서포트 벡터 머신(SVM: support vector machine), 랜덤 포레스트(RF: random forest), 부스팅(boosting), 의사결정 나무(decision tree), 로지스틱 회귀(LR: logistic regression), 합성 곱 신경망(CNN: convolutional neural network), 및 순환 신경망(RNN: recurrent neural network) 등의 기계 학습 알고리즘을 이용하여 생성될 수 있다.
모델 검증 서브 모듈(1132)은 기계 학습 서브 모듈(1131)에서 생성된 복수의 모델 각각의 성능을 평가한다. 이 때, 모델 각각의 성능은 예컨대, 홀드 아웃(holdout), k-폴드(k-fold) 등의 방법을 이용하여 평가되고, 이로부터 모델 각각의 정확도(accuracy)가 산출될 수 있다.
일 실시예로서, 모델 검증 서브 모듈(1132)은 산출된 모델 각각의 정확도를 이용하여 각 모델에 대한 가중치를 결정할 수 있다. 예로서, 모델 각각의 가중치는, 각각의 정확도(accuracy)의 평균 값을 계산하고, 각각의 정확도와 평균 값의 차이로 계산되는 평균 편차를 이용하여 산출될 수 있다.
상기와 같이 학습 모듈(113)에서 복수의 모델 생성 및 모델 각각의 성능 평가가 완료되면, 생성된 복수의 모델(102)과 모델 각각의 가중치가 출력될 수 있다.
도 5는 본 발명의 몇몇 실시예에 따른 예측 대상 URL에 대한 예측 과정을 도시한 예이다. 도 5를 참조하면, 본 발명의 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 학습 장치(1)의 예측부(12)는 입력 모듈(121), 전처리 모듈(122), 및 예측 모듈(123) 각각에 포함된 서브 모듈의 동작을 수행하여 학습 과정을 수행한다.
도시된 구성에서, 입력 모듈(121)은 상대/절대 URL 링크 추출 서브 모듈(1211)을 포함하고, 상대/절대 URL 링크 추출 서브 모듈(1211)은 사용자 단말(10) 또는 외부 장치로부터 제공되는 예측 대상 URL 데이터가 입력되면, 예측 대상 URL 데이터의 각 URL의 요청을 통해 응답 페이지를 수신하고, 응답 페이지 내에 포함된 내부 및 외부 URL을 상대 및 절대 URL로서 추출할 수 있다. 이에 따라, 상대/절대 URL 링크 추출 서브 모듈(1211)은 입력된 예측 대상 URL 데이터와 추출된 상대/절대 URL을 전처리 모듈(122)로 전달한다.
전처리 모듈(122)은 특징 추출 서브 모듈(1221) 및 특징 데이터 전처리 서브 모듈(1222)를 포함한다. 특징 추출 서브 모듈(1221)은 상대/절대 URL 링크 추출 서브 모듈(1211)에서 전달된 예측 대상 URL 데이터와 상대/절대 URL로부터 특징 데이터를 추출한 후 특징 데이터 전처리 서브 모듈(1222)로 전달한다.
일 실시예로서, 특징 추출 서브 모듈(1221)은 예측 대상 URL 데이터와 상대/절대 URL로부터 분석 대상에 따른 특징 데이터를 추출할 수 있다. 이 때, 특징 데이터로서 예컨대 URL 데이터, URL 콘텐츠 데이터, URL 호스트 데이터가 추출될 수 있다. 여기서, URL 데이터는, 프로토콜 및 3-레벨 도메인(third-level domain) 등과 같은 중복 요소를 제거한 순수 URL을 포함할 수 있다. URL 콘텐츠 데이터는, 응답 HTML 콘텐츠에서 HTML 길이 등과 같은 특징을 포함할 수 있다. URL 호스트 데이터는, 호스트 머신의 포트 상태 등과 같은 특징을 포함할 수 있다.
특징 데이터 전처리 서브 모듈(1222)은 특징 추출 서브 모듈(1221)로부터 전달된 특징 데이터를 기계 학습이 가능하도록 벡터 형식의 데이터로 변환하여 예측 모듈(123)로 전달한다.
예측 모듈(123)은 예측 서브 모듈(1231) 및 앙상블 서브 모듈(1232)를 포함한다. 예측 서브 모듈(1231)은 학습 모듈(113)에서 생성된 복수의 기계 학습 모델(102)을 로드하고, 전처리 모듈(122)로부터 전달된 예측 대상 URL 데이터의 특징 데이터를 이용하여 로드된 각각의 모델에 의한 각각의 예측 결과를 생성하여 앙상블 서브 모델(1232)로 전달한다. 이 때, 각각의 예측 결과는, 각각의 모델을 이용하여 예측 대상 URL이 악성인지 또는 정상인지 여부를 예측한 결과를 포함한다.
앙상블 서브 모델(1232)은 각각의 모델을 이용하여 생성된 각각의 예측 결과에 모델 각각의 성능 수치를 적용하는 앙상블(ensemble) 기법을 활용하여 최종 예측 결과(104)를 출력한다.
일 실시예로서, 앙상블 서브 모델(1232)은 학습 모듈(113)에서 생성된 복수의 모델 각각의 성능 수치를 로드한다. 여기서, 각각의 성능 수치는, 기계 학습을 통해 출력되는 모델 각각의 정확도(accuracy)를 이용하여 부여한 가중치에 관한 정보를 포함할 수 있다.
일 실시예로서, 앙상블 서브 모델(1232)은 모델 각각의 성능 수치, 즉, 가중치에 관한 정보를 모델 각각의 예측 결과에 적용함에 의해 예측 대상 URL이 악성 URL인지 여부에 관한 최종 예측 결과(104)를 출력할 수 있다.
상기와 같은 본 발명의 실시예에 따라, 악성 URL의 분석 대상이 되는 데이터의 특성에 따라 서로 다른 기계 학습 알고리즘을 학습하여 생성된 복수의 모델 각각의 예측 결과에 모델 각각의 성능을 반영함에 의해, 보다 정확도가 향상된 예측 결과를 제공할 수 있다.
도 6은 본 발명의 몇몇 실시예에 따른 예측 과정과 위험도 평가에 의한 최종 예측 결과를 출력하는 예이다. 도 6을 참조하면, 본 발명의 실시예에 따른 방법에 따라, 예측 대상 URL을 입력하여 악성 URL인지 또는 정상 URL인지를 예측한 결과를 출력하는 예를 보여준다.
먼저 동작 S60에서, 예측 대상 URL을 입력하면, 동작 S61에서, 예측 대상 URL에 대한 상대/절대 URL 링크가 추출된다. 여기서, 동작 S61은, 입력된 예측 대상 URL(611)과, 예측 대상 URL(611)의 접속 페이지 내부에 포함되어 있는 내부 URL(612) 및 외부 URL(613)을 상대/절대 URL 링크로 추출하는 동작을 포함할 수 있다.
다음으로, 동작 S62에서, 동작 S61에서 추출된 예측 대상 URL(611), 내부 URL(612) 및 외부 URL(613)로부터 특징 데이터를 추출하고, 기계 학습을 수행할 수 있는 형태로 전처리를 수행한다.
다음으로, 동작 S631에서, 동작 S62에 의해 전처리가 수행된 예측 대상 URL(611)을 복수의 기계 학습 모델에 입력하여 악성 URL인지 여부를 예측한다.
동작 S632에서는, 동작 S62에 의해 전처리가 수행된 내부 URL(612) 및 외부 URL(613)을 로지스틱 회귀 및 CNN 모델에 입력하여 악성 URL인지 여부를 예측한다.
다음으로, 동작 S64에서는, 동작 S631 및 동작 S632에서 예측된 각각의 결과에 각 모델의 성능을 반영하는 앙상블 기법을 이용하여 통합된 예측 결과가 출력된다. 여기서, 앙상블 기법은, 복수의 모델 각각의 예측 결과에 모델 각각의 정확도를 이용하여 계산된 가중치를 적용하는 것으로서, 정상 URL로 예측되는 경우와 악성 URL로 예측되는 경우 각각의 가중 평균값을 산출하여 결과를 예측할 수 있다.
동작 S65에서는, 예측 대상 URL(611), 내부 URL(612) 및 외부 URL(613)에 대한 위험도가 평가된다. 여기서, 위험도는, 각 URL(611, 612, 613)에 대한 위험 요소를 조회하여 위험 점수를 산출하고, 이를 동작 S64에 의한 예측 결과에 반영하여 계산될 수 있다.
마지막으로, 동작 S66에서, 동작 S64에 의한 예측 결과에 동작 S65에서 계산된 위험도를 추가 반영함에 의해, 예측 대상 URL이 악성인지 또는 정상인지 여부에 대한 최종 예측 결과가 출력된다.
도 7은 본 발명의 몇몇 실시예에 따른 다중 기계 학습 기반으로 생성된 복수의 모델 각각의 예측 결과에 모델 각각의 성능 수치를 적용하는 예이다. 도 7을 참조하면, 앙상블 서브 모듈(1232)에서 복수의 기계 학습 모델 각각을 이용하여 예측된 결과를 앙상블 기법을 활용하여 통합하는 예를 보여준다.
도시된 예에서, 예측 서브 모듈(1231)에서 복수의 기계 학습 모델에 의한 각각의 예측 결과(71)로서 악성 또는 정상 URL인지 여부(72)가 출력된다.
앙상블 서브 모듈(1232)은 학습 모듈(113)에서 생성된 복수의 모델(73) 각각의 정확도(74)와, 정확도(74)를 이용하여 계산된 모델 각각의 가중치(753)를 로드한다. 이 때, 모델 각각의 가중치(753)는, 각각의 정확도(74)의 평균 값(751)을 계산하고, 각각의 정확도(74)와 평균 값(751)의 차이로 계산되는 평균 편차(752)를 이용하여 산출될 수 있다.
앙상블 서브 모듈(1232)은 복수의 기계 학습 모델에 의한 각각의 예측 결과(71)로서 악성 또는 정상 URL인지 여부(72)가 입력되면, 악성 URL로 예측된 경우 및 정상 URL로 예측된 경우 각각에 대한 가중 평균값(76)을 산출한다. 예로서, 악성 URL로 예측된 경우의 가중 평균값(77)이 67.68이고, 정상 URL로 예측된 경우의 가중 평균값(77)이 58.8867 이므로, 더 큰 값을 가지는 악성 URL (78)을 최종 예측 결과로서 출력할 수 있다.
일 실시예로서, 앙상블 서브 모듈(1232)에서 출력된 최종 예측 결과는 위험도 평가 모듈(80)로 전달되어, 예측 대상 URL에 대한 위험 요소들을 추가적으로 반영한 결과를 생성할 수도 있다.
도 8은 본 발명의 몇몇 실시예에 따른 예측 대상 URL의 위험도 평가 과정을 도시한 예이다. 도 8을 참조하면, 본 발명의 실시예에 따른 다중 기계 학습 기반 악성 URL 예측 장치(1)는, 학습부(11) 및 예측부(12)의 구성에 추가적으로 위험도 평가 모듈(80)을 더 포함할 수 있다.
위험도 평가 모듈(80)은 도 7의 앙상블 서브 모듈(1232)로부터 출력되는 예측 결과(78)에 대해 추가적으로 위험도를 평가하여 최종 예측 결과에 반영할 수 있다.
일 실시예로서, 위험도 평가 모듈(80)은 예측 대상 URL에 대한 위험 요소(81)를 조회할 수 있다. 여기서, 위험 요소(81)는, 예측 대상 URL를 이용하여, 예컨대 Alex 랭크 조회 모듈, 블랙 리스트 조회 모듈, Virus Total 조회 모듈, 과거 악성 코드 유포 이력 조회 모듈 등을 이용하여 조회된 외부 또는 내부 데이터를 포함할 수 있다.
위험도 평가 모듈(80)은 위험 요소(81) 각각의 조회 결과를 이용하여 위험 점수를 계산하는 테이블(82)을 이용하여 위험 점수(83)를 산출하고, 이를 앙상블 서브 모듈(1232)로부터 출력되는 예측 결과(78)에 반영하여 위험도(84)를 산출할 수 있다. 예로서, 예측 결과(78)로서 출력된 악성 URL의 가중 평균값인 67.68과, 위험 점수(83)로서 계산된 14를 합한 값으로 위험도(84)를 계산할 수 있다.
상기와 같이, 위험도 평가 모듈(80)은 입력되는 예측 대상 URL 각각에 대한 위험도를 계산하고, 이를 이용하여 예측 대상 URL의 예측 결과를 출력할 수 있다. 즉, 예측 대상 URL에 대한 위험 요소(81)를 추가적으로 고려하여 계산된 위험도(84)를 이용하여 악성 URL인지 여부에 대한 최종 예측 결과를 얻을 수 있다. 일 실시예로서, 위험도 평가 모듈(80)에서 산출된 위험도에 관한 정보는 데이터 저장부(30)에 저장되어 관리될 수 있다.
도 10은 본 발명의 몇몇 실시예에 따른 방법들을 구현할 수 있는 예시적인 컴퓨팅 장치의 하드웨어 구성도이다. 도 10에 도시된 바와 같이, 컴퓨팅 장치(100)는 하나 이상의 프로세서(101), 버스(107), 네트워크 인터페이스(102), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램(105)을 로드(load)하는 메모리(103)와, 컴퓨터 프로그램(105)를 저장하는 스토리지(104)를 포함할 수 있다. 다만, 도 10에는 본 발명의 실시예와 관련 있는 구성요소들 만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 10에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.
프로세서(101)는 컴퓨팅 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서 중 적어도 하나를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 다양한 실시예들에 따른 방법/동작을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 컴퓨팅 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.
메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 다양한 실시예들에 따른 방법/동작들을 실행하기 위하여 스토리지(104)로부터 하나 이상의 프로그램(105)을 로드(load) 할 수 있다. 예를 들어, 컴퓨터 프로그램(105)이 메모리(103)에 로드 되면, 로직(또는 모듈)이 메모리(103) 상에 구현될 수 있다. 메모리(103)의 예시는 RAM이 될 수 있으나, 이에 한정되는 것은 아니다.
버스(107)는 컴퓨팅 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(107)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.
네트워크 인터페이스(102)는 컴퓨팅 장치(100)의 유무선 인터넷 통신을 지원한다. 네트워크 인터페이스(102)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(102)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.
스토리지(104)는 하나 이상의 컴퓨터 프로그램(105)을 비임시적으로 저장할 수 있다. 스토리지(104)는 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.
컴퓨터 프로그램(105)은 본 발명의 다양한 실시예들에 따른 방법/동작들이 구현된 하나 이상의 인스트럭션들(instructions)을 포함할 수 있다. 컴퓨터 프로그램(105)이 메모리(103)에 로드 되면, 프로세서(101)는 상기 하나 이상의 인스트럭션들을 실행시킴으로써 본 발명의 다양한 실시예들에 따른 방법/동작들을 수행할 수 있다.
예를 들어, 컴퓨터 프로그램(105)은 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 동작, 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 동작, 및 상기 모델 각각의 성능 수치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 동작을 수행하기 위한 인스트럭션들(instructions)을 포함할 수 있다.
지금까지 도 1 내지 도 10을 참조하여 본 발명의 다양한 실시예들 및 그 실시예들에 따른 효과들을 언급하였다. 본 발명의 기술적 사상에 따른 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
지금까지 설명된 본 발명의 기술적 사상은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명의 기술적 사상이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.
도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 발명이 다른 구체적인 형태로도 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명에 의해 정의되는 기술적 사상의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (17)

  1. 컴퓨팅 장치에 의해 수행되는 방법에 있어서,
    학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 단계;
    예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 단계;
    상기 복수의 모델 각각의 정확도를 이용하여 각 모델에 대한 가중치를 산출하는 단계; 및
    상기 산출된 가중치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  2. 제1 항에 있어서,
    상기 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 단계는,
    상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 단계;
    상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 단계; 및
    상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  3. 제2 항에 있어서,
    상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 단계는,
    상기 학습용 URL 데이터로부터 특징 데이터로서 URL 데이터, URL 콘텐츠 데이터, 및 URL 호스트 데이터를 추출하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  4. 제3 항에 있어서,
    상기 학습용 URL 데이터로부터 특징 데이터로서 URL 데이터, URL 콘텐츠 데이터, 및 URL 호스트 데이터를 추출하는 단계는,
    URL 접속 페이지 내에 포함된 내부 URL 및 외부 URL 각각을 상기 URL 데이터로서 추출하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  5. 제2 항에 있어서,
    상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 단계는,
    상기 학습용 URL 데이터로부터 추출된 특징 데이터의 유형에 따라 서로 다른 기계 학습 방법론에 기반한 기계 학습을 수행하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  6. 제5 항에 있어서,
    상기 학습용 URL 데이터로부터 추출된 특징 데이터의 유형에 따라 서로 다른 기계 학습 방법론에 기반한 기계 학습을 수행하는 단계는,
    상기 특징 데이터의 유형이 URL 데이터인 경우, CNN 또는 로지스틱 회귀(Logistic Regression) 알고리즘에 기반한 기계 학습을 수행하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  7. 제2 항에 있어서,
    상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 단계는,
    상기 생성된 모델 각각의 성능 수치로서 상기 모델 각각의 정확도(accuracy)를 측정하는 단계; 및
    상기 측정된 정확도를 이용하여 상기 모델 각각의 가중치를 결정하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  8. 제1 항에 있어서,
    상기 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 단계는,
    상기 예측 대상 URL에 대한 특징 추출 및 전처리 과정을 수행하는 단계;
    상기 특징 추출 및 전처리 과정이 완료된 상기 예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델 각각에 입력하는 단계; 및
    상기 각각의 모델로부터 악성 URL 여부에 대한 예측 결과를 출력하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  9. 제1 항에 있어서,
    상기 산출된 가중치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 단계는,
    상기 산출된 각 모델에 대한 가중치를 이용하여 상기 모델의 예측 결과가 악성 또는 정상인 경우 각각의 가중 평균값을 산출하는 단계; 및
    상기 각각의 가중 평균값에 기반하여 상기 예측 대상 URL이 악성 URL인지 여부를 판단하는 단계를 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  10. 제1 항에 있어서,
    상기 예측 대상 URL을 이용하여 적어도 하나의 위험 요소와 관련된 외부 데이터를 조회하는 단계;
    상기 각 위험 요소의 조회 결과를 이용하여 위험 점수를 산출하는 단계;
    상기 악성 URL인지 여부를 예측한 결과에 상기 위험 점수를 반영하여 위험도를 계산하는 단계; 및
    상기 위험도에 기반하여 상기 예측 대상 URL의 예측 결과를 출력하는 단계를 더 포함하는,
    다중 기계 학습 기반 악성 URL 예측 방법.
  11. 하나 이상의 프로세서;
    외부장치와 통신하는 통신 인터페이스;
    상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리; 및
    상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되,
    상기 컴퓨터 프로그램은,
    학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 동작,
    예측 대상 URL의 특징 데이터를 상기 생성된 복수의 모델에 입력하여 상기 모델 각각에 의한 예측 결과를 출력하는 동작,
    상기 복수의 모델 각각의 정확도를 이용하여 각 모델에 대한 가중치를 산출하는 동작, 및
    상기 산출된 가중치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 동작을 수행하기 위한 인스트럭션들(instructions)을 포함하는,
    다중 기계 학습 기반 악성 URL 예측 장치.
  12. 제11 항에 있어서,
    상기 학습용 URL 데이터를 이용한 기계 학습을 수행하여 복수의 모델을 생성하고, 상기 복수의 모델 각각의 성능 수치를 출력하되, 상기 복수의 모델은 서로 다른 기계 학습 방법론(methodology)에 의하여 생성되는 것인, 동작은,
    상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 동작,
    상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 동작, 및
    상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 동작을 포함하는,
    다중 기계 학습 기반 악성 URL 예측 장치.
  13. 제12 항에 있어서,
    상기 학습용 URL 데이터에 대한 특징 추출 및 전처리 과정을 수행하는 동작은,
    상기 학습용 URL 데이터로부터 특징 데이터로서 URL 데이터, URL 콘텐츠 데이터, 및 URL 호스트 데이터를 추출하는 동작을 포함하는,
    다중 기계 학습 기반 악성 URL 예측 장치.
  14. 제12 항에 있어서,
    상기 특징 추출 및 전처리 과정이 완료된 학습용 URL 데이터를 이용하여 상기 기계 학습을 수행하는 동작은,
    상기 학습용 URL 데이터로부터 추출된 특징 데이터의 유형에 따라 서로 다른 기계 학습 방법론에 기반한 기계 학습을 수행하는 동작을 포함하는,
    다중 기계 학습 기반 악성 URL 예측 장치.
  15. 제12 항에 있어서,
    상기 기계 학습을 통해 상기 복수의 모델을 생성하고, 상기 모델 각각의 성능을 검증하는 동작은,
    상기 생성된 모델 각각의 성능 수치로서 상기 모델 각각의 정확도(accuracy)를 측정하는 동작, 및
    상기 측정된 정확도를 이용하여 상기 모델 각각의 가중치를 결정하는 동작을 포함하는,
    다중 기계 학습 기반 악성 URL 예측 장치.
  16. 제11 항에 있어서,
    상기 산출된 가중치를 상기 모델 각각의 예측 결과에 적용하여 상기 예측 대상 URL이 악성 URL인지 여부를 예측하는 동작은,
    상기 산출된 각 모델에 대한 가중치를 이용하여 상기 모델의 예측 결과가 악성 또는 정상인 경우 각각의 가중 평균값을 산출하는 동작, 및
    상기 각각의 가중 평균값에 기반하여 상기 예측 대상 URL이 악성 URL인지 여부를 판단하는 동작을 포함하는,
    다중 기계 학습 기반 악성 URL 예측 장치.
  17. 제11 항에 있어서,
    상기 컴퓨터 프로그램은,
    상기 예측 대상 URL을 이용하여 적어도 하나의 위험 요소와 관련된 외부 데이터를 조회하는 동작,
    상기 각 위험 요소의 조회 결과를 이용하여 위험 점수를 산출하는 동작,
    상기 악성 URL인지 여부를 예측한 결과에 상기 위험 점수를 반영하여 위험도를 계산하는 동작, 및
    상기 위험도에 기반하여 상기 예측 대상 URL의 예측 결과를 출력하는 동작을 수행하기 위한 인스트럭션들을 더 포함하는,
    다중 기계 학습 기반 악성 URL 예측 장치.
KR1020200141625A 2020-10-29 2020-10-29 다중 기계 학습 기반 악성 url 예측 방법, 그리고 이를 구현하기 위한 장치 KR102313843B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200141625A KR102313843B1 (ko) 2020-10-29 2020-10-29 다중 기계 학습 기반 악성 url 예측 방법, 그리고 이를 구현하기 위한 장치
KR1020210134826A KR102438527B1 (ko) 2020-10-29 2021-10-12 Url과 연관된 콘텐츠와 호스트 데이터를 고려한 악성 url 예측 방법 및 이를 구현하기 위한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200141625A KR102313843B1 (ko) 2020-10-29 2020-10-29 다중 기계 학습 기반 악성 url 예측 방법, 그리고 이를 구현하기 위한 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210134826A Division KR102438527B1 (ko) 2020-10-29 2021-10-12 Url과 연관된 콘텐츠와 호스트 데이터를 고려한 악성 url 예측 방법 및 이를 구현하기 위한 장치

Publications (1)

Publication Number Publication Date
KR102313843B1 true KR102313843B1 (ko) 2021-10-15

Family

ID=78150897

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200141625A KR102313843B1 (ko) 2020-10-29 2020-10-29 다중 기계 학습 기반 악성 url 예측 방법, 그리고 이를 구현하기 위한 장치
KR1020210134826A KR102438527B1 (ko) 2020-10-29 2021-10-12 Url과 연관된 콘텐츠와 호스트 데이터를 고려한 악성 url 예측 방법 및 이를 구현하기 위한 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210134826A KR102438527B1 (ko) 2020-10-29 2021-10-12 Url과 연관된 콘텐츠와 호스트 데이터를 고려한 악성 url 예측 방법 및 이를 구현하기 위한 장치

Country Status (1)

Country Link
KR (2) KR102313843B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230061932A (ko) * 2021-10-29 2023-05-09 한국전자통신연구원 다중 학습 모델을 이용한 5g 엣지 네트워크 침입 탐지 장치 및 이를 이용한 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024106860A1 (ko) * 2022-11-18 2024-05-23 주식회사 포테이토넷 링크 특성 분석 기반의 비정상 웹 컨텐츠 탐지 방법 및 시스템
KR102561917B1 (ko) * 2022-12-27 2023-08-02 주식회사 데이터코볼트 유해 사이트 분류 방법
KR102561918B1 (ko) * 2022-12-27 2023-08-02 주식회사 데이터코볼트 머신러닝 기반의 유해 사이트 분류 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020052766A (ja) * 2018-09-27 2020-04-02 Kddi株式会社 判定装置及び判定方法
KR20200109677A (ko) 2019-03-14 2020-09-23 주식회사 에프원시큐리티 Ai 기반 머신러닝 교차 검증 기법을 활용한 악성코드 탐지 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020052766A (ja) * 2018-09-27 2020-04-02 Kddi株式会社 判定装置及び判定方法
KR20200109677A (ko) 2019-03-14 2020-09-23 주식회사 에프원시큐리티 Ai 기반 머신러닝 교차 검증 기법을 활용한 악성코드 탐지 장치 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230061932A (ko) * 2021-10-29 2023-05-09 한국전자통신연구원 다중 학습 모델을 이용한 5g 엣지 네트워크 침입 탐지 장치 및 이를 이용한 방법
KR102604380B1 (ko) * 2021-10-29 2023-11-23 한국전자통신연구원 다중 학습 모델을 이용한 5g 엣지 네트워크 침입 탐지 장치 및 이를 이용한 방법

Also Published As

Publication number Publication date
KR102438527B1 (ko) 2022-08-30
KR20220057426A (ko) 2022-05-09

Similar Documents

Publication Publication Date Title
KR102313843B1 (ko) 다중 기계 학습 기반 악성 url 예측 방법, 그리고 이를 구현하기 위한 장치
CN110399925B (zh) 账号的风险识别方法、装置及存储介质
US11481492B2 (en) Method and system for static behavior-predictive malware detection
US20100192222A1 (en) Malware detection using multiple classifiers
CN105893848A (zh) 一种基于代码行为相似度匹配的Android恶意应用程序防范方法
US20200104498A1 (en) Independent malware detection architecture
US11783034B2 (en) Apparatus and method for detecting malicious script
CN104956372A (zh) 使用运行时和静态代码分析来确定动态安全扫描的覆盖率
CN111107096A (zh) 一种Web站点安全防护方法及装置
KR102074909B1 (ko) 소프트웨어 취약점 분류 장치 및 방법
CN111641588A (zh) 网页模拟输入检测方法、装置、计算机设备及存储介质
CN109145030B (zh) 一种异常数据访问的检测方法和装置
Iliou et al. Towards a framework for detecting advanced web bots
JP2016192185A (ja) なりすまし検出システムおよびなりすまし検出方法
CN116866054A (zh) 公共信息安全监测系统及其方法
CN113312620B (zh) 一种程序安全检测方法及装置、处理器芯片、服务器
CN111382432A (zh) 一种恶意软件检测、分类模型生成方法及装置
CN114398465A (zh) 互联网服务平台的异常处理方法、装置和计算机设备
Suhuan et al. Android malware detection based on logistic regression and XGBoost
CN117579332A (zh) 网络威胁检测方法和装置
KR102068507B1 (ko) 기계 학습 모델의 신뢰도를 판단하기 위한 후처리 방법 및 이를 사용한 후처리 장치
CN111444093A (zh) 项目开发过程质量的确定方法、装置、计算机设备
CN113971284A (zh) 基于JavaScript的恶意网页检测方法、设备及计算机可读存储介质
KR20200067044A (ko) 악성 파일 탐지 방법 및 장치
CN112199573B (zh) 一种非法交易主动探测方法及系统

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant