KR100901701B1 - 침해패턴 처리시스템 및 그 방법 - Google Patents

침해패턴 처리시스템 및 그 방법 Download PDF

Info

Publication number
KR100901701B1
KR100901701B1 KR1020070076950A KR20070076950A KR100901701B1 KR 100901701 B1 KR100901701 B1 KR 100901701B1 KR 1020070076950 A KR1020070076950 A KR 1020070076950A KR 20070076950 A KR20070076950 A KR 20070076950A KR 100901701 B1 KR100901701 B1 KR 100901701B1
Authority
KR
South Korea
Prior art keywords
pattern
infringement
information
stored
case
Prior art date
Application number
KR1020070076950A
Other languages
English (en)
Other versions
KR20080050265A (ko
Inventor
김병구
오진태
장종수
손승원
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Publication of KR20080050265A publication Critical patent/KR20080050265A/ko
Application granted granted Critical
Publication of KR100901701B1 publication Critical patent/KR100901701B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • 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/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • H04L63/308Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information retaining data, e.g. retaining successful, unsuccessful communication attempts, internet access, or e-mail, internet telephony, intercept related information or call content

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 침해패턴 처리시스템 및 그 방법에 관한 것으로, 하드웨어 장치에서 노케이스 센시티브 침해패턴들과 케이스 센시티브 침해패턴들을 한정된 메모리자원에 효율적으로 배치, 저장 및 검색하고, 동일한 문자열의 노케이스 센시티브 패턴과 케이스 센시티브 패턴을 동일한 메모리 상에서 관리할 수 있도록 함으로써, 보다많은 침해패턴들을 하드웨어 메모리에 적재할 수 있도록 하여 다양한 유형의 유해 트래픽들에 대해서 보다 포괄적인 감시 기능을 고속으로 수행할 수 있도록 한 것이다.
침해패턴, 노케이스 센시티브 패턴, 케이스 센시티브 패턴

Description

침해패턴 처리시스템 및 그 방법{INTRUSION PATTERN PROCESS SYSTEM AND METHOD}
본 발명은 침해패턴 처리시스템 및 그 방법에 관한 것으로, 하드웨어 장치에서 노케이스 센시티브 침해패턴들과 케이스 센시티브 침해패턴들을 한정된 메모리자원에 효율적으로 배치, 저장 및 검색하고, 동일한 문자열의 노케이스 센시티브 패턴과 케이스 센시티브 패턴을 동일한 메모리 상에서 관리할 수 있도록 함으로써, 보다많은 침해패턴들을 하드웨어 메모리에 적재할 수 있도록 하여 다양한 유형의 유해 트래픽들에 대해서 보다 포괄적인 감시 기능을 고속으로 수행할 수 있도록 한 것이다.
본 발명은 정보통신부 및 정보통신연구진흥원의 IT신성장동력핵심기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호 :2006-S-042-01 과제명 : Network 위협의 Zero-Day Attack 대응을 위한 실시간 공격 Signature 생성 및 관리 기술개발].
네트워크에서 여러 침해 행위들을 탐지하기 위해서 여러 가지 방법들이 사 용되고 있다.
이러한 방법들 중 가장 정확하게 침해 유무를 탐지하는 방법은 네트워크로 입력되는 패킷 내용과 기 알려진 침해 유형들의 패턴을 비교 검사하는 방법이다.
침해 유무를 탐지하는 방법은 대부분 소프트웨어를 바탕으로 한 방법이지만, 속도의 제한성이 있다.
이를 극복하기 위해서, 하드웨어 기반의 패턴 검색 기법들이 연구개발되기 시작되었으며, 이를 통해서 고속의 침입탐지 기능 및 방화벽 기능, 바이러스 감지기능 등을 제공하고 있다.
이러한 시스템들의 대부분은 규칙 기반의 특정 패턴 검사방법을 통해서 침해 유무 탐지를 수행하고 있으며, 적용되는 패턴의 개수와 패턴 개개가 갖는 스트링 문자열의 길이 등에 의해서 수행 성능이 저하되지 않아야 한다.
그러나, 현재까지 알려진 침해패턴의 수가 수천 개나 되기 때문에 성능 저하 없이 많은 패턴을 검색하기는 쉽지가 않다.
또한 노케이스 센시티브(no case sensitive) 침해패턴들과 같이 여러 조합이 가능한 패턴들에 대한 검색은 적절한 저장 기법을 사용하지 않을 경우에 검색해야 할 침해패턴의 수를 몇 배로 늘리는 결과를 초래할 수도 있다.
예를 들어, 노케이스 센시티브 침해패턴 "ABCD"이라면, "ABcD", "aBcD" 등과 같은 여러 형태의 패턴들을 전부 가지고 있는 것이 된다.
이러한 침해패턴들은 대문자, 소문자 조합에 따라 여러 형태로 표현되어 서로 다른 메모리 영역에 배치되어 적용되기 쉽다.
그러나, 하드웨어 기반의 시스템은 메모리 상의 제약을 동반하기 때문에 수많은 유해 트래픽 패턴들을 효율적으로 적용할 수 있는 기법이 요구된다.
비록, 외부 메모리 등을 사용한 메모리 한계를 극복한 경우에도 성능 저하 및 시스템의 가격상승을 피하기 어렵다.
따라서, 제한된 메모리 상에 최대한의 침해패턴들을 효율적으로 배치하여 적용할 수 있는 기법이 요구된다
따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여 노케이스 센시티브 침해패턴들과 케이스 센시티브 침해패턴들을 한정된 메모리 자원에 효율적으로 배치, 저장 및 검색하기 위한 수단이 필요하게 되었다.
상기와 같은 필요를 충족시키기 위해, 본 발명의 일 측면에 따른 침해패턴 처리 시스템은, 메모리; 상기 메모리에 저장할 침해패턴을 설정된 패턴변환 규칙에 따라 패턴 변환하는 패턴 변환부; 및 상기 패턴 변환부에서 패턴 변환된 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴정보를 저장하는 해쉬함수 처리부를 포함한다.
상기 설정된 패턴변환 규칙은, 패턴의 문자를 대문자, 소문자, 일정한 규칙을 갖는 대소문자의 조합 형태와 같은 일정한 형식 중 어느 하나의 패턴으로 변환 한다.
상기 침해패턴 정보는 상기 침해패턴에서 마지막 문자를 제외한 침해패턴과 정보비트로 이루어진다.
상기 정보비트는 상기 저장된 침해패턴이 노케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 저장된 침해패턴이 케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 침해패턴에서 저장되지 않은 마지막 문자의 대소문자 여부를 나타내는 비트 중 적어도 어느 하나를 포함한다.
상기 목적을 달성하기 위한 본 발명의 다른 측면에 따른 침해패턴 처리시스템은, 메모리; 상기 메모리에 저장할 침해패턴을 설정된 패턴변환 규칙에 따라 패턴 변환하는 패턴 변환부; 및 상기 패턴 변환부에서 패턴 변환된 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴과 정보비트를 저장하되, 상기 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴와 정보비트가 저장되어 있으면, 정보비트의 값만을 변경하는 해쉬함수 처리부를 포함한다.
상기 정보비트는, 상기 저장된 침해패턴이 노케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 저장된 침해패턴이 케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 침해패턴에서 저장되지 않은 마지막 문자의 대소문자 여부를 나타내는 비트 중 적어도 어느 하나를 포함한다.
상기 목적을 달성하기 위한 본 발명의 또 다른 측면에 따른 침해패턴 처리시스템은, 메모리; 트래픽이 가진 패턴에서 설정된 위치의 문자의 대소문자 정보와 설정된 위치의 문자를 제외한 패턴 정보를 추출하는 트래픽 패턴 추출부; 트래픽이 가진 패턴을 설정된 패턴변환 규칙에 따라 변환하고, 설정된 패턴변환 규칙에 따라 변환된 트래픽이 가진 패턴에서 설정된 위치의 문자를 제외한 정보를 추출하는 제1패턴 변환부; 상기 제1패턴 변환부에 의해서 변환된 패턴의 해쉬 값에 해당하는 메모리 주소에 저장된 침해패턴 정보를 읽어오는 해쉬함수 처리부; 및 상기 메모리 주소에 저장된 침해패턴 정보에 노케이스 센시티브 매칭 정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴을 설정된 패턴변환 규칙에 따라 변환한 후 상기 제1패턴 변환부에 의해서 변환된 패턴과 비교하고, 상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴을 상기 트래픽 패턴 추출부에 의해 추출된 패턴 정보와 비교함으로써, 침해패턴 매칭 유무를 수행하는 침해패턴 검색부를 포함한다.
상기 침해패턴 검색부는, 상기 메모리 주소에 저장된 침해패턴 정보에 노케이스 센시티브 매칭 정보가 포함된 경우에 상기 메모리 주소에 저장된 침해패턴을 설정된 패턴규칙에 변환하는 제2패턴 변환부; 상기 제2패턴 변환부에서 변환된 침해패턴과 제1패턴 변환부에서 변환된 트래픽이 가진 패턴을 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 노케이스 센시티브 매칭부; 및 상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭정보가 포함되어 있으면, 침해패턴의 설정된 위치의 문자의 대소문자 정보 및 침해패턴에서 설정된 위치의 문자를 제외한 침해패턴과, 상기 트래픽이 가진 패턴에서 설정된 위치의 문자의 대소문자 정보 및 상기 트래픽이 가진 패턴에서 설정된 위치의 문자를 트래픽이 가진 패턴을 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 케이스 센시티브 매칭부를 포함한다.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 메모리를 구비한 침해패턴 처리 시스템의 침해패턴 저장방법은, 상기 메모리에 저장할 침해패턴을 설정된 패턴변환 규칙에 따라 패턴 변환하는 단계; 와 상기 패턴 변환된 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴정보를 저장하는 단계를 포함한다.
상기 목적을 달성하기 위한 본 발명의 다른 측면에 따른 메모리를 구비한 침해패턴 처리 시스템의 침해패턴 저장방법은, 상기 메모리에 케이스 침해 패턴과 정보비트가 저장된 상태에서 노케이스 침해패턴이 유입되면, 설정된 침해패턴 규칙에 따라 노케이스 침해패턴을 변환하는 단계; 와 상기 패턴 변환된 노케이스 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 저장된 정보비트의 값만을 변경하는 단계를 포함한다.
상기 목적을 달성하기 위한 본 발명의 또 다른 측면에 따른 메모리를 구비한 침해패턴 처리시스템의 침해패턴 검색방법은, 트래픽이 가진 패턴에서 설정된 위치의 문자의 대소문자 정보와 설정된 위치의 문자를 제외한 패턴 정보를 추출하는 제1 추출 단계; 트래픽이 가진 패턴을 설정된 패턴변환 규칙에 따라 변환하고, 설정된 패턴변환 규칙에 따라 변환된 트래픽이 가진 패턴에서 설정된 위치의 문자를 제외한 정보를 추출하는 제2 추출 단계; 상기 변환된 패턴의 해쉬 값에 해당하는 메모리 주소에 저장된 침해패턴 정보를 읽어오는 읽기 단계; 및 상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭 정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴 정보를 상기 제1추출 단계를 통해 추출된 정보와 비교하고, 상기 메모리 주소에 저장 침해패턴 정보에 노케이스 센시티브 매칭 정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴 정보를 설정된 패턴변환 규칙에 따라 변환한 후 상기 제2추출 단계를 통해 추출된 정보와 비교함으로써, 침해패턴 매칭 유무를 수행하는 확인 단계를 포함한다.
상기 메모리 주소에 저장된 침해패턴 정보에 따라 선택적으로 침해패턴 매칭 유무를 수행하는 단계는, 상기 메모리 주소에 저장된 침해패턴 정보에 노케이스 센 시티브 매칭 정보가 포함된 경우에 상기 메모리 주소에 저장된 침해패턴을 설정된 패턴규칙에 변환하는 단계; 와 상기 제2패턴 변환부에서 변환된 침해패턴과 제1패턴 변환부에서 변환된 트래픽이 가진 패턴을 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 단계를 포함한다.
상기 메모리 주소에 저장된 침해패턴 정보에 따라 선택적으로 침해패턴 매칭 유무를 수행하는 단계는, 상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭정보가 포함되어 있으면, 침해패턴의 설정된 위치의 문자의 대소문자 정보 및 침해패턴에서 설정된 위치의 문자를 제외한 침해패턴과, 상기 트래픽이 가진 패턴에서 설정된 위치의 문자의 대소문자 정보 및 상기 트래픽이 가진 패턴에서 설정된 위치의 문자를 트래픽이 가진 패턴을 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 단계를 더 포함한다.
상기한 목적을 달성하기 위해서 본 발명은, 네트워크 상의 유해 트래픽들을 탐지하기 위한 침해패턴들을 일정한 형태로 변환하고, 변환된 패턴의 해쉬값을 침해패턴이 저장되는 메모리 블록의 주소로 사용함으로써, 개개의 노케이스 센시티브 침해패턴이 가질 수 있는 여러 조합들의 정보를 동일 메모리 영역에 표현할 수 있도록 하며, 노케이스 센시티브 패턴의 여러 조합 안에 속하는 케이스 센시티브 패턴 또한 동일 메모리 영역에 저장하여 검색할 수 있도록 한다.
상술한 바와 같이 본 발명에 따른 침해패턴 처리시스템 및 그 방법에 따르면, 하드웨어 장치에서 노케이스 센시티브 침해패턴들과 케이스 센시티브 침해패턴들을 한정된 메모리자원에 효율적으로 배치, 저장 및 검색하고, 동일한 문자열의 노케이스 센시티브 패턴과 케이스 센시티브 패턴을 동일한 메모리 상에서 관리할 수 있도록 함으로써, 보다많은 침해패턴들을 하드웨어 메모리에 적재할 수 있도록 하여 다양한 유형의 유해 트래픽들에 대해서 보다 포괄적인 감시 기능을 고속으로 수행할 수 있다.
이하 본 발명에 따른 침해패턴 처리시스템 및 그 방법을 첨부한 도면을 참조하여 상세히 설명한다.
또한, 이해의 편의를 위하여 비록 다른 도면에 속하더라도 동일한 구성요소에는 동일한 부호를 부여하였음을 주의하여야 한다.
도 1은 본 발명에 따른 침해패턴 처리시스템에서 침해패턴 저장 흐름을 나타낸 도면이다. 이때, 침해패턴은 노케이스 센시티브 침해패턴 및 케이스 센시티브 침해패턴일 수 있다.
도 1에 도시된 바와 같이, 패턴 변환기(10)는 메모리(12)에 저장할 침해패턴(A)을 모두 대문자 또는 모두 소문자, 혹은 일정한 규칙을 갖는 대소문자의 조합 형태와 같은 일정한 형식으로 패턴 변환한다.
해쉬함수 처리부(11)는 패턴 변환된 침해 패턴(a)에 대한 해쉬 값(x)을 구한 다. 이때, 구해진 해쉬 값(x)은 해당 침해패턴 정보가 저장될 메모리(12)의 주소로 사용한다. 여기에서, 사용되는 해쉬 함수는 일정 분포를 보장하며, 하드웨어로 구현 가능한 복잡도를 가진 어떤 것이라도 무방하다.
즉, 노케이스 센시티브 패턴을 여러 형태의 대소문자로 기술할지라도 같은 메모리 블록의 주소를 사용하게 되며, 이는 대소문자 형태만 다른 동일 패턴의 케이스 센시티브 패턴도 포괄하게 된다.
이와 같은 방식으로 얻어진 해당 메모리 주소에 저장되는 침해패턴의 정보는 원래의 침해패턴에서 마지막 문자를 제외한 침해패턴(A')과 3비트의 정보비트로 이루어진다.
이때, 첫 번째 비트 정보는 저장된 침해패턴이 노케이스 센시티브 패턴인지 여부를 나타낸다.
두 번째 비트 정보는 저장된 침해패턴이 케이스 센시티브 패턴인지 여부를 나타낸다.
마지막으로, 세 번째 비트 정보는 저장되지 않은 마지막 문자의 대소문자 여부를 나타낸다.
여기에서, 첫 번째 비트 정보는 노케이스 센시티브 패턴 검색에 사용되며, 두 번째 비트정보와 세 번째 비트 정보는 케이스 센시티브 패턴의 검색에 사용된다.
이러한 침해패턴 정보를 저장할 때 마지막 문자를 제외하는 이유는 해쉬 값이 같고 그 전까지의 문자가 동일하다면 마지막 문자는 당연히 일정하기 때문이다.
도 2는 본 발명에 따른 침해패턴 처리 시스템에서 케이스 센시티브 침해패턴 저장 흐름을 나타낸 도면이다.
패턴 변환기(10)는 설정된 패턴변환 규칙에 따라 케이스 센시티브 침해패턴(aTTacK)을 패턴 변환한다. 이때, 설정된 패턴변환 규칙은 패턴을 모두 소문자로 변환하는 것으로 하고, 이하에서도 동일한 것으로 한다.
즉, 패턴 변환기(10)는 케이스 센시티브 침해패턴(aTTacK)을 설정된 패턴변환규칙에 따라서 소문자의 침해패턴(attack)으로 변환한다.
해쉬함수 처리부(11)은 변환된 침해패턴(attack)에 대한 해쉬 값(x)을 구하고, 해당 메모리(12) 주소의 저장공간에 침해패턴 정보를 저장하게 된다.
메모리(12)에 저장된 패턴 정보는 케이스 센시티브 침해패턴(aTTacK)에서 마지막 문자를 제외한 패턴(aTTac)과 3비트의 정보비트로 이루어진다.
이때, 저장된 침해패턴이 케이스 센시티브 패턴이고 마지막 문자가 대문자이기 때문에 두 번째 비트와 세 번째 비트가 "1"로 설정된다.
도 3은 본 발명에 따른 침해패턴 처리 시스템에서 노케이스 센시티브 침해패턴 저장 흐름을 나타낸 도면이다.
패턴 변환기(10)는 설정된 패턴변환 규칙에 따라 노케이스 센시티브 침해패턴(ATTACK)을 패턴 변환한다. 이때, 설정된 패턴변환 규칙은 패턴을 모두 소문자로 변환하는 것으로 한다.
즉, 패턴 변환기(10)는 노케이스 센시티브 침해패턴(ATTACK)을 설정된 패턴변환규칙에 따라서 소문자의 침해패턴(attack)으로 변환한다.
해쉬함수 처리부(11)은 변환된 침해패턴(attack)에 대한 해쉬 값(x)을 구하고, 해당 메모리(12) 주소의 저장공간에 침해패턴 정보를 저장하게 된다.
메모리(12)에 저장된 패턴 정보는 노케이스 센시티브 침해패턴(ATTACK)에서 마지막 문자를 제외한 패턴(ATTAC)과 3비트의 정보비트로 이루어진다.
이때, 저장된 침해패턴이 노케이스 센시티브 패턴이기 때문에 첫 번째 비트만 "1"로 설정된다.
도 4는 본 발명에 따른 침해패턴 처리 시스템에서 케이스 센시티브 침해패턴이 저장된 상태에서 노케이스 센시티브 침해패턴의 저장 흐름을 나타낸 도면이다.
패턴 변환기(10)는 케이스 센시티브 침해패턴(aTTac)이 메모리(12)에 저장된 상태에서, 유입된 노케이스 센시티브 침해패턴(ATTACK)을 설정된 패턴변환 규칙에 따라 소문자의 침해패턴(attack)으로 변환한다.
해쉬함수 처리부(11)는 소문자의 침해패턴(attack)에 대한 해쉬 값(x)을 구한다. 이때, 구해진 해쉬 값(x)은 케이스 센시티브 침해패턴에 대한 해쉬 값과 동일하게 된다. 그리고 구해진 해쉬 값(x)에 메모리의 영역에 저장된 정보비트의 값만을 변경해준다. 즉, "0"으로 설정되어 있던 두 번째 비트의 값을 "1"으로 설정하여, 케이스 센시티브 침해패턴이 저장된 상태에서 노케이스 센시티브 침해패턴이 추가적으로 저장되었음을 통보해준다.
이와 같이, 본 발명에서는 메모리(12)의 동일주소의 저장공간에 패턴 정보를 공유하고, 3 비트의 정보 비트를 통해 메모리 영역의 공유 여부를 알려준다.
여기에서, 3 비트의 정보 비트는 모두 "1"로 설정되며, 저장되는 패턴 정보는 케이스 센시티브 침해패턴에서 마지막 문자를 제외한 패턴(aTTac)이 저장된다.
이는 노케이스 센시티브 침해패턴의 경우에는 변환된 패턴을 비교하나, 케이스 센시티브 침해패턴의 경우에는 원래의 패턴을 비교하기 때문이다.
도 5는 본 발명에 따른 침해패턴 처리시스템에서 침해패턴 검색 흐름을 나타낸 도면이다.
즉, 도 5는 본 발명에 따른 침해패턴 처리시스템이 메모리에 저장된 노케이스 센시티브 및 케이스 센시티브 침해패턴들을 수신한 트래픽 패턴에 따라 검색하는 과정을 나타낸 도면이다.
본 발명에 따른 침해패턴 처리시스템은 트래픽이 유입되면, 침해패턴이 저장되어 있는 메모리(53)의 침해패턴 정보와 비교할 정보들을 추출하게 된다.
즉, 트래픽 패턴 처리부(50)는 트래픽이 가진 패턴(A)에서 마지막 문자의 대소문자 정보(A")와 마지막 문자를 제외한 패턴(A') 정보를 추출한다.
패턴 변환기(51)는 트래픽이 가진 패턴(A)을 설정된 패턴변환 규칙에 따라 소문자의 패턴(a)으로 변환하고, 노케이스 센시티브 패턴 검색을 위한 변환 패턴(a)에서 마지막 문자를 제외한 패턴(a')정보를 추출한다.
해쉬함수 처리부(52)는 패턴 변환기(51)에 의해서 변환된 패턴(a)의 해쉬 값(x)에 해당하는 메모리(53) 주소에 저장된 침해패턴 정보를 읽어 노케이스/케이스 센시티브 판단부(56)에 제공한다.
노케이스/케이스 센시티브 판단부(56)는 메모리(53) 주소에 저장된 침해패턴 정보의 첫 번째 정보 비트가 "1"로 설정되어 있으면 노케이스 센시티브 매칭을 수행하고, 두 번째 정보 비트가 "1"로 설정되어 있으면 케이스 센시티브 매칭을 수행한다.
이에 대해서 좀 더 구체적으로 살펴보기로 한다.
노케이스/케이스 센시티브 판단부(56)는 노케이스 센시티브 매칭의 경우, 메모리(53) 저장공간에서 읽혀진 패턴 정보(B')를 패턴변환기(55)에 제공한다.
패턴 변환기(55)는 노케이스/케이스 센시티브 판단부(56)에서 제공된 패턴 정보(B')를 설정된 패턴변환규칙에 따라 소문자의 패턴(b')으로 변환하여 노케이스 센시티브 매칭부(54)로 제공한다.
노케이스 센시티브 매칭부(54)는 소문자의 패턴(b')과 유입 패킷의 변환된 패턴에서 마지막 문자를 제외한 패턴(a')과 비교함으로써, 트래픽 내의 패턴이 유해한지 여부를 판단하게 된다.
한편, 노케이스/케이스 센시티브 판단부(56)는 케이스 센시티브 매칭의 경우, 메모리(53) 저장공간에서 읽혀진 패턴 정보(B')와 마지막 문자의 대소문자 정보(B")를 케이스 센시티브 매칭부(57)에 제공한다.
케이스 센시티브 매칭부(57)는 메모리(53) 저장공간에서 읽혀진 패턴 정보(B')와 마지막 문자의 대소문자 정보(B")를 유입 패킷의 원래 패턴에서 마지막 문자를 제외한 패턴(A')과 마지막 문자의 대소문자 정보(A")와 비교함으로써, 트래픽 내의 패턴이 유해한지 여부를 판단하게 된다.
이때, 케이스 센시티브 매칭의 경우에만 마지막 문자의 대소문자 여부를 판단하는 것은 변환된 패턴의 해쉬 값은 대소문자 상관없이 일정하기 때문이다.
한편, 케이스 센시티브 매칭부(57)은 노케이스 센시티브 메칭부(54)의 유해여부 판단정보 및 자신에서 수행된 유해여부 판단정보를 OR 함으로써, 최종 유해 여부를 판단하게 된다.
이때, 최종 유해 여부의 판단이 케이스 센시티브 매칭부(57)에서 이루어지는 것으로 하였으나, 노케이스 센시티브 매칭부(54)에서도 이루어질 수 있음은 당연하다.
도 6은 본 발명에 따른 침해패턴 처리시스템에서 침해패턴 검색 흐름을 예시한 도면이다.
트래픽 패턴 처리부(50)는 트래픽이 가진 패턴(aTTacK)에서 마지막 문자의 대소문자 정보 "1"와 마지막 문자를 제외한 패턴(aTTac) 정보를 추출한다.
패턴 변환기(51)는 트래픽이 가진 패턴(aTTacK)을 설정된 패턴변환 규칙에 따라 소문자의 패턴(attack)으로 변환하고, 노케이스 센시티브 패턴 검색을 위한 변환 패턴(a)에서 마지막 문자를 제외한 패턴(attac)정보를 추출한다.
해쉬함수 처리부(52)는 패턴 변환기(51)에 의해서 변환된 패턴(attack)의 해쉬 값(x)에 해당하는 메모리(53) 주소에 저장된 침해패턴 정보를 읽어 노케이스/케이스 센시티브 판단부(56)에 제공한다.
노케이스/케이스 센시티브 판단부(56)는 메모리(53) 주소에 저장된 침해패턴 정보의 첫 번째 정보 비트가 "1"로 설정되어 있으면 노케이스 센시티브 매칭을 수행하고, 두 번째 정보 비트가 "1"로 설정되어 있으면 케이스 센시티브 매칭을 수 행한다.
이에 대해서 좀 더 구체적으로 살펴보기로 한다.
노케이스/케이스 센시티브 판단부(56)는 노케이스 센시티브 매칭의 경우, 메모리(53) 저장공간에서 읽혀진 패턴 정보(aTTac)를 패턴변환기(55)에 제공한다.
패턴 변환기(55)는 노케이스/케이스 센시티브 판단부(56)에서 제공된 패턴 정보(aTTac)를 설정된 패턴변환규칙에 따라 소문자의 패턴(attac)으로 변환하여 노케이스 센시티브 매칭부(54)로 제공한다.
노케이스 센시티브 매칭부(54)는 소문자의 패턴(attac)과 유입 패킷의 변환된 패턴에서 마지막 문자를 제외한 패턴(attac)과 비교함으로써, 트래픽 내의 패턴이 유해한지 여부를 판단하게 된다. 이 경우는 트패픽의 패턴에 유해 상황이 발생되지 않은 경우이다.
한편, 노케이스/케이스 센시티브 판단부(56)는 케이스 센시티브 매칭의 경우, 메모리(53) 저장공간에서 읽혀진 패턴 정보(aTTac)와 마지막 문자의 대소문자 정보 "1"를 케이스 센시티브 매칭부(57)에 제공한다.
케이스 센시티브 매칭부(57)는 메모리(53) 저장공간에서 읽혀진 패턴 정보(aTTac)와 마지막 문자의 대소문자 정보 "1"를 유입 패킷의 원래 패턴에서 마지막 문자를 제외한 패턴(aTTac)과 마지막 문자의 대소문자 정보 "1"과 비교함으로써, 트래픽 내의 패턴이 유해한지 여부를 판단하게 된다.
이때, 케이스 센시티브 매칭의 경우에만 마지막 문자의 대소문자 여부를 판단하는 것은 변환된 패턴의 해쉬 값은 대소문자 상관없이 일정하기 때문이다.
한편, 케이스 센시티브 매칭부(57)은 노케이스 센시티브 메칭부(54)의 유해여부 판단정보 및 자신에서 수행된 유해여부 판단정보를 OR 함으로써, 최종 유해 여부를 판단하게 된다.
이때, 최종 유해 여부의 판단이 케이스 센시티브 매칭부(57)에서 이루어지는 것으로 하였으나, 노케이스 센시티브 매칭부(54)에서도 이루어질 수 있음은 당연하다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 당업자에게 있어 명백할 것이다.
도 1은 본 발명에 따른 침해패턴 처리 시스템에서 침해패턴 저장 흐름을 나타낸 도면이다.
도 2는 본 발명에 따른 침해패턴 처리 시스템에서 케이스 센시티브 침해패턴 저장 흐름을 나타낸 도면이다.
도 3은 본 발명에 따른 침해패턴 처리 시스템에서 노케이스 센시티브 침해패턴 저장 흐름을 나타낸 도면이다.
도 4는 본 발명에 따른 침해패턴 처리 시스템에서 케이스 센시티브 침해패턴이 저장된 상태에서 노케이스 센시티브 침해패턴의 저장 흐름을 나타낸 도면이다.
도 5는 본 발명에 따른 침해패턴 처리시스템에서 침해패턴 검색 흐름을 나타낸 도면이다.
도 6은 본 발명에 따른 침해패턴 처리시스템에서 침해패턴 검색 흐름을 예시한 도면이다.

Claims (17)

  1. 침해패턴 처리 시스템에 있어서,
    메모리;
    상기 메모리에 저장할 침해패턴을 설정된 패턴변환 규칙에 따라 패턴 변환하는 패턴 변환부; 및
    상기 패턴 변환부에서 패턴 변환된 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴정보를 저장하는 해쉬함수 처리부를 포함하는 침해패턴 처리 시스템.
  2. 제1항에 있어서,
    상기 설정된 패턴변환 규칙은,
    패턴의 문자를 대문자, 소문자, 일정한 규칙을 갖는 대소문자의 조합 형태와 같은 일정한 형식 중 어느 하나의 패턴으로 변환하는 것인 침해패턴 처리 시스템.
  3. 제1항에 있어서,
    상기 침해패턴 정보는,
    상기 침해패턴에서 마지막 문자를 제외한 침해패턴과 정보비트로 이루어지는 침해패턴 처리 시스템.
  4. 제3항에 있어서,
    상기 정보비트는,
    상기 저장된 침해패턴이 노케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 저장된 침해패턴이 케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 침해패턴에서 저장되지 않은 마지막 문자의 대소문자 여부를 나타내는 비트 중 적어도 어느 하나를 포함하는 침해패턴 처리 시스템.
  5. 침해패턴 처리시스템에 있어서,
    메모리;
    상기 메모리에 저장할 침해패턴을 설정된 패턴변환 규칙에 따라 패턴 변환하는 패턴 변환부; 및
    상기 패턴 변환부에서 패턴 변환된 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴과 정보비트를 저장하되, 상기 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴와 정보비트가 저장되어 있으면, 정보비트의 값만을 변경하는 해쉬함수 처리부를 포함하는 침해패턴 처리시스템.
  6. 제5항에 있어서,
    상기 정보비트는
    상기 저장된 침해패턴이 노케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 저장된 침해패턴이 케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 침해패턴에서 저장되지 않은 마지막 문자의 대소문자 여부를 나타내는 비트 중 적어도 어느 하나를 포함하는 침해패턴 처리시스템.
  7. 침해패턴 처리시스템에 있어서,
    메모리;
    트래픽이 가진 패턴에서 설정된 위치의 문자의 대소문자 정보와 설정된 위치의 문자를 제외한 패턴 정보를 추출하는 트래픽 패턴 추출부;
    트래픽이 가진 패턴을 설정된 패턴변환 규칙에 따라 변환하고, 설정된 패턴변환 규칙에 따라 변환된 트래픽이 가진 패턴에서 설정된 위치의 문자를 제외한 정보를 추출하는 제1패턴 변환부;
    상기 제1패턴 변환부에 의해서 변환된 패턴의 해쉬 값에 해당하는 메모리 주소에 저장된 침해패턴 정보를 읽어오는 해쉬함수 처리부; 및
    상기 메모리 주소에 저장된 침해패턴 정보에 노케이스 센시티브 매칭 정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴을 설정된 패턴변환 규칙에 따라 변환한 후 상기 제1패턴 변환부에 의해서 변환된 패턴과 비교하고, 상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴을 상기 트래픽 패턴 추출부에 의해 추출된 패턴 정보와 비교함으로써, 침해패턴 매칭 유무를 수행하는 침해패턴 검색부를 포함하는 침해패턴 처리시스템.
  8. 제7항에 있어서,
    상기 침해패턴 검색부는,
    상기 메모리 주소에 저장된 침해패턴 정보에 노케이스 센시티브 매칭 정보가 포함된 경우에 상기 메모리 주소에 저장된 침해패턴을 설정된 패턴규칙에 변환하는 제2패턴 변환부;
    상기 제2패턴 변환부에서 변환된 침해패턴과 상기 제1패턴 변환부에 의해서 변환된 패턴과 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 노케이스 센시티브 매칭부; 및
    상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭정보가 포함되어 있으면, 침해패턴의 설정된 위치의 문자의 대소문자 정보 및 침해패턴에서 설정된 위치의 문자를 제외한 침해패턴과 상기 트래픽 패턴 추출부에 의해 추출된 패턴 정보와 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 케이스 센시티브 매칭부를 포함하는 침해패턴 처리시스템.
  9. 메모리를 구비한 침해패턴 처리 시스템의 침해패턴 저장방법에 있어서,
    상기 메모리에 저장할 침해패턴을 설정된 패턴변환 규칙에 따라 패턴 변환하는 단계; 와
    상기 패턴 변환된 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 패턴 변환된 침해패턴정보를 저장하는 단계를 포함하는 침해패턴 처리 시스템의 침해패턴 저장방법.
  10. 제9항에 있어서,
    상기 설정된 패턴변환 규칙은,
    패턴의 문자를 대문자, 소문자, 일정한 규칙을 갖는 대소문자의 조합 형태와 같은 일정한 형식 중 어느 하나의 패턴으로 변환하는 것인 침해패턴 처리 시스템의 침해패턴 저장방법.
  11. 제9항에 있어서,
    상기 침해패턴 정보는,
    상기 침해패턴에서 마지막 문자를 제외한 침해패턴과 정보비트로 이루어지는 침해패턴 처리 시스템의 침해패턴 저장방법.
  12. 제11항에 있어서,
    상기 정보비트는,
    상기 저장된 침해패턴이 노케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 저장된 침해패턴이 케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 침해패턴에서 저장되지 않은 마지막 문자의 대소문자 여부를 나타내는 비트 중 적어도 어느 하나를 포함하는 침해패턴 처리 시스템의 침해패턴 저장방법.
  13. 메모리를 구비한 침해패턴 처리 시스템의 침해패턴 저장방법에 있어서,
    상기 메모리에 케이스 침해 패턴과 정보비트가 저장된 상태에서 노케이스 침해패턴이 유입되면, 설정된 침해패턴 규칙에 따라 노케이스 침해패턴을 변환하는 단계; 와
    상기 패턴 변환된 노케이스 침해패턴에 대한 해쉬 값을 구하고, 구해진 해쉬 값에 해당하는 메모리의 영역에 저장된 정보비트의 값만을 변경하는 단계를 포함하는 침해패턴 처리 시스템의 침해패턴 저장방법.
  14. 제13항에 있어서,
    상기 정보비트는,
    상기 저장된 침해패턴이 노케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 저장된 침해패턴이 케이스 센시티브 패턴인지 여부를 나타내는 비트, 상기 침해패턴에서 저장되지 않은 마지막 문자의 대소문자 여부를 나타내는 비트 중 적어도 어느 하나를 포함하는 침해패턴 처리 시스템의 침해패턴 저장방법.
  15. 메모리를 구비한 침해패턴 처리시스템의 침해패턴 검색방법에 있어서,
    트래픽이 가진 패턴에서 설정된 위치의 문자의 대소문자 정보와 설정된 위치의 문자를 제외한 패턴 정보를 추출하는 제1 추출 단계;
    트래픽이 가진 패턴을 설정된 패턴변환 규칙에 따라 변환하고, 설정된 패턴변환 규칙에 따라 변환된 트래픽이 가진 패턴에서 설정된 위치의 문자를 제외한 정보를 추출하는 제2 추출 단계;
    상기 변환된 패턴의 해쉬 값에 해당하는 메모리 주소에 저장된 침해패턴 정보를 읽어오는 읽기 단계; 및
    상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭 정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴 정보를 상기 제1추출 단계를 통해 추출된 정보와 비교하고, 상기 메모리 주소에 저장 침해패턴 정보에 노케이스 센시티브 매칭 정보가 포함된 경우에는 상기 메모리 주소에 저장된 침해패턴 정보를 설정된 패턴변환 규칙에 따라 변환한 후 상기 제2추출 단계를 통해 추출된 정보와 비교함으로써, 침해패턴 매칭 유무를 수행하는 확인 단계를 포함하는 침해패턴 처리시스템의 침해패턴 검색방법.
  16. 제15항에 있어서,
    상기 확인 단계는,
    상기 메모리 주소에 저장된 침해패턴 정보에 노케이스 센시티브 매칭 정보가 포함된 경우에 상기 메모리 주소에 저장된 침해패턴을 설정된 패턴규칙에 따라 변환하는 변환 단계; 와
    상기 변환 단계를 통해 변환된 침해패턴과 상기 제2추출 단계를 통해 추출된 정보와 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 판단 단계를 포함하는 침해패턴 처리시스템의 침해패턴 검색방법.
  17. 제16항에 있어서,
    상기 메모리 주소에 저장된 침해패턴 정보에 케이스 센시티브 매칭정보가 포함되어 있으면, 침해패턴의 설정된 위치의 문자의 대소문자 정보 및 침해패턴에서 설정된 위치의 문자를 제외한 침해패턴과, 상기 제1추출 단계를 통해 추출된 정보와 비교하여 트래픽이 가진 패턴의 유효 여부를 판단하는 단계를 더 포함하는 침해패턴 처리시스템의 침해패턴 검색방법.
KR1020070076950A 2006-12-01 2007-07-31 침해패턴 처리시스템 및 그 방법 KR100901701B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060120355 2006-12-01
KR20060120355 2006-12-01

Publications (2)

Publication Number Publication Date
KR20080050265A KR20080050265A (ko) 2008-06-05
KR100901701B1 true KR100901701B1 (ko) 2009-06-08

Family

ID=39805758

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070076950A KR100901701B1 (ko) 2006-12-01 2007-07-31 침해패턴 처리시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR100901701B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020024507A (ko) * 2000-09-25 2002-03-30 김병기 침입 판정을 위한 병렬처리 시스템
KR20020072618A (ko) * 2001-03-12 2002-09-18 (주)세보아 네트워크 기반 침입탐지 시스템
KR20060013815A (ko) * 2004-08-09 2006-02-14 한국전자통신연구원 해쉬 테이블 주소 분산 장치 및 방법, 이를 이용한패턴매칭 장치
US20060123480A1 (en) 2004-12-07 2006-06-08 Electronics And Telecommunications Research Institute Real-time network attack pattern detection system for unknown network attack and method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020024507A (ko) * 2000-09-25 2002-03-30 김병기 침입 판정을 위한 병렬처리 시스템
KR20020072618A (ko) * 2001-03-12 2002-09-18 (주)세보아 네트워크 기반 침입탐지 시스템
KR20060013815A (ko) * 2004-08-09 2006-02-14 한국전자통신연구원 해쉬 테이블 주소 분산 장치 및 방법, 이를 이용한패턴매칭 장치
US20060123480A1 (en) 2004-12-07 2006-06-08 Electronics And Telecommunications Research Institute Real-time network attack pattern detection system for unknown network attack and method thereof

Also Published As

Publication number Publication date
KR20080050265A (ko) 2008-06-05

Similar Documents

Publication Publication Date Title
US10178107B2 (en) Detection of malicious domains using recurring patterns in domain names
US9514246B2 (en) Anchored patterns
US9990583B2 (en) Match engine for detection of multi-pattern rules
CN112866023B (zh) 网络检测、模型训练方法、装置、设备及存储介质
US20120331554A1 (en) Regex Compiler
US20070169191A1 (en) Method and system for detecting a keylogger that encrypts data captured on a computer
JP6697123B2 (ja) プロファイル生成装置、攻撃検知装置、プロファイル生成方法、および、プロファイル生成プログラム
KR101874373B1 (ko) 난독화 스크립트에 대한 악성 스크립트 탐지 방법 및 그 장치
US20110271118A1 (en) Password generation methods and systems
CN107066883A (zh) 用于阻断脚本执行的系统和方法
JP2010516007A (ja) コンピュータ不正行為を検出するための方法及び装置
CN109495475B (zh) 域名检测方法及装置
JP4995170B2 (ja) 不正検知方法、不正検知装置、不正検知プログラムおよび情報処理システム
KR20160099160A (ko) 명령어 집합의 행위 패턴을 엔-그램 방식으로 모델링하는 방법, 그 방법으로 동작하는 컴퓨팅 장치, 및 그 방법을 컴퓨팅 장치에서 실행하도록 구성되는 기록 매체에 저장된 프로그램
EP3705974B1 (en) Classification device, classification method, and classification program
KR100901701B1 (ko) 침해패턴 처리시스템 및 그 방법
JP6602799B2 (ja) セキュリティ監視サーバ、セキュリティ監視方法、プログラム
KR101863569B1 (ko) 머신 러닝 기반의 취약점 정보를 분류하는 방법 및 장치
JP2012003463A (ja) シグネチャの生成を支援する支援装置、方法及びプログラム
CN112995218A (zh) 域名的异常检测方法、装置及设备
KR101893029B1 (ko) 머신 러닝 기반의 취약점 정보를 분류하는 방법 및 장치
JP7140268B2 (ja) 警告装置、制御方法、及びプログラム
CN114024701A (zh) 域名检测方法、装置及通信系统
Wu et al. Key stroke profiling for data loss prevention
JP7180765B2 (ja) 学習装置、判定装置、学習方法、判定方法、学習プログラムおよび判定プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130527

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130730

Year of fee payment: 19