KR102046789B1 - 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램 - Google Patents

웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102046789B1
KR102046789B1 KR1020190040188A KR20190040188A KR102046789B1 KR 102046789 B1 KR102046789 B1 KR 102046789B1 KR 1020190040188 A KR1020190040188 A KR 1020190040188A KR 20190040188 A KR20190040188 A KR 20190040188A KR 102046789 B1 KR102046789 B1 KR 102046789B1
Authority
KR
South Korea
Prior art keywords
intrusion detection
data
model
detection model
intrusion
Prior art date
Application number
KR1020190040188A
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 KR1020190040188A priority Critical patent/KR102046789B1/ko
Priority to US16/681,023 priority patent/US10778705B1/en
Application granted granted Critical
Publication of KR102046789B1 publication Critical patent/KR102046789B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • G06F17/211
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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/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
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

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

Abstract

본 발명은 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램에 관한 것으로서, 더욱 상세하게는 서버 팜으로 유입되는 네트워크 트래픽을 심층신경망(DNN, deep neural network) 모델의 입력으로 하여, 그 모델의 출력에 의해 해당 트래픽이 해커의 공격인지 여부를 탐지해내는 방법, 시스템 및 컴퓨터 프로그램에 관한 것이다.
본 발명에 의하면, 다양한 응용계층인 서비스 중 가장 일반적이며 기업의 대표성을 갖는 웹 서비스 프로토콜(HTTP : Hypertext Transfer Protocol)의 복잡한 메시지 형태에서 심층신경망을 활용함으로써 효과적인 침입탐지시스템을 제공하며, 특히, 시그니처 기반 보안시스템의 탐지방법을 우회하여 침투하는 보안 위협을 판별하는 웹 어플리케이션 침해위협 탐지 방법, 시스템 및 이를 구현한 컴퓨터 프로그램을 제공한다.

Description

웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램{Deep-learning-based intrusion detection method, system and computer program for web applications}
본 발명은 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램에 관한 것으로서, 더욱 상세하게는 서버 팜으로 유입되는 네트워크 트래픽을 심층신경망(DNN, deep neural network) 모델의 입력으로 하여, 그 모델의 출력에 의해 해당 트래픽이 해커의 공격인지 여부를 탐지해내는 방법, 시스템 및 컴퓨터 프로그램에 관한 것이다.
웹 어플리케이션이란 웹을 이용하는 소프트웨어의 집합이다. 즉 웹 브라우저나 웹 서버뿐만 아니라 웹 서버와 함께 서비스를 제공하는데 사용되는 써드 파티(third-party) 어플리케이션과 어플리케이션에 사용되는 데이터를 모두 포괄하는 의미이다. 웹 공격은 웹 서비스를 제공하는데 필요한 웹 어플리케이션을 공격하여 정상적인 웹 서비스를 방해하거나 정보의 유출, 변조, 악용하는 일련의 행위를 말하는 것이다.
웹 서비스는 telnet, ftp, e-mail 등의 연결형 인터넷 서비스와는 달리 비연결형, 개방형 서비스이다. 로그인을 통해 사용자의 인증을 요구하는 웹 서비스들도 로그인을 위한 페이지까지는 임의의 사용자가 접근할 수 있을 뿐만 아니라 대부분의 웹 서비스들은 회원이 아닌 다른 외부인들을 위한 서비스 페이지도 따로 보유하고 있는 경우도 많다. 즉 방화벽과 같은 접근관리시스템은 웹 서비스를 보호하기 위한 보안시스템으로 부적절하다. 또한 웹 서비스는 그 구성이 계층적 구조를 가지고 복잡한 시스템으로 연결되어 있다는 특징이 있다. 바로 이러한 특성들 때문에 웹 공격이 다른 인터넷 서비스 공격들과는 상이하며 완벽한 방어가 어려운 문제점이 있다.
회사나 기관에서 전자상거래 목적으로 사용하는 많은 수의 웹 어플리케이션 프로그램은 컴퓨터 보안의 주요 기능인 무결성, 기밀성, 가용성을 만족해야 한다. 이러한 웹 어플리케이션 프로그램은 HTML에 내장된 PHP, ASP, JAVA와 같은 스크립트 언어로 작성되어 데이터베이스에 연결하고 그 데이터를 검색하여 웹사이트에 저장한다. 그 외에도 모든 웹 콘텐츠는 검색된 데이터를 기반으로 하며 데이터베이스는 신용카드번호, 개인정보와 같은 중요한 사용자 입력 데이터를 저장한다. 공격자들은 다양한 공격 동기에 따라 보안이 고려되지 않은 웹 서비스를 찾고 웹 서비스의 HTTP 프로토콜을 이용하여 기존의 침입탐지시스템을 우회한 다음 웹 스크립트 언어를 이용하여 접근권한이 없음에도 불구하고 데이터베이스의 정보를 조작하거나 파괴, 유출을 시도한다.
이에 따라 웹 서비스를 좀 더 안전하게 제공하고 웹 서비스를 이용한 공격을 탐지하고 방어하는 연구의 필요성이 커지고 있으며, 다양한 웹 공격에 대해 신속하게 반응할 수 있고 오경보(false alarm)을 줄일 수 있도록 웹 서비스에 대해 특화된 침입탐지 시스템이 필요한 실정이다.
침입탐지 기법의 하나인 시그니처 기반 분석(signature-based analysis) 기법은 알려진 공격위협에 대응되는 특정한 패턴을 찾는 방법으로서 정규식을 통해 해당 문자열을 비교하여 이미 저장해둔 시그니처 목록을 분석한다. 만약 패킷의 페이로드에 시그니처에서 정의한 패턴이 확인된다면 공격으로 간주하며, 정확하고 제한적인 시그니처 목록은 오탐을 줄일 수 있다. 이러한 시그니처 기반 분석 기법은 최신의 시그니처 패턴을 유지한다면 매우 성공적일 수 있으나 제로데이 공격(zero-day attack, 보안 취약점이 발견되었을 때 그 문제의 존재 자체가 널리 공표되기도 전에 해당 취약점을 악용하여 이루어지는 보안 공격)과 같은 알려지지 않은 공격이나 최근 악성코드의 경우는 탐지가 불가능한 문제점이 있었다.
KR 10-1836214 B1
본 발명은 이와 같은 문제점을 해결하기 위해 창안된 것으로서, 다양한 응용계층인 서비스 중 가장 일반적이며 기업의 대표성을 갖는 웹 서비스 프로토콜(HTTP : Hypertext Transfer Protocol)의 복잡한 메시지 형태에서 심층신경망을 활용함으로써 효과적인 침입탐지시스템을 제공하며, 특히, 시그니처 기반 보안시스템의 탐지방법을 우회하여 침투하는 보안 위협을 판별하는 웹 어플리케이션 침해위협 탐지 방법, 시스템 및 이를 구현한 컴퓨터 프로그램을 제공하는데 그 목적이 있다.
이와 같은 목적을 달성하기 위하여 본 발명에 따른 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법은, (a) 웹 서버로의 트래픽 데이터에 대하여 전처리가 수행되어 형성된 입력 데이터를, 침입탐지를 위한 심층신경망 모델(이하 '침입탐지 모델'이라 한다)에 입력하는 단계; (b) 해당 트래픽 데이터에서 침입이 탐지되었는지 여부를, 상기 침입탐지 모델에서 출력하는 단계; 및 (c) 침입이 탐지된 경우 경보를 발생시키는 단계를 포함하고, 상기 단계(a)에서 생성되는 입력 데이터는, 특정 갯수의 워드 임베딩 벡터로 구성되며, 상기 단계(a) 이전에, (a0) 트래픽 데이터를 속성별로 분류한 데이터(이하 '속성 분류 데이터'라 한다)에 대하여 전처리를 수행하는 단계를 더 포함하고, 상기 단계(a0)는, (a01) 상기 속성 분류 데이터에서, 미리 정해진 하나 이상의 특정 속성들을 한 개의 필드로 병합하는 단계; (a02) 상기 병합된 데이터에서, 단어의 구분을 명확히 하기 위하여 특수 문자와 스톱(stop) 문자를 제거한 텍스트를 생성하는 단계; 및 (a03) 상기 단계(a02)에서 생성된 텍스트에서 각 단어를 벡터 값으로 매핑(임베딩)하여 상기 입력 데이터를 형성하는 단계를 포함하며, 상기 단계(a01)에서 상기 특정 속성들은, HTTP 프로토콜 구조상 시계열적 특성을 가짐과 동시에 속성 상호 간 연관성도 깊은, http 요청시 방법에 관한 정보, 요청(request)에 사용된 URI 정보 및, 클라이언트의 브라우저 정보만을 포함하고, 상기 단계(a01)의 병합 후, (a011) 정상과 비정상을 구분하는 라벨 필드를 추가하는 단계를 더 포함하며, 상기 단계(a03)에서, 단어를 벡터 값으로 임베딩 하기 위해 단어벡터를 랜덤하게 초기화한 뒤 모델을 학습하는 과정에서 업데이트 하고, 상기 벡터 값은, 단어간 의미의 연관성과 구분을 위해, 학습시에 가중치를 통해 업데이트 되며, 상기 침입탐지 모델은, 상기 침입탐지 모델과 동일하게 배열된 레이어에 의해 학습되어 형성되고, 상기 침입탐지 모델은, CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 하나로 구성된다.
삭제
삭제
삭제
삭제
삭제
삭제
본 발명의 다른 측면에 따르면, 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 시스템은, 적어도 하나의 프로세서; 및 컴퓨터로 실행가능한 명령을 저장하는 적어도 하나의 메모리를 포함하되, 상기 적어도 하나의 메모리에 저장된 상기 컴퓨터로 실행가능한 명령은, 상기 적어도 하나의 프로세서에 의하여, (a) 웹 서버로의 트래픽 데이터에 대하여 전처리가 수행되어 형성된 입력 데이터를, 침입탐지를 위한 심층신경망 모델(이하 '침입탐지 모델'이라 한다)에 입력하는 단계; (b) 해당 트래픽 데이터에서 침입이 탐지되었는지 여부를, 상기 침입탐지 모델에서 출력하는 단계; 및 (c) 침입이 탐지된 경우 경보를 발생시키는 단계가 실행되도록 하고, 상기 단계(a)에서 생성되는 입력 데이터는, 특정 갯수의 워드 임베딩 벡터로 구성되며, 상기 단계(a) 이전에, (a0) 트래픽 데이터를 속성별로 분류한 데이터(이하 '속성 분류 데이터'라 한다)에 대하여 전처리를 수행하는 단계를 더 포함하고, 상기 단계(a0)는, (a01) 상기 속성 분류 데이터에서, 미리 정해진 하나 이상의 특정 속성들을 한 개의 필드로 병합하는 단계; (a02) 상기 병합된 데이터에서, 단어의 구분을 명확히 하기 위하여 특수 문자와 스톱(stop) 문자를 제거한 텍스트를 생성하는 단계; 및 (a03) 상기 단계(a02)에서 생성된 텍스트에서 각 단어를 벡터 값으로 매핑(임베딩)하여 상기 입력 데이터를 형성하는 단계를 포함하며, 상기 단계(a01)에서 상기 특정 속성들은, HTTP 프로토콜 구조상 시계열적 특성을 가짐과 동시에 속성 상호 간 연관성도 깊은, http 요청시 방법에 관한 정보, 요청(request)에 사용된 URI 정보 및, 클라이언트의 브라우저 정보만을 포함하고, 상기 단계(a01)의 병합 후, (a011) 정상과 비정상을 구분하는 라벨 필드를 추가하는 단계를 더 포함하며, 상기 단계(a03)에서, 단어를 벡터 값으로 임베딩 하기 위해 단어벡터를 랜덤하게 초기화한 뒤 모델을 학습하는 과정에서 업데이트 하고, 상기 벡터 값은, 단어간 의미의 연관성과 구분을 위해, 학습시에 가중치를 통해 업데이트 되며, 상기 침입탐지 모델은, 상기 침입탐지 모델과 동일하게 배열된 레이어에 의해 학습되어 형성되고, 상기 침입탐지 모델은, CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 하나로 구성된다.
본 발명의 또 다른 측면에 따르면, 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지를 위한, 비일시적 저장매체에 저장된 컴퓨터 프로그램은, 비일시적 저장매체에 저장되며, 프로세서에 의하여, (a) 웹 서버로의 트래픽 데이터에 대하여 전처리가 수행되어 형성된 입력 데이터를, 침입탐지를 위한 심층신경망 모델(이하 '침입탐지 모델'이라 한다)에 입력하는 단계; (b) 해당 트래픽 데이터에서 침입이 탐지되었는지 여부를, 상기 침입탐지 모델에서 출력하는 단계; 및 (c) 침입이 탐지된 경우 경보를 발생시키는 단계가 실행되도록 하는 명령을 포함하고, 상기 단계(a)에서 생성되는 입력 데이터는, 특정 갯수의 워드 임베딩 벡터로 구성되며, 상기 단계(a) 이전에, (a0) 트래픽 데이터를 속성별로 분류한 데이터(이하 '속성 분류 데이터'라 한다)에 대하여 전처리를 수행하는 단계를 더 포함하고, 상기 단계(a0)는, (a01) 상기 속성 분류 데이터에서, 미리 정해진 하나 이상의 특정 속성들을 한 개의 필드로 병합하는 단계; (a02) 상기 병합된 데이터에서, 단어의 구분을 명확히 하기 위하여 특수 문자와 스톱(stop) 문자를 제거한 텍스트를 생성하는 단계; 및 (a03) 상기 단계(a02)에서 생성된 텍스트에서 각 단어를 벡터 값으로 매핑(임베딩)하여 상기 입력 데이터를 형성하는 단계를 포함하며, 상기 단계(a01)에서 상기 특정 속성들은, HTTP 프로토콜 구조상 시계열적 특성을 가짐과 동시에 속성 상호 간 연관성도 깊은, http 요청시 방법에 관한 정보, 요청(request)에 사용된 URI 정보 및, 클라이언트의 브라우저 정보만을 포함하고, 상기 단계(a01)의 병합 후, (a011) 정상과 비정상을 구분하는 라벨 필드를 추가하는 단계를 더 포함하며, 상기 단계(a03)에서, 단어를 벡터 값으로 임베딩 하기 위해 단어벡터를 랜덤하게 초기화한 뒤 모델을 학습하는 과정에서 업데이트 하고, 상기 벡터 값은, 단어간 의미의 연관성과 구분을 위해, 학습시에 가중치를 통해 업데이트 되며, 상기 침입탐지 모델은, 상기 침입탐지 모델과 동일하게 배열된 레이어에 의해 학습되어 형성되고, 상기 침입탐지 모델은, CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 하나로 구성된다.
삭제
삭제
본 발명에 의하면, 다양한 응용계층인 서비스 중 가장 일반적이며 기업의 대표성을 갖는 웹 서비스 프로토콜(HTTP : Hypertext Transfer Protocol)의 복잡한 메시지 형태에서 심층신경망을 활용함으로써 효과적인 침입탐지시스템을 제공하며, 특히, 시그니처 기반 보안시스템의 탐지방법을 우회하여 침투하는 보안 위협을 판별하는 웹 어플리케이션 침해위협 탐지 방법, 시스템 및 이를 구현한 컴퓨터 프로그램을 제공하는 효과가 있다.
도 1은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 데이터 셋을 구성하기 위한 네트워크 개념도.
도 2는 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법을 수행하는 순서도.
도 3은 트래픽 데이터에 대하여 속성별로 분류된 데이터(a) 및, 전처리된 학습 데이터(b)의 일 실시예를 나타내는 도면.
도 4는 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 시스템의 구성을 도시한 도면.
도 5는 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 일 실시예로서 CNN(convolutional neural network)의 구성을 나타내는 도면.
도 6은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 다른 실시예로서 LSTM(long short-term memory)-RNN(recurrent neural network)의 구성을 나타내는 도면.
도 7은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 또 다른 실시예로서 C-LSTM(convolutional long short-term memory)의 구성을 나타내는 도면.
도 8은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 침입탐지 성능 결과표를 도시한 도면.
도 9는 각 모델에 대해 스텝 별 정확도(accuracy)와 손실(loss)을 나타낸 ROC curve를 나타낸 도면.
이하 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
도 1은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 데이터 셋을 구성하기 위한 네트워크 개념도이다.
침입에 대한 분석기법으로는 크게 시그니처 분석 기반, 비정상 분석 기반, 상태 프로토콜 분석 등으로 구분할 수 있다.
- 시그니처 기반 분석
시그니처 기반 분석(signature-based analysis) 기법은 알려진 공격위협에 대응되는 특정한 패턴을 찾는 방법으로 아주 단순한 탐지 기법이라 할 수 있다. 이 기법은 정규식을 통해 해당 문자열을 비교하여 이미 저장해둔 시그니처 목록을 분석한다. 만약 패킷의 페이로드에 시그니처에서 정의한 패턴이 확인된다면 공격으로 간주한다. 정확하고 제한적인 시그니처 목록은 오탐을 줄일 수 있다. 이러한 시그니처 기반 분석 기법은 최신의 시그니처 패턴을 유지한다면 매우 성공적일 수 있으나 제로데이 공격과 같은 알려지지 않은 공격이나 최근 악성코드의 경우는 탐지가 불가능하다.
- 비정상 기반 분석
비정상 기반 분석(anomaly-based analysis) 기법은 네트워크 행위를 정의하는 것에 기반을 둔다. 네트워크 행위는 사전 정의된 행위에 따른 것으로 비정상 탐지 시 이벤트를 발생시킨다. 네트워크 행위를 정의하는데 있어서 중요한 단계는 모든 프로토콜 단계에서 처리할 수 있는 침입탐지시스템 엔진의 성능이다. 이러한 비정상 기반 분석 기법은 프로토콜 분석에 따르는 계산적 비용은 증가하지만, 탐지규칙집합(ruleset)을 증가시켜 오탐을 줄일 수 있다. 주요 단점은 탐지규칙집합을 정의하는 것이다. 비정상 기반 탐지시스템의 성능은 모든 프로토콜 상에서 얼마나 잘 실행되고 테스트되는 것이냐에 따른 것인데 이러한 규칙을 정의하는 과정은 다양한 벤더에 의해 생성된 다양한 프로토콜에 의해 영향을 받는다. 이 외에도 사용자가 프로토콜을 정의하는 것도 어려운 일이다. 올바른 탐지를 위해서는 네트워크 행위에 대한 상세한 지식을 가진 관리자에 의해서 개발되는 것이 필요하다. 시그니처 기반 분석 기법과 비교해 볼 때 비정상 기반 분석의 주요 이점은 시그니처가 정의되지 않은 공격에 대해서도 정상 트래픽 패턴을 벗어나는 행위를 분석하여 탐지할 수 있다는 것으로 새로운 웜(warm) 등과 같은 공격 유형을 탐지할 수 있다.
- 상태 프로토콜 분석(stateful protocol analysis)
상태 프로토콜 분석(stateful protocol analysis) 기법은 네트워크에서 심층 패킷 조사(DPI : Deep Packet Inspection)라 불리기도 하는데 각 프로토콜 상태에서 일반적으로 정상적인 프로토콜 행위를 정의한 프로파일들을 비교하는 과정을 거친다. 상태 프로토콜 분석은 동일한 명령을 반복해서 입력하는 것과 같은 예기치 못한 명령체계를 식별할 수 있으며 각 세션을 통해 권한자의 행위를 추적하거나 의심스러운 행동을 기록할 수 있다. 이러한 분석 기법은 사건을 조사하는데 유용하다. 비정상 기반은 사전에 정의된 네트워크 또는 호스트에 특정된 프로파일을 채택하는 반면 상태 프로토콜 분석은 공급 업체가 개발한 프로파일을 통해 특정 프로토콜을 분석한다는 측면에서 서로 구분된다.
도 1의 네트워크 개념도는 연구의 목표와 이해를 돕기 위해 대부분 기업이나 기관에서 기본적으로 구성하고 있는 보안환경을 일반화하여 표현한 것이다.
인터넷을 통해 기관의 홈페이지 이용을 위해서는 제일 처음 방화벽(510)을 통과한다. 방화벽은 OSI 7 Layer의 제 3계층인 IP와 4계층인 전송 프로토콜(TCP, UDP 등)에 대해 기본적인 접근제어의 역할을 하며 홈페이지 서버의 과다 접속을 유발하는 디도스 공격에 대해서도 일부 방어를 담당하기도 한다. 방화벽을 통과한 트래픽은 침입방지시스템(IPS)(520)에서 두 번째 검열을 받는다. IPS(520)는 기관 홈페이지를 대상으로 바이러스나 악성코드의 유입, 비정상 프로토콜, 디도스 공격 등 사전 정의된 탐지규칙(rule) 기반의 침해위협을 탐지하고 차단하는 역할을 수행한다. IPS를 통과한 트래픽은 웹 서비스의 보안위협을 전담하여 방어하는 웹 방화벽(530)을 거친다. 웹 방화벽(530)은 기관에서 운영하는 웹 서비스를 대상으로 OWASP에서 정의한 위협을 포함한 다양한 홈페이지 침해위협을 탐지하고 차단한다.
이와 같은 보안시스템은 제조사마다 일부 다른 기법을 사용할 수 있겠으나 전형적인 시그니처 기반의 침입탐지 정책을 기본적으로 사용하고 있다.
본 발명은 현재 보편적으로 사용하고 있는 다양한 보안시스템에서 탐지하지 못한 침해위협을 심층신경망 기법을 통하여 효과적으로 탐지하기 위한 것이며, 이하 도 2를 참조하여서는 이와 같은 본 발명의 딥러닝 기반의 침입탐지 방법을 수행하는 방법을 설명하기로 한다.
도 2는 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법을 수행하는 순서도이고, 도 3은 트래픽 데이터에 대하여 속성별로 분류된 데이터(a) 및, 전처리된 학습 데이터(b)의 일 실시예를 나타내는 도면이다.
먼저 서버 팜(550)으로 유입되는 트래픽 데이터를 수집한다(S210). 분석을 위한 데이터의 구성을 위해 보안시스템을 통과하여 웹 서버(홈페이지 서버)로 유입되는 모든 트래픽의 수집이 필요하다. 따라서 효과적 분석을 위해 웹 서버들로 구성되어 있는 서버 팜(550, 도 1 참조) 용 네트워크 스위치(540, 도 1 참조)에서 트래픽 미러링 기법을 사용하여 홈페이지 서버로 유입되는 모든 트래픽을 별도의 트래픽 수집 및 분석을 위한 트래픽 분류부(110, 도 1, 도 4 참조)로 복사(copy)하여 수집한다.
이후, 수집된 트래픽 데이터의 분석 및 분류를 실시한다(S220). 침해위협탐지를 위한 트래픽 분석 및 분류를 위해 일 실시예로서, 유닉스 기반의 네트워크 트래픽 모니터링 오픈 소스인 'bro'를 사용할 수 있다. bro는 전통적으로 보안시스템에서 사용하고 있는 오픈소스 플랫폼인 snort보다 라이선스 정책이 유연하고 사용에 제한이 없다. 시그니처 기반의 snort에서는 시그니처 엔진에 해당하지 않는 패킷은 폐기하는 반면에 bro는 모든 트래픽을 저장하여 분석하기 때문에 비정상 행위 분석에 더 뛰어난 장점이 있다. 또한 bro에서 제공하는 별도의 프로그래밍 언어를 사용하면 개발자의 의도대로 정교한 트래픽 분류가 용이하다는 장점이 있는데, 이러한 특성이 심층신경망(DNN, deep neural network)을 활용하는 인공지능 기반의 침해탐지를 위해서 매우 최적화되어 있다고 할 수 있다. bro에서 표시되는 웹 서비스의 트래픽 속성은 표 1에 나타난 바와 같이 총 40가지이다.
순번 속성값 의미 표현값(예시)
1 ts 요청이 발생된 시점(시간) 1507257604.88963
2 uid 연결 고유값 (ID) CR4Kaj3HVuUOSPEN
3 orig_h 출발지 IP Address 192.168.0.30
4 orig_p 출발지 tcp port addrss 48477
5 rsp_h 목적지 IP Address 11.1.1.3
6 resp_p 목적지 tcp port Address 80
7 trans_depth 요청/응답 시 연결정보의깊이
(파이프라인으로 표시)
정수 (1, 3, 15 ...등)
8 Method http 요청시 정보 (방법) GET, POST, HEAD 등
9 Host URL 정보 www.bro.org
10 Uri URI used in the request. /board/index.html
11 referrer 참조 헤더값 www.naver.com
12 version HTTP 버전정보 1.1
13 user_agent 클라이언트 브라우저 정보 Mozilla/5.0
14 request_body_len 클라이언트에서 전달된 압축되지 않은 데이터 크기 정수 (default value = 0)
15 response_body_len 서버에서 전달된 압축되지 않은 데이터 크기 정수 (default value = 0)
16 status_code 서버에서의 응답값 200, 404, 300 등
17 status_msg 서버에서 응답한 메시지 종류 OK, Moved Temporary, no Content 등
18 info_code 서버에서 응답한 100번대의 응답코드 101
19 info_msg 서버에서 응답한 100번대의 응답 메시지 101
20 tags 특정 요청/응답 쌍과 관련된 속성지표 셋 Http::URI_SQLI
21 username 요청시 사용자 계정정보 root
22 password 요청시 사용자 비밀번호 password
23 capture_password 요청시 나타난 비밀번호에 대해 캡쳐 여부를 결정
24 proxied 요청이 프록시 되었는지를 나타내는 모든 헤더 정보
25 range_request 이 요청이 응답으로 206 컨텐트를 취할 수 있는지 여부를 나타냄 default = F
26 orig_fuids 요청이 프록시 되었는지를 나타내는 모든 헤더 정보
27 orig_filenames 클라이언트의 파일 이름이 순서화 된 벡터
28 orig_mime_types mime types의 순서화된 벡터
29 resp_fuids 파일 고유 ID의 정렬 된 벡터
30 resp_filenames 서버의 파일 이름이 순서화 된 벡터
31 resp_mime_types mime types의 순서화된 벡터
32 current_entity 현재 엔티티
33 orig_mime_depth HTTP 요청 메시지 본문의 현재 MIME 엔터티 수
34 resp_mime_depth HTTP 응답 메시지 본문의 현재 MIME 엔터티 수
35 client_header_names 클라이언트가 보낸 HTTP 헤더 이름의 벡터
36 server_header_names 서버가 보낸 HTTP 헤더 이름의 벡터
37 omniture 서버의 광고서버 역할 여부
38 flash_version 분석되지 않은 플래시 버전
39 cookie_vars 모든 쿠키값에서 추출된 모든 변수명
40 uri_vars URI에서 나타난 다양한 변수
도 3의 (a)는, bro를 통해 위 표 1의 속성별로 분류된 웹 서비스 트래픽 정보를 일부 발췌하여 나타낸 것이다. bro를 통해 보내진 HTTP 요청(request)과 응답(response) 패킷의 메시지 내용을 포함하여 웹 서비스와 관련된 모든 속성을 구분할 뿐만 아니라 웹 클라이언트와 서버간의 유일성(세션) 정보 및 시간 등 추가적인 정보도 표시한다.
1~6번 속성은 시간(time stamp), 사용자 연결 식별자(uid), 출발지 및 목적지의 IP주소와 TCP포트 정보를 포함하는 연결정보로 구성된다. 여기서 중요한 속성 중 하나인 uid는 연결 생존시간(lifetime) 동안 주어진 연결정보 4-tuple (origin_host, origin_port, response_host, response_port)을 가지고 bro에서 분류한 다른 서비스 트래픽 정보(telnet, ftp, mail 등)와 연관되어 활동 이력을 식별할 수 있다. 즉, 속성 7번 부터는 uid를 기준으로 발생하는 활동 이력을 상세히 나타낸 것이다.
웹 서비스는 다양한 스크립트 언어를 사용한다. 그리고 이 스크립트 언어는 데이터베이스와 연결되어 있으며 사용자는 이 스크립트 언어를 통해 데이터베이스에 접속하여 정보를 검색하거나 저장, 수정할 수 있다. 많은 웹 서비스 해킹사고가 바로 이러한 스크립트 구성의 취약점으로 인해 발생되는데 그 이유는 사전 정의된 규칙으로 침입을 탐지하는 시그니처 기반의 보안시스템이 탐지하기가 어려운 비정형화된 구문 구조이기 때문이다. 일반적으로 웹 서비스를 이용할 때 클라이언트(브라우저)에서 서버로 전송되는 요청 값(문자열)은 8, 10, 13번 속성이 주를 이룬다. 본 발명에서는 기존 침입탐지시스템에서 탐지하기 어려운 이 세 가지 속성에 대하여 침해위협을 탐지하는 방법에 초점을 맞춘다.
트래픽 데이터의 분류 이후, 분류된 트래픽 데이터에 대한 전처리를 수행한다(S230). 데이터 전처리의 첫번째 과정은 데이터 재조정 단계로 트래픽 분류부에서 분류한 총 40가지 웹 서비스 속성 중 불필요한 속성을 제거한 17개 속성으로 축소하는 것이다. 표 2는 1차 축소한 17개 속성을 나타낸다. 속성 14번~17번은 클라이언트와 웹 서버 간 송수신 과정에서 데이터 크기나 메시지 등 상태 정보를 제공해주는 부가 속성으로 침입탐지와 직접적인 관련은 적지만 트래픽 세부 분석 필요시 도움을 준다.
순번 속성값 의미 표현값(예시)
1 ts 요청이 발생된 시점(시간) 1507257604.88963
2 uid 연결 고유값 (ID) CR4Kaj3HVuUOSPEN
3 orig_h 출발지 IP Address 192.168.0.30
4 orig_p 출발지 tcp port addrss 48477
5 rsp_h 목적지 IP Address 11.1.1.3
6 resp_p 목적지 tcp port Address 80
7 trans_depth 요청/응답 시 연결정보의깊이 (파이프라인으로 표시) 정수 (1, 3, 15 ...등)
8 Method http 요청시 정보 (방법) GET, POST, HEAD 등
9 host URL 정보 www.bro.org
10 uri URI used in the request. /board/index.html
11 referrer 참조 헤더값 www.naver.com
12 version HTTP 버전정보 1.1
13 useragent 클라이언트 브라우저 정보 Mozilla/5.0
14 request_body_len 클라이언트에서 전달된 압축되지 않은 데이터 크기 정수 (default value = 0)
15 response_body_len 서버에서 전달된 압축되지 않은 데이터 크기 정수 (default value = 0)
16 status_code 서버에서의 응답값 200, 404, 300 등
17 status_msg 서버에서 응답한 메시지 종류 OK,Moved Temporary, no Content 등
다만 본 발명에서는 HTTP 원시로그에서의 침입 탐지 성능을 목표로 하고 있으므로 표 2의 17개 속성 모두를 사용하지 않고 중요 정보를 담고 있는 8, 10, 13번 속성만 사용한다.
8, 10, 13번 속성은 HTTP 프로토콜 구조상 시계열적 특성을 가짐과 동시에 속성 상호 간 연관성도 깊다. 따라서 세 개의 필드로 구분된 속성을 연속적인 문장 구조로 만들기 위해 한 개의 필드로 병합하였다. 이후 정상과 비정상을 구분하는 라벨 필드를 추가하였다. 도 3(b)에서 보여지는 것과 같이 라벨 속성에서 '0'은 정상을 의미하며 '1'은 공격을 의미한다. content 속성은 앞에서 설명한 8, 10, 13번 세 개의 속성을 병합한 것이다.
데이터 전처리의 두번째 과정은 특수 문자와 스톱 문자를 제거하여 단어의 구분을 명확히 한 다음 분석에 사용될 심층신경망 모델들에 입력으로 적용하기 위해 워드 임베딩 기법을 이용하여 텍스트로 구성된 단어를 숫자형태의 벡터 값으로 변환하는 것이다. 단어를 벡터 값으로 임베딩 하기 위해 단어벡터를 랜덤하게 초기화한 뒤 모델을 학습하는 과정에서 업데이트 하는 방법을 사용할 수 있다.
즉, 홈페이지 서버 팜으로 유입된 원시데이터 중 일부를 무작위 선택하여 데이터 셋을 구성하고, 데이터 셋은 모델 학습을 위한 데이터 셋과 테스트를 위한 데이터 셋으로 구분한 후, 먼저 딥러닝 기반의 침입탐지 모델을 학습시키기 위하여 데이터 셋(set)을 모델에 입력하여 학습을 수행하는 것이다(S240). 딥러닝 기반의 침입탐지 모델의 구조로는 CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 하나를 사용할 수 있는데, 각각의 구조에 대하여는 도 5 내지 도 7을 참조하여 간략히 후술하기로 한다.
모델이 형성된 후에는 테스트를 위하여 전처리된 데이터 셋을 모델에 입력하여 테스트를 수행하고(S250), 테스트를 거쳐 모델이 확정된 후에는 전처리된 실제 트래픽 데이터 셋을 모델에 입력하여 트래픽 데이터의 공격 여부를 판별해 낸다(S260).
도 4는 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 시스템(100)의 구성을 도시한 도면이다.
본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 시스템(100)은, 트래픽 분류부(traffic classifier)(110)와 전처리부(preprocessor)(120), 침입탐지부(intrusion detector)(130)로 구분될 수 있다.
트래픽 분류부(110)는 침입탐지용으로 개발된 오픈소스 기반의 bro 플랫폼을 사용하였다. bro는 보호하고자 하는 대상의 모든 실시간 트래픽을 수집하고 불필요한 정보 제거 후 각 서비스 프로토콜 별로 분류하는 역할을 수행한다.
전처리부(120)에서는 트래픽 분류부(110)의 결과 데이터를 수정, 삭제, 추가 등의 데이터를 가공한 후 인공지능 입력으로 적용하기 위해 보안위협정보를 추출하고 데이터 셋을 구성하며, 이와 같은 전처리 과정에 대하여는 도 2를 참조하여 상세히 설명한 바 있다.
침입탐지부(130)에서는 각 공격유형별로 정의된 데이터 셋을 탐지하고자 하는 어플리케이션 특성에 맞게 최적의 인공지능 기법(기계학습 또는 심층신경망)으로 학습시켜 침입시도가 탐지되면 보안경보를 발생시키는 역할을 수행한다. 즉, 침입탐지부에 전술한 바와 같은 침입탐지 모델이 탑재되고, 이러한 침입탐지 모델은 CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 어느 하나의 구조를 가질 수 있으며, 이에 대하여는 이하 도 5 내지 도 7을 참조하여 설명한다.
도 5는 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 일 실시예로서 CNN(convolutional neural network)의 구성을 나타내는 도면이고, 도 6은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 다른 실시예로서 LSTM(long short-term memory)-RNN(recurrent neural network)의 구성을 나타내는 도면이고, 도 7은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 또 다른 실시예로서 C-LSTM(convolutional long short-term memory)의 구성을 나타내는 도면이다.
먼저 각 구조에서 워드 임베딩을 통해 데이터 셋의 content 속성에서 단어를 추출하고 인덱싱(색인화)하여 lookup 테이블을 구성한다. 임베딩은 단어를 특정차원의 벡터 값으로 매핑 시켜주는 것으로 변환된 벡터 값은 단어간 의미의 연관성과 구분을 위해 학습 시 가중치(w)를 통해 업데이트 된다.
CNN, C-LSTM에서 사용되는 컨벌루션 레이어(convolution layer)에서는 일 실시예로서 3, 4, 5의 크기를 갖는 3개의 필터를 사용하고 필터 수는 128개이다. 필터가 1칸씩(stride=1) 슬라이딩 하면서 지역정보를 추출하고 필터 수 만큼 특징을 추출하여 필터 수 만큼 피처 맵을 생성하도록 할 수 있다.
CNN 모델에서는 피처 맵 생성 후 맥스풀링(Max-pooling) 과정을 거치지만 C-LSTM에서는 맥스풀링 과정을 생략한다. 맥스풀링을 수행하면 각 피처 맵에서 최대값을 취하여 입력 값을 샘플링 함으로써 고정된 차원의 출력으로 매핑할 수 있고 차원을 줄일 수 있다. 그러나 C-LSTM에서는 차원의 고정이나 축소 없이 피처 맵에서 추출한 정보를 결합(concatenate) 한 후 출력 값을 다음 LSTM의 입력으로 사용한다.
LSTM 셀은 2개로 구성되며 각 LSTM 셀 당 숨겨진 유닛(hidden unit)은 128개이다. 마지막으로 LSTM에서 나온 값을 fully-connected layer를 통과시켜 각 클래스(0, 1)에 해당하는 점수를 낸 뒤 침입탐지 분류를 수행하게 되며 결과에 대한 오류 역전파를 수행해 가중치 등 파라미터들을 업데이트 하는 일반적인 과정을 거치게 된다. 표 3은 전술한 침입탐지 모델의 일 실시예로서의 하이퍼 파라미터를 정리한 것이다.
모델 임베딩사이즈 필터 크기 필터수 Conv.
layer
LSTM
Cell
hidden
unit
Drop
out
학습률 활성
함수
CNN 256 3,4,5 128 1 - - 50% 0.001 ReLU,
Softmax
LSTM-RNN 256 - - - 2 128
50%
0.001 Tanh, sigmoid,
Softmax
C-LSTM 256 3,4,5 128 1 2 128 50% 0.001 ReLU
sigmoid
Softmax
도 8은 본 발명의 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 모델의 침입탐지 성능 결과표를 도시한 도면이고, 도 9는 각 모델에 대해 스텝 별 정확도(accuracy)와 손실(loss)을 나타낸 ROC curve를 나타낸 도면이다.
본 발명에서, 결과는 정상은 '0', 공격은 '1'로 구분하는 이진 분류를 할 수 있다. 따라서, '0' 또는 '1' 중 어느 하나를 분류하는 것은 표 4의 혼동 행렬(Confusion Matrix)을 기본으로 예측할 수 있다.
구분 Predicted
Negative Class
(normal)
Positive Class
(attack)
Observed Negative Class
(normal)
TN
(True Negative)
FP
(False Positive)
Positive Class
(attack)
FN
(False Negative)
TP
(True Positive)
표 4에서 TP(True Positive)는 다수의 공격이벤트를 실제 공격으로 분류한 수의 측정값, FN(False Negative)은 다수의 정상 이벤트를 공격으로 잘못 분류한 수의 측정값, FP(False Positive)는 다수의 공격이벤트를 정상으로 잘못 분류한 수의 측정값, TN(True Negative)은 다수의 정상이벤트를 실제 정상으로 분류한 수의 측정값을 의미한다.
Metric 계산식
정밀도(Precision) TP / (TP + FP)
재현률(Recall,Detection Rate) TP / (TP + FN)
정확도(Accuracy) (TP + TN) / (TN + TP + FN +FP)
F1 score (2*Precision*Recall)/
(precision+recall)
표 5는 혼동 행렬을 기반으로 침입탐지의 성능을 계산하기 위한 기본 평가지표를 나타낸 것이다.
정밀도(precision)는 알고리즘이 검출한 공격의 개수 중 실제로 공격인 데이터의 비율을 의미한다. 반면에 재현률(recall)은 탐지하고자 하는 데이터를 얼마나 잘 찾아냈는지를 의미하는 것으로 민감도(sensitive), 탐지율(detection rate)이라고도 불려진다. 정밀도를 높이려면 해당 클래스에 속할 확률이 매우 높은 경우만 예측하면 되지만 이 경우 재현률은 낮아진다. 왜냐하면 실제 해당클래스에 속하지만 확률이 낮아서 제외된 데이터들이 다수 존재하기 때문이다. 정밀도와 재현률을 동시에 고려하는 것이 F1 score이다. F1 score는 정밀도(precision)와 재현율(recall)과의 조화 평균으로 기계학습 기반의 침입탐지 성능 측정 시 유용하다.
도 8의 분석 결과값은 전체 14,215 데이터 레코드에 대해 한번에 학습할 입력 레코드를 256으로(batch size = 256) 나누어서 학습을 진행하였다. 이 과정을 전체 20회 반복(epoch = 20)하여 각 스텝 별 결과값(총 스텝 수 = 989)을 평균한 것이다.
결과에서 보는 바와 같이 LSTM-RNN 모델이 재현율(recall) 0.966, 정확도(accuracy) 0.997, F1 score 0.898로 다른 모델에 비해 전반적으로 우수한 성능을 나타냈다. 정밀도(precision) 측면에서는 CNN 모델이 0.899로 우수한 성능을 나타냈다. 반면에 C-LSTM은 재현율, 정확도, 정밀도 등 타 모델 비교 시 전반적으로 성능이 낮게 나타났다. 전술한 바와 같이 도 9는 각 모델에 대해 스텝 별 정확도(accuracy)와 손실(loss)을 나타낸 ROC curve를 나타낸 도면이다.
100: 딥러닝 기반의 침입탐지 시스템
110: 트래픽 분류부
120: 전처리부
130: 침입탐지부
140: 경보부
510: 방화벽
520: 침입방지 시스템
530: 웹 방화벽
540: 서버 팜 스위치
550: 서버 팜

Claims (14)

  1. 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법으로서,
    (a) 웹 서버로의 트래픽 데이터에 대하여 전처리가 수행되어 형성된 입력 데이터를, 침입탐지를 위한 심층신경망 모델(이하 '침입탐지 모델'이라 한다)에 입력하는 단계;
    (b) 해당 트래픽 데이터에서 침입이 탐지되었는지 여부를, 상기 침입탐지 모델에서 출력하는 단계; 및
    (c) 침입이 탐지된 경우 경보를 발생시키는 단계
    를 포함하고,
    상기 단계(a)에서 생성되는 입력 데이터는,
    특정 갯수의 워드 임베딩 벡터로 구성되며,
    상기 단계(a) 이전에,
    (a0) 트래픽 데이터를 속성별로 분류한 데이터(이하 '속성 분류 데이터'라 한다)에 대하여 전처리를 수행하는 단계
    를 더 포함하고,
    상기 단계(a0)는,
    (a01) 상기 속성 분류 데이터에서, 미리 정해진 하나 이상의 특정 속성들을 한 개의 필드로 병합하는 단계;
    (a02) 상기 병합된 데이터에서, 단어의 구분을 명확히 하기 위하여 특수 문자와 스톱(stop) 문자를 제거한 텍스트를 생성하는 단계; 및
    (a03) 상기 단계(a02)에서 생성된 텍스트에서 각 단어를 벡터 값으로 매핑(임베딩)하여 상기 입력 데이터를 형성하는 단계
    를 포함하며,
    상기 단계(a01)에서 상기 특정 속성들은,
    HTTP 프로토콜 구조상 시계열적 특성을 가짐과 동시에 속성 상호 간 연관성도 깊은, http 요청시 방법에 관한 정보, 요청(request)에 사용된 URI 정보 및, 클라이언트의 브라우저 정보
    만을 포함하고,
    상기 단계(a01)의 병합 후,
    (a011) 정상과 비정상을 구분하는 라벨 필드를 추가하는 단계
    를 더 포함하며,
    상기 단계(a03)에서,
    단어를 벡터 값으로 임베딩 하기 위해 단어벡터를 랜덤하게 초기화한 뒤 모델을 학습하는 과정에서 업데이트 하고,
    상기 벡터 값은,
    단어간 의미의 연관성과 구분을 위해, 학습시에 가중치를 통해 업데이트 되며,
    상기 침입탐지 모델은,
    상기 침입탐지 모델과 동일하게 배열된 레이어에 의해 학습되어 형성되고,
    상기 침입탐지 모델은,
    CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 하나로 구성되는,
    웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 시스템으로서,
    적어도 하나의 프로세서; 및
    컴퓨터로 실행가능한 명령을 저장하는 적어도 하나의 메모리를 포함하되,
    상기 적어도 하나의 메모리에 저장된 상기 컴퓨터로 실행가능한 명령은, 상기 적어도 하나의 프로세서에 의하여,
    (a) 웹 서버로의 트래픽 데이터에 대하여 전처리가 수행되어 형성된 입력 데이터를, 침입탐지를 위한 심층신경망 모델(이하 '침입탐지 모델'이라 한다)에 입력하는 단계;
    (b) 해당 트래픽 데이터에서 침입이 탐지되었는지 여부를, 상기 침입탐지 모델에서 출력하는 단계; 및
    (c) 침입이 탐지된 경우 경보를 발생시키는 단계
    가 실행되도록 하고,
    상기 단계(a)에서 생성되는 입력 데이터는,
    특정 갯수의 워드 임베딩 벡터로 구성되며,
    상기 단계(a) 이전에,
    (a0) 트래픽 데이터를 속성별로 분류한 데이터(이하 '속성 분류 데이터'라 한다)에 대하여 전처리를 수행하는 단계
    를 더 포함하고,
    상기 단계(a0)는,
    (a01) 상기 속성 분류 데이터에서, 미리 정해진 하나 이상의 특정 속성들을 한 개의 필드로 병합하는 단계;
    (a02) 상기 병합된 데이터에서, 단어의 구분을 명확히 하기 위하여 특수 문자와 스톱(stop) 문자를 제거한 텍스트를 생성하는 단계; 및
    (a03) 상기 단계(a02)에서 생성된 텍스트에서 각 단어를 벡터 값으로 매핑(임베딩)하여 상기 입력 데이터를 형성하는 단계
    를 포함하며,
    상기 단계(a01)에서 상기 특정 속성들은,
    HTTP 프로토콜 구조상 시계열적 특성을 가짐과 동시에 속성 상호 간 연관성도 깊은, http 요청시 방법에 관한 정보, 요청(request)에 사용된 URI 정보 및, 클라이언트의 브라우저 정보
    만을 포함하고,
    상기 단계(a01)의 병합 후,
    (a011) 정상과 비정상을 구분하는 라벨 필드를 추가하는 단계
    를 더 포함하며,
    상기 단계(a03)에서,
    단어를 벡터 값으로 임베딩 하기 위해 단어벡터를 랜덤하게 초기화한 뒤 모델을 학습하는 과정에서 업데이트 하고,
    상기 벡터 값은,
    단어간 의미의 연관성과 구분을 위해, 학습시에 가중치를 통해 업데이트 되며,
    상기 침입탐지 모델은,
    상기 침입탐지 모델과 동일하게 배열된 레이어에 의해 학습되어 형성되고,
    상기 침입탐지 모델은,
    CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 하나로 구성되는,
    웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 시스템.
  10. 삭제
  11. 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지를 위한, 비일시적 저장매체에 저장된 컴퓨터 프로그램으로서,
    비일시적 저장매체에 저장되며, 프로세서에 의하여,
    (a) 웹 서버로의 트래픽 데이터에 대하여 전처리가 수행되어 형성된 입력 데이터를, 침입탐지를 위한 심층신경망 모델(이하 '침입탐지 모델'이라 한다)에 입력하는 단계;
    (b) 해당 트래픽 데이터에서 침입이 탐지되었는지 여부를, 상기 침입탐지 모델에서 출력하는 단계; 및
    (c) 침입이 탐지된 경우 경보를 발생시키는 단계
    가 실행되도록 하는 명령을 포함하고,
    상기 단계(a)에서 생성되는 입력 데이터는,
    특정 갯수의 워드 임베딩 벡터로 구성되며,
    상기 단계(a) 이전에,
    (a0) 트래픽 데이터를 속성별로 분류한 데이터(이하 '속성 분류 데이터'라 한다)에 대하여 전처리를 수행하는 단계
    를 더 포함하고,
    상기 단계(a0)는,
    (a01) 상기 속성 분류 데이터에서, 미리 정해진 하나 이상의 특정 속성들을 한 개의 필드로 병합하는 단계;
    (a02) 상기 병합된 데이터에서, 단어의 구분을 명확히 하기 위하여 특수 문자와 스톱(stop) 문자를 제거한 텍스트를 생성하는 단계; 및
    (a03) 상기 단계(a02)에서 생성된 텍스트에서 각 단어를 벡터 값으로 매핑(임베딩)하여 상기 입력 데이터를 형성하는 단계
    를 포함하며,
    상기 단계(a01)에서 상기 특정 속성들은,
    HTTP 프로토콜 구조상 시계열적 특성을 가짐과 동시에 속성 상호 간 연관성도 깊은, http 요청시 방법에 관한 정보, 요청(request)에 사용된 URI 정보 및, 클라이언트의 브라우저 정보
    만을 포함하고,
    상기 단계(a01)의 병합 후,
    (a011) 정상과 비정상을 구분하는 라벨 필드를 추가하는 단계
    를 더 포함하며,
    상기 단계(a03)에서,
    단어를 벡터 값으로 임베딩 하기 위해 단어벡터를 랜덤하게 초기화한 뒤 모델을 학습하는 과정에서 업데이트 하고,
    상기 벡터 값은,
    단어간 의미의 연관성과 구분을 위해, 학습시에 가중치를 통해 업데이트 되며,
    상기 침입탐지 모델은,
    상기 침입탐지 모델과 동일하게 배열된 레이어에 의해 학습되어 형성되고,
    상기 침입탐지 모델은,
    CNN(convolutional neural network), LSTM(long short-term memory)-RNN(recurrent neural network) 및 C-LSTM(convolutional long short-term memory) 중 하나로 구성되는,
    웹 어플리케이션에 대한 딥러닝 기반의 침입탐지를 위한, 비일시적 저장매체에 저장된 컴퓨터 프로그램.
  12. 삭제
  13. 삭제
  14. 삭제
KR1020190040188A 2019-04-05 2019-04-05 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램 KR102046789B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190040188A KR102046789B1 (ko) 2019-04-05 2019-04-05 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램
US16/681,023 US10778705B1 (en) 2019-04-05 2019-11-12 Deep-learning-based intrusion detection method, system and computer program for web applications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190040188A KR102046789B1 (ko) 2019-04-05 2019-04-05 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR102046789B1 true KR102046789B1 (ko) 2019-11-20

Family

ID=68729116

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190040188A KR102046789B1 (ko) 2019-04-05 2019-04-05 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램

Country Status (2)

Country Link
US (1) US10778705B1 (ko)
KR (1) KR102046789B1 (ko)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110896381A (zh) * 2019-11-25 2020-03-20 中国科学院深圳先进技术研究院 一种基于深度神经网络的流量分类方法、系统及电子设备
CN111277603A (zh) * 2020-02-03 2020-06-12 杭州迪普科技股份有限公司 无监督异常检测系统和方法
CN111552609A (zh) * 2020-04-12 2020-08-18 西安电子科技大学 一种异常状态检测方法、系统、存储介质、程序、服务器
CN111865932A (zh) * 2020-06-30 2020-10-30 哈尔滨工程大学 基于上下文关联注意力机制和简化lstm网络的入侵检测方法
CN112052853A (zh) * 2020-09-09 2020-12-08 国家气象信息中心 一种基于深度学习的手写气象档案资料的文本定位方法
CN112770291A (zh) * 2021-01-14 2021-05-07 华东师范大学 基于联邦学习和信任评估的分布式入侵检测方法及系统
KR20210102533A (ko) 2020-02-11 2021-08-20 충북대학교 산학협력단 제로데이 공격으로 인한 피해 방지 시스템
CN113949653A (zh) * 2021-10-18 2022-01-18 中铁二院工程集团有限责任公司 一种基于深度学习的加密协议识别方法及系统
KR102353130B1 (ko) 2020-07-21 2022-01-18 충북대학교 산학협력단 Nidps 기반 대용량 트래픽 제로데이 공격을 방어하기 위한 방어 시스템 및 방법
KR102353131B1 (ko) 2020-07-21 2022-01-18 충북대학교 산학협력단 제로데이 공격에 대한 방어 시스템 및 방법
KR20220044046A (ko) 2020-09-29 2022-04-06 충북대학교 산학협력단 플로우 기반 pca에 저장된 제로데이 공격 패킷 검출 시스템 및 방법
KR20220044047A (ko) 2020-09-29 2022-04-06 충북대학교 산학협력단 제로데이 공격 패킷 하이라이트 시스템 및 방법
CN115221511A (zh) * 2022-09-20 2022-10-21 国网江西省电力有限公司信息通信分公司 一种配电物联网威胁狩猎方法
KR20230046182A (ko) * 2021-12-31 2023-04-05 (주)너울리 네트워크에 대한 침해 공격을 탐지하는 장치, 방법 및 컴퓨터 프로그램
KR20230109437A (ko) * 2022-01-13 2023-07-20 성균관대학교산학협력단 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치
WO2024039984A1 (en) * 2022-08-16 2024-02-22 Upsight Security Inc. Anti-malware behavioral graph engines, systems and methods

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11163777B2 (en) * 2018-10-18 2021-11-02 Oracle International Corporation Smart content recommendations for content authors
US11170175B1 (en) * 2019-07-01 2021-11-09 Intuit, Inc. Generating replacement sentences for a particular sentiment
CN113157758A (zh) * 2020-01-07 2021-07-23 微软技术许可有限责任公司 定制化异常检测
US20210329441A1 (en) * 2020-04-15 2021-10-21 Randy Alan Andrews Covert spying device detector
US11363041B2 (en) * 2020-05-15 2022-06-14 International Business Machines Corporation Protecting computer assets from malicious attacks
CN111970309B (zh) * 2020-10-20 2021-02-02 南京理工大学 基于Spark车联网组合深度学习入侵检测方法及系统
CN112468439B (zh) * 2020-10-28 2023-10-24 中国人民武装警察部队后勤学院 基于深度学习方法的物联网DDoS攻击流量检测系统
WO2022094926A1 (zh) * 2020-11-06 2022-05-12 中国科学院深圳先进技术研究院 一种加密流量识别方法、系统、终端以及存储介质
CN112367334A (zh) * 2020-11-23 2021-02-12 中国科学院信息工程研究所 网络流量识别方法、装置、电子设备和存储介质
CN112653675A (zh) * 2020-12-12 2021-04-13 海南师范大学 一种基于深度学习的智能入侵检测方法及其装置
CN112583860B (zh) * 2021-03-02 2021-05-18 北京智慧易科技有限公司 一种互联网流量异常检测的方法、装置及设备
CN113328986A (zh) * 2021-04-09 2021-08-31 国网浙江省电力有限公司金华供电公司 基于卷积神经网络与lstm结合的网络流量异常检测方法
CN113259332B (zh) * 2021-04-29 2022-12-27 上海电力大学 一种基于端到端的多类型网络流量异常检测方法及系统
CN113141373B (zh) * 2021-04-30 2023-02-07 平安普惠企业管理有限公司 检测异常入侵的方法、装置、设备和存储介质
CN112989256B (zh) * 2021-05-08 2021-09-24 北京华云安信息技术有限公司 识别响应信息中web指纹的方法和装置
CN113572739B (zh) * 2021-06-30 2023-02-24 中国人民解放军战略支援部队信息工程大学 一种网络有组织攻击入侵检测方法及装置
CN113542241B (zh) * 2021-06-30 2023-05-09 杭州电子科技大学 一种基于CNN-BiGRU混合模型的入侵检测方法及装置
CN113794699B (zh) * 2021-08-30 2022-06-07 西安交通大学 一种网络分析处理方法
US11853418B2 (en) 2021-09-01 2023-12-26 Rockwell Collins, Inc. System and method for neural network based detection of cyber intrusion via mode-specific system templates
TR2021020072A2 (tr) * 2021-12-15 2022-01-21 Gazi Ueniversitesi Rektoerluegue Açiklanabi̇li̇r deri̇n öğrenme tabanli web uygulama güveli̇k duvari yöntemi̇ ve si̇stemi̇
CN114567474A (zh) * 2022-02-23 2022-05-31 西安烽火软件科技有限公司 一种针对http数据基于无监督深度自编码网络的未知威胁检测方法及系统
US11588843B1 (en) * 2022-04-08 2023-02-21 Morgan Stanley Services Group Inc. Multi-level log analysis to detect software use anomalies
CN115103353A (zh) * 2022-06-13 2022-09-23 厦门大学 智能终端入侵检测方法
CN115242458B (zh) * 2022-06-28 2023-07-07 南京邮电大学 一种基于shap的1d-cnn网络流量分类模型的可解释方法
CN115361242B (zh) * 2022-10-24 2023-03-24 长沙市智为信息技术有限公司 一种基于多维特征网络的Web攻击检测方法
CN116055150B (zh) * 2022-12-22 2023-10-27 深圳信息职业技术学院 车联网入侵检测平台、方法及相关设备
CN116015966B (zh) * 2023-01-06 2023-11-10 江苏加数度科技有限公司 一种基于区块链的用户信息处理系统
CN116112288B (zh) * 2023-04-07 2023-08-04 天翼云科技有限公司 网络入侵检测方法、装置、电子设备和可读存储介质
CN116846688B (zh) * 2023-08-30 2023-11-21 南京理工大学 基于cnn的可解释流量入侵检测方法
CN117278322B (zh) * 2023-11-13 2024-02-20 国家工业信息安全发展研究中心 Web入侵检测方法、装置、终端设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160119678A (ko) * 2015-10-30 2016-10-14 엑스브레인 주식회사 기계 학습을 이용한 웹 공격 탐지방법 및 장치
KR101836214B1 (ko) 2016-05-25 2018-03-08 동서대학교 산학협력단 Sdn에서의 적응형 보안시스템 및 이의 구동방법
CN109462582A (zh) * 2018-10-30 2019-03-12 腾讯科技(深圳)有限公司 文本识别方法、装置、服务器及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10200382B2 (en) * 2015-11-05 2019-02-05 Radware, Ltd. System and method for detecting abnormal traffic behavior using infinite decaying clusters
US10630709B2 (en) * 2018-02-13 2020-04-21 Cisco Technology, Inc. Assessing detectability of malware related traffic

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160119678A (ko) * 2015-10-30 2016-10-14 엑스브레인 주식회사 기계 학습을 이용한 웹 공격 탐지방법 및 장치
KR101836214B1 (ko) 2016-05-25 2018-03-08 동서대학교 산학협력단 Sdn에서의 적응형 보안시스템 및 이의 구동방법
CN109462582A (zh) * 2018-10-30 2019-03-12 腾讯科技(深圳)有限公司 文本识别方法、装置、服务器及存储介质

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110896381A (zh) * 2019-11-25 2020-03-20 中国科学院深圳先进技术研究院 一种基于深度神经网络的流量分类方法、系统及电子设备
CN110896381B (zh) * 2019-11-25 2021-10-29 中国科学院深圳先进技术研究院 一种基于深度神经网络的流量分类方法、系统及电子设备
CN111277603A (zh) * 2020-02-03 2020-06-12 杭州迪普科技股份有限公司 无监督异常检测系统和方法
CN111277603B (zh) * 2020-02-03 2021-11-19 杭州迪普科技股份有限公司 无监督异常检测系统和方法
KR20210102533A (ko) 2020-02-11 2021-08-20 충북대학교 산학협력단 제로데이 공격으로 인한 피해 방지 시스템
CN111552609B (zh) * 2020-04-12 2022-03-11 西安电子科技大学 一种异常状态检测方法、系统、存储介质、程序、服务器
CN111552609A (zh) * 2020-04-12 2020-08-18 西安电子科技大学 一种异常状态检测方法、系统、存储介质、程序、服务器
CN111865932B (zh) * 2020-06-30 2022-04-12 哈尔滨工程大学 基于上下文关联注意力机制和简化lstm网络的入侵检测方法
CN111865932A (zh) * 2020-06-30 2020-10-30 哈尔滨工程大学 基于上下文关联注意力机制和简化lstm网络的入侵检测方法
KR102353130B1 (ko) 2020-07-21 2022-01-18 충북대학교 산학협력단 Nidps 기반 대용량 트래픽 제로데이 공격을 방어하기 위한 방어 시스템 및 방법
KR102353131B1 (ko) 2020-07-21 2022-01-18 충북대학교 산학협력단 제로데이 공격에 대한 방어 시스템 및 방법
CN112052853A (zh) * 2020-09-09 2020-12-08 国家气象信息中心 一种基于深度学习的手写气象档案资料的文本定位方法
CN112052853B (zh) * 2020-09-09 2024-02-02 国家气象信息中心 一种基于深度学习的手写气象档案资料的文本定位方法
KR20220044047A (ko) 2020-09-29 2022-04-06 충북대학교 산학협력단 제로데이 공격 패킷 하이라이트 시스템 및 방법
KR20220044046A (ko) 2020-09-29 2022-04-06 충북대학교 산학협력단 플로우 기반 pca에 저장된 제로데이 공격 패킷 검출 시스템 및 방법
CN112770291A (zh) * 2021-01-14 2021-05-07 华东师范大学 基于联邦学习和信任评估的分布式入侵检测方法及系统
CN113949653B (zh) * 2021-10-18 2023-07-07 中铁二院工程集团有限责任公司 一种基于深度学习的加密协议识别方法及系统
CN113949653A (zh) * 2021-10-18 2022-01-18 中铁二院工程集团有限责任公司 一种基于深度学习的加密协议识别方法及系统
KR20230046182A (ko) * 2021-12-31 2023-04-05 (주)너울리 네트워크에 대한 침해 공격을 탐지하는 장치, 방법 및 컴퓨터 프로그램
KR102651655B1 (ko) * 2021-12-31 2024-03-29 (주)너울리 네트워크에 대한 침해 공격을 탐지하는 장치, 방법 및 컴퓨터 프로그램
KR20230109437A (ko) * 2022-01-13 2023-07-20 성균관대학교산학협력단 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치
KR102618020B1 (ko) * 2022-01-13 2023-12-27 성균관대학교산학협력단 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치
WO2024039984A1 (en) * 2022-08-16 2024-02-22 Upsight Security Inc. Anti-malware behavioral graph engines, systems and methods
CN115221511A (zh) * 2022-09-20 2022-10-21 国网江西省电力有限公司信息通信分公司 一种配电物联网威胁狩猎方法

Also Published As

Publication number Publication date
US10778705B1 (en) 2020-09-15
US20200322362A1 (en) 2020-10-08

Similar Documents

Publication Publication Date Title
KR102046789B1 (ko) 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램
Kaur et al. Hybrid intrusion detection and signature generation using deep recurrent neural networks
Vinayakumar et al. Scalable framework for cyber threat situational awareness based on domain name systems data analysis
US11463457B2 (en) Artificial intelligence (AI) based cyber threat analyst to support a cyber security appliance
Mamun et al. Detecting malicious urls using lexical analysis
Oprea et al. Detection of early-stage enterprise infection by mining large-scale log data
Catak et al. Distributed denial of service attack detection using autoencoder and deep neural networks
Hajj et al. Anomaly‐based intrusion detection systems: The requirements, methods, measurements, and datasets
Doran et al. An integrated method for real time and offline web robot detection
Hamed et al. A survey and taxonomy on data and pre-processing techniques of intrusion detection systems
David et al. Zero day attack prediction with parameter setting using Bi direction recurrent neural network in cyber security
Bherde et al. Recent attack prevention techniques in web service applications
Ingham III Anomaly detection for HTTP intrusion detection: algorithm comparisons and the effect of generalization on accuracy
Sahin et al. An efficient firewall for web applications (EFWA)
Kassem Intelligent system using machine learning techniques for security assessment and cyber intrusion detection
Shoaib et al. URL based phishing detection using machine learning
Patil et al. Learning to Detect Phishing Web Pages Using Lexical and String Complexity Analysis
Mathews et al. Detecting botnets using a collaborative situational-aware idps
Kozik et al. Evolutionary‐based packets classification for anomaly detection in web layer
Chang et al. Developing the Security Threat Detection Model for Web Service Using Deep Neural Network
Khairkar Intrusion Detection System based on Ontology for Web Applications
Ramos et al. A Machine Learning Based Approach to Detect Stealthy Cobalt Strike C &C Activities from Encrypted Network Traffic
Surendhar et al. Detection of payload injection in Firewall Using Machine Learning
Le Page Understanding the phishing ecosystem
Charmet et al. Toward a better understanding of mobile users’ behavior: A web session repair scheme

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant