KR101585876B1 - 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법 - Google Patents

분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법 Download PDF

Info

Publication number
KR101585876B1
KR101585876B1 KR1020150080903A KR20150080903A KR101585876B1 KR 101585876 B1 KR101585876 B1 KR 101585876B1 KR 1020150080903 A KR1020150080903 A KR 1020150080903A KR 20150080903 A KR20150080903 A KR 20150080903A KR 101585876 B1 KR101585876 B1 KR 101585876B1
Authority
KR
South Korea
Prior art keywords
data
burst
data burst
stored
white list
Prior art date
Application number
KR1020150080903A
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 KR1020150080903A priority Critical patent/KR101585876B1/ko
Application granted granted Critical
Publication of KR101585876B1 publication Critical patent/KR101585876B1/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/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법이 개시된다. 본 발명에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법은 정상 데이터 버스트(burst)들을 화이트 리스트로 관리함으로써, 상기 화이트 리스트 상에 존재하지 않는 데이터 버스트가 분산 네트워크 프로토콜 기반의 데이터 수신 장치로 수신되는 것으로 판단되는 경우, 침입 경고 메시지를 출력함으로써, 해커 등에 의해서 분산 네트워크 프로토콜 기반의 데이터 수신 장치로 침입이 발생할 때, 관리자가 데이터 수신을 차단시키거나 장비를 리셋시키는 등의 조치를 취하게 하여 공격에 의한 피해를 최소화할 수 있다.

Description

분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법{DISTRIBUTED NETWORK PROTOCOL BASED DATA RECEIVING DEVICE AND INTRUSION DETECTION METHOD THEREOF}
본 발명의 실시예들은 분산 네트워크 프로토콜 기반의 데이터 수신 장치가 데이터 전송 장치로부터 데이터를 수신할 때, 해당 데이터에 대한 침입을 탐지함으로써, 보안을 강화시킬 수 있는 기법에 대한 기술과 관련된다.
최근 전력망에 IT를 접목하는 형태인 스마트 그리드(Smart Grid)가 활성화되어감에 따라, 전력망의 핵심 요소 중 하나인 SCADA(Supervisory Control and Data Acquisition) 시스템도 점차 기존의 폐쇄 형태가 아닌 개방형으로 변화해가고 있다.
이에 따라 기존에 많은 취약점을 가지고 있었던 SCADA 시스템에 대한 보안 연구가 활발히 진행되고 있다. SCADA 시스템과 같은 제어 시스템에서는 데이터 전송 장치와 데이터 수신 장치 간의 데이터 송수신을 위한 프로토콜로 분산 네트워크 프로토콜(Distributed Network Protocol: DNP3)이 표준 프로토콜로 많이 사용되고 있는데, 이러한 분산 네트워크 프로토콜을 기반으로 하는 데이터 송수신 과정에서는 해커의 침입을 방지하여 보안을 강화시킬 수 있는 기법에 대한 연구가 필요하다.
분산 네트워크 프로토콜에서는 데이터 버스트(burst)라는 개념이 도입되어 있는데, 데이터 버스트란 데이터 전송 장치로부터 데이터 수신 장치에 선정된(predetermined) 시간이내의 간격으로 수신되는 연속적인 데이터 패킷들에 대한 집합을 의미한다. 즉, 소정의 임계치보다 짧은 시간 간격으로 수신된 데이터 패킷들의 연속된 집합이 하나의 데이터 버스트를 의미한다.
보통, 데이터 버스트는 "데이터가 전송되는 방향(예컨대, 마스터 단말에서 슬래이브 단말로 데이터가 전송되는 경우에는 "+", 슬래이브 단말에서 마스터 단말로 데이터가 전송되는 경우에는 "-" 등으로 표현할 수 있음), 함수 코드, 데이터 객체"에 대한 정보가 포함된 "MControls" 및 "데이터가 전송되는 방향, 0보다 큰 페이로드 크기"에 대한 정보가 포함된 "MPayloads"로 정의될 수 있다. 관련해서, 하기의 표 1은 특정 데이터 버스트를 정의한 예를 나타낸 것이다.
MControls +, 03, (12,01), 1 +, 32, (120,02), 2 +, 04, (12,01), 1
MPayloads +, 18, 2 +, 28, 2
분산 네트워크 프로토콜을 기반으로 데이터를 송수신하는 제어 시스템에서는 전술한 바와 같이, 일정 시간 간격으로 데이터 패킷들이 데이터 전송 장치로부터 데이터 수신 장치에 수신되는 데이터 버스트가 존재한다는 점에서 이러한 데이터 버스트를 활용한 공격에 취약할 수 있다.
따라서, 분산 네트워크 프로토콜 기반의 데이터 수신 장치에서 데이터 버스트를 수신할 때, 해당 데이터 버스트가 정상적인 데이터 버스트인지 여부를 탐지함으로써, 데이터 버스트를 통한 공격에 방어할 수 있는 기법에 대한 연구가 필요하다.
본 발명에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법은 정상 데이터 버스트(burst)들을 화이트 리스트로 관리함으로써, 상기 화이트 리스트 상에 존재하지 않는 데이터 버스트가 분산 네트워크 프로토콜 기반의 데이터 수신 장치로 수신되는 것으로 판단되는 경우, 침입 경고 메시지를 출력함으로써, 해커 등에 의해서 분산 네트워크 프로토콜 기반의 데이터 수신 장치로 침입이 발생할 때, 관리자가 데이터 수신을 차단시키거나 장비를 리셋시키는 등의 조치를 취하게 하여 공격에 의한 피해를 최소화할 수 있도록 지원하고자 한다.
본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치는 화이트 리스트로 지정된 복수의 데이터 버스트(burst)들이 저장되어 있는 화이트 리스트 데이터베이스, 데이터 전송 장치로부터 복수의 데이터 패킷들을 수신하여 상기 복수의 데이터 패킷들을 수신 순서에 따라 데이터 패킷 버퍼에 순차적으로 저장하는 데이터 수신부, 상기 데이터 패킷 버퍼 상에 저장되는 상기 복수의 데이터 패킷들에 대한 수신 시간 간격을 확인하여, 상기 데이터 패킷 버퍼 상에 선정된(predetermined) 시간이내의 간격으로 수신된 적어도 하나의 제1 데이터 패킷이 저장된 이후 상기 선정된 시간이내에 신규 데이터 패킷이 수신되지 않는 경우, 상기 적어도 하나의 제1 데이터 패킷을 제1 데이터 버스트로 구성하고, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는지 여부를 판단하는 침입 판단부 및 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하지 않는 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력하는 침입 탐지부를 포함한다.
또한, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법은 화이트 리스트로 지정된 복수의 데이터 버스트들이 저장되어 있는 화이트 리스트 데이터베이스를 유지하는 단계, 데이터 수신부를 통해 데이터 전송 장치로부터 복수의 데이터 패킷들을 수신하여 상기 복수의 데이터 패킷들을 수신 순서에 따라 데이터 패킷 버퍼에 순차적으로 저장하는 단계, 상기 데이터 패킷 버퍼 상에 저장되는 상기 복수의 데이터 패킷들에 대한 수신 시간 간격을 확인하여, 상기 데이터 패킷 버퍼 상에 선정된 시간이내의 간격으로 수신된 적어도 하나의 제1 데이터 패킷이 저장된 이후 상기 선정된 시간이내에 신규 데이터 패킷이 수신되지 않는 경우, 상기 적어도 하나의 제1 데이터 패킷을 제1 데이터 버스트로 구성하고, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는지 여부를 판단하는 단계 및 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하지 않는 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력하는 단계를 포함한다.
본 발명에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법은 정상 데이터 버스트(burst)들을 화이트 리스트로 관리함으로써, 상기 화이트 리스트 상에 존재하지 않는 데이터 버스트가 분산 네트워크 프로토콜 기반의 데이터 수신 장치로 수신되는 것으로 판단되는 경우, 침입 경고 메시지를 출력함으로써, 해커 등에 의해서 분산 네트워크 프로토콜 기반의 데이터 수신 장치로 침입이 발생할 때, 관리자가 데이터 수신을 차단시키거나 장비를 리셋시키는 등의 조치를 취하게 하여 공격에 의한 피해를 최소화할 수 있다.
도 1은 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치를 설명하기 위한 시스템 개념도이다.
도 2는 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 구조를 도시한 도면이다.
도 3은 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법을 도시한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치를 설명하기 위한 시스템 개념도이다.
도 1을 참조하면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)와 데이터 전송 장치(120)가 도시되어 있다.
여기서, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 분산 네트워크 프로토콜을 기반으로 데이터 전송 장치(120)와 데이터 송수신을 수행하는 장치로, 전신주 등에 설치되어 데이터 전송 장치(120)로부터 전송되는 제어 명령을 수신하여 해당 제어 명령에 따른 동작을 수행하도록 구성될 수 있다.
우선, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에는 관리자에 의해 화이트 리스트로 미리 지정된 복수의 데이터 버스트(burst)들이 저장되어 있는 화이트 리스트 데이터베이스가 포함되어 있을 수 있다.
만약, 데이터 전송 장치(120)로부터 데이터 패킷들이 전송되면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 데이터 패킷들을 수신하여 수신된 데이터 패킷들을 그 수신 순서에 따라 데이터 패킷 버퍼에 순차적으로 저장할 수 있다.
이때, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)로부터 수신되는 데이터 패킷들을 상기 데이터 패킷 버퍼에 순차적으로 저장하면서, 상기 데이터 패킷들이 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 수신되는 시간에 대한 간격을 확인할 수 있다.
만약, 상기 데이터 패킷 버퍼 상에 적어도 하나의 제1 데이터 패킷이 선정된(predetermined) 시간이내의 간격으로 수신되어 저장된 이후에 상기 선정된 시간이내에 신규 데이터 패킷이 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 수신되지 않은 것으로 확인된 경우, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 적어도 하나의 제1 데이터 패킷을 묶어서 제1 데이터 버스트로 구성할 수 있다.
그러고 나서, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는지 여부를 판단할 수 있다.
만약, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는 경우, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트를 정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트 상에 포함되어 있는 제어 명령에 따른 동작을 수행할 수 있다.
하지만, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하지 않는 경우, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력할 수 있다.
예컨대, 상기 제1 데이터 버스트가 하기의 표 2와 같이 정의되는 데이터 버스트라고 하는 경우, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트의 "MControls" 및 "MPayloads"와 일치하는 타입을 갖는 데이터 버스트가 저장되어 있는지 여부를 확인한 후 동일한 타입의 데이터 버스트가 존재하지 않는 것으로 확인되면, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 관리자에게 상기 제1 데이터 버스트가 시스템 침입에 사용되는 데이터 버스트라는 것을 알리기 위한 침입 경고 메시지를 출력할 수 있다.
MControls +, 03, (12,01), 1 +, 32, (120,02), 2 +, 04, (12,01), 1
MPayloads +, 18, 2 +, 28, 2
결국, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 정상 데이터 버스트들을 화이트 리스트로 관리함으로써, 상기 화이트 리스트 상에 존재하지 않는 데이터 버스트가 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)로 수신되는 것으로 판단되는 경우, 침입 경고 메시지를 출력함으로써, 해커 등에 의해서 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)로 침입이 발생할 때, 관리자가 데이터 수신을 차단시키거나 장비를 리셋시키는 등의 조치를 취하게 하여 공격에 의한 피해를 최소화하도록 유도할 수 있다.
이러한 방식으로 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트에 대한 침입 탐지를 수행하는 것뿐만 아니라, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)로 수신되는 모든 데이터 패킷들의 수신 시간 간격을 확인하여 상기 수신 시간 간격이 선정된 시간을 벗어나는 시점마다 해당 데이터 패킷들을 데이터 버스트로 구성한 후 상기 화이트 리스트 데이터베이스를 참조하여 각 데이터 버스트들이 정상 데이터 버스트가 맞는지 여부를 확인하는 방식으로 침입 탐지를 수행할 수 있다.
본 발명의 일실시예에 따르면, 상기 화이트 리스트 데이터베이스에는 데이터 버스트 간에 정상이라고 판단되는 선정된 수신 시간 간격에 대한 정보가 추가로 저장되어 있을 수 있다.
이때, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트에 대한 구성이 완료되면, 상기 제1 데이터 버스트가 수신되기 직전에 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 수신되었던 제2 데이터 버스트와, 상기 제1 데이터 버스트 간의 수신 시간 간격을 추가로 확인할 수 있다.
즉, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 상기 제2 데이터 버스트가 수신되었고, 그 이후 상기 제1 데이터 버스트가 수신되었다면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격을 확인할 수 있다.
그러고 나서, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하는지 여부를 판단할 수 있다.
만약, 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하지 않는 것으로 판단된 경우, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트의 타입 정보와 일치하는 타입 정보를 갖는 데이터 버스트가 존재하더라도, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력할 수 있다.
즉, 상기 제1 데이터 버스트가 상기 화이트 리스트 데이터베이스에 저장되어 있는 정상 데이터 버스트와 동일한 타입의 데이터 버스트에 해당되더라도, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 상기 제2 데이터 버스트가 수신된 시점으로부터 정상 수신 시간 간격이후에 수신된 데이터 버스트가 아니라면, 상기 제1 데이터 버스트는 해커 등에 의해 트래픽 유발 등과 같은 공격용 데이터 버스트로 볼 수 있다는 점에서 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력할 수 있다.
본 발명의 일실시예에 따르면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 테이블 유지부를 통해 복수의 선정된 중요 데이터의 종류에 대한 정보들이 기록되어 있는 테이블을 저장하여 유지할 수 있다.
예컨대, 상기 테이블에는 하기의 표 3과 같이 정보가 기록되어 있을 수 있다.
중요 데이터의 종류
1. 구동 중지 명령
2. 모니터링 데이터 전송 명령
3. 식별 정보 전송 명령
...
관련해서, 표 3에 나타낸 바와 같이, 데이터 전송 장치(120)로부터 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 전송되는 데이터 내에 장비에 대한 구동 중지 명령, 장비에 대한 모니터링 데이터 전송 명령 또는 장비에 대한 식별 정보 전송 명령이 포함되어 있다면, 해당 데이터는 중요 데이터라 볼 수 있다.
이때, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트가 비정상 데이터 버스트인지 여부를 확인한 결과, 상기 제1 데이터 버스트가 비정상 데이터 버스트인 것으로 판단되면, 상기 표 3과 같은 테이블을 참조하여 상기 제1 데이터 버스트 내에 중요 데이터가 포함되어 있는지 여부를 확인할 수 있다.
이때, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 데이터 버스트 내에 포함되어 있는 데이터 패킷들의 헤더(header)를 파싱(parsing)함으로써, 상기 제1 데이터 버스트 내에 포함되어 있는 데이터의 종류를 확인할 수 있고, 이를 통해 상기 테이블을 참조하여 상기 제1 데이터 버스트 내에 중요 데이터가 포함되어 있는지 여부를 확인할 수 있다.
만약, 상기 제1 데이터 버스트 내에 상기 중요 데이터가 포함되어 있지 않은 경우, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)에 대해 상기 제1 데이터 버스트에 대한 정상 데이터 확인 요청 메시지를 전송할 수 있다.
그리고, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 정상 확인 메시지가 수신되면, 상기 침입 경고 메시지의 출력을 취소하고 상기 제1 데이터 버스트에 대한 정상 수신 확인 메시지를 출력할 수 있다.
결국, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)로부터 수신된 특정 데이터 버스트가 화이트 리스트 상에 포함되어 있지 않은 데이터 버스트인 것으로 판단되면, 해당 데이터 버스트 내에 미리 지정된 중요 데이터가 포함되어 있는지 확인한 후 해당 데이터 버스트 내에 중요 데이터가 포함되어 있지 않다면, 데이터 전송 장치(120)에 대해 해당 데이터 버스트가 비정상 데이터 버스트가 아닌 정상 데이터 버스트가 맞는지 확인하는 정상 데이터 확인 요청 메시지를 전송함으로써, 해당 데이터 버스트를 침입으로 판단하기 전에 한 번 더 해당 데이터 버스트에 대한 검증을 수행하여 정상인 데이터 버스트가 관리자에 의해 차단되는 것을 방지할 수 있다.
이때, 본 발명의 일실시예에 따르면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 상기 정상 확인 메시지가 수신되면, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트를 화이트 리스트로 추가하여 상기 화이트 리스트 데이터베이스를 갱신함으로써, 추후 상기 제1 데이터 버스트와 동일한 타입의 데이터 버스트가 다시 수신되는 경우, 해당 데이터 버스트를 침입으로 탐지하지 않도록 할 수 있다.
지금까지는 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)가 데이터 버스트 단위로 침입여부를 탐지하는 과정에 대해서 설명하였다. 하지만, 데이터 버스트는 전술한 바와 같이, 소정 시간 간격이내로 수신된 데이터 패킷들의 집합이라는 점에서 데이터 버스트 단위로 침입여부를 탐지하는 방식은 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 소정 시간 간격이내로 수신된 데이터 패킷들이 데이터 버스트로 구성되기 전까지 각 데이터 패킷들에 대해 침입 탐지를 수행하지 못하는 문제를 일으킬 수 있다.
따라서, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)로부터 수신되는 데이터 패킷들에 대해 데이터 버스트 단위로 침입여부를 탐지함과 동시에 해당 데이터 패킷들이 데이터 버스트로 구성되기 전에는 데이터 버스트로 아직 구성되지 않는 데이터 패킷들을 묶어서 서브 데이터 버스트로 구성한 후 상기 서브 데이터 버스트 단위로 침입여부를 탐지함으로써, 데이터 전송 장치(120)로부터 수신되는 데이터 패킷들이 데이터 버스트 단위로 구성되기 전이라도 해커 등에 의한 침입여부를 탐지할 수 있다.
관련하여, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 선정된 시간이내의 간격으로 수신되는 상기 적어도 하나의 제1 데이터 패킷이 상기 데이터 패킷 버퍼 상에 하나씩 저장될 때마다, 상기 데이터 패킷 버퍼 상에 저장이 완료된 데이터 패킷들을 서브 데이터 버스트로 구성할 수 있다.
즉, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)로부터 적어도 하나의 제1 데이터 패킷이 상기 선정된 시간이내의 간격으로 수신됨으로 인해 아직 데이터 버스트로 구성되지 않는 경우, 상기 적어도 하나의 제1 데이터 패킷이 상기 데이터 패킷 버퍼 상에 하나씩 저장될 때마다, 상기 데이터 패킷 버퍼 상에 저장이 완료된 데이터 패킷들을 마치 데이터 버스트로 구성하는 것처럼 하나로 묶어, "데이터가 전송되는 방향, 함수 코드, 데이터 객체"에 대한 정보가 포함된 "MControls" 및 "데이터가 전송되는 방향, 0보다 큰 페이로드 크기"에 대한 정보가 포함된 "MPayloads"로 정의함으로써, 서브 데이터 버스트로 구성할 수 있다.
예컨대, 상기 데이터 패킷 버퍼 상에 "데이터 패킷 1"이 저장되어 있고, "데이터 패킷 1"이 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 수신된 이후, 상기 선정된 시간 간격이내에 "데이터 패킷 2"가 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 수신됨으로 인해, 상기 데이터 패킷 버퍼 상에 "데이터 패킷 2"가 추가로 저장되면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 "데이터 패킷 1"과 "데이터 패킷 2"를 묶어, "MControls" 및 "MPayloads"로 정의되는 하나의 서브 데이터 버스트 1로 구성할 수 있다.
그 이후, "데이터 패킷 3"이 상기 선정된 시간 간격이내에 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 추가로 수신됨으로 인해, 상기 데이터 패킷 버퍼 상에 "데이터 패킷 3"이 추가로 저장되면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 "데이터 패킷 1", "데이터 패킷 2" 및 "데이터 패킷 3"을 묶어, "MControls" 및 "MPayloads"로 정의되는 하나의 서브 데이터 버스트 2로 구성할 수 있다.
이렇게, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 선정된 시간이내의 간격으로 수신되는 상기 적어도 하나의 제1 데이터 패킷이 상기 데이터 패킷 버퍼 상에 하나씩 저장될 때마다, 상기 데이터 패킷 버퍼 상에 저장이 완료된 데이터 패킷들을 서브 데이터 버스트로 구성할 수 있고, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 서브 데이터 버스트가 구성될 때마다, 상기 화이트 리스트 데이터베이스 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단할 수 있다.
예컨대, 상기 서브 데이터 버스트 1이 구성되었다고 가정하면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 화이트 리스트 데이터베이스 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트 1의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단할 수 있다.
이때, 상기 서브 데이터 버스트 1이 하기의 표 4와 같이 정의되는 경우, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 화이트 리스트 데이터베이스 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트 1의 "MControls"의 타입과 "MPayloads"의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단할 수 있다.
MControls +, 03, (12,01), 1 +, 32, (120,02), 2
MPayloads +, 18, 2 +, 28, 2
이렇게, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)가 상기 서브 데이터 버스트가 구성될 때마다, 상기 화이트 리스트 데이터베이스 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단한 결과, 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 상기 화이트 리스트 데이터베이스 상에 존재하지 않는 것으로 판단된 제1 서브 데이터 버스트가 존재하는 경우, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 제1 서브 데이터 버스트가 구성되는 시점에서의 상기 데이터 패킷 버퍼에 저장된 데이터 패킷을 비정상 데이터 패킷으로 판단하여 상기 데이터 패킷에 대한 침입 경고 메시지를 출력할 수 있다.
예컨대, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)가 상기 서브 데이터 버스트 1에 대해서 상기 화이트 리스트 데이터베이스와 비교해 보고, 상기 서브 데이터 버스트 2에 대해서 상기 화이트 리스트 데이터베이스와 비교해 본 결과, 상기 서브 데이터 버스트 1의 타입을 모두 포함하고 있는 데이터 버스트는 상기 화이트 리스트 데이터베이스에 저장되어 있는 것으로 확인되었지만, 상기 서브 데이터 버스트 2의 타입을 모두 포함하고 있는 데이터 버스트는 상기 화이트 리스트 데이터베이스에 저장되어 있지 않은 것으로 확인되었다면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 상기 서브 데이터 버스트 2가 구성되는 시점에서 상기 데이터 패킷 버퍼에 저장된 데이터 패킷인 "데이터 패킷 3"을 비정상 데이터 패킷으로 판단하여 "데이터 패킷 3"에 대한 침입 경고 메시지를 출력할 수 있다.
결국, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)는 데이터 전송 장치(120)로부터 전송되는 데이터에 대한 침입여부를 탐지하는 것과 관련해서, 데이터 버스트 단위로 화이트 리스트와 비교하여 침입여부를 탐지하되, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 수신된 데이터 패킷들이 아직 데이터 버스트로 구성되기 전에는 각 데이터 패킷들을 서브 데이터 버스트로 구성하여 상기 화이트 리스트와의 비교를 통해 침입여부를 탐지함으로써, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 수신되는 데이터에 대한 보안을 더욱 강화시킬 수 있다.
도 2는 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 구조를 도시한 도면이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치(210)는 화이트 리스트 데이터베이스(211), 데이터 수신부(212), 침입 판단부(213) 및 침입 탐지부(214)를 포함한다.
화이트 리스트 데이터베이스(211)에는 화이트 리스트로 지정된 복수의 데이터 버스트들이 저장되어 있다.
데이터 수신부(212)는 데이터 전송 장치(230)로부터 복수의 데이터 패킷들을 수신하여 상기 복수의 데이터 패킷들을 수신 순서에 따라 데이터 패킷 버퍼에 순차적으로 저장한다.
침입 판단부(213)는 상기 데이터 패킷 버퍼 상에 저장되는 상기 복수의 데이터 패킷들에 대한 수신 시간 간격을 확인하여, 상기 데이터 패킷 버퍼 상에 선정된 시간이내의 간격으로 수신된 적어도 하나의 제1 데이터 패킷이 저장된 이후 상기 선정된 시간이내에 신규 데이터 패킷이 수신되지 않는 경우, 상기 적어도 하나의 제1 데이터 패킷을 제1 데이터 버스트로 구성하고, 화이트 리스트 데이터베이스(211) 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는지 여부를 판단한다.
침입 탐지부(214)는 화이트 리스트 데이터베이스(211) 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하지 않는 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력한다.
이때, 본 발명의 일실시예에 따르면, 화이트 리스트 데이터베이스(211)에는 데이터 버스트 간의 선정된 수신 시간 간격에 대한 정보가 추가로 저장되어 있을 수 있다.
이때, 침입 판단부(213)는 수신 시간 간격 확인부(215) 및 수신 시간 간격 판단부(216)를 포함할 수 있다.
수신 시간 간격 확인부(215)는 상기 제1 데이터 버스트에 대한 구성이 완료되면, 데이터 수신부(212)에 상기 제1 데이터 버스트가 수신되기 직전에 데이터 수신부(212)에 수신되었던 제2 데이터 버스트와, 상기 제1 데이터 버스트 간의 수신 시간 간격을 확인한다.
수신 시간 간격 판단부(216)는 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 화이트 리스트 데이터베이스(211)에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하는지 여부를 판단한다.
이때, 침입 탐지부(214)는 화이트 리스트 데이터베이스(211) 상에 상기 제1 데이터 버스트의 타입 정보와 일치하는 타입 정보를 갖는 데이터 버스트가 존재하지 않거나, 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 화이트 리스트 데이터베이스(211)에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하지 않는 것으로 판단된 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력할 수 있다.
또한, 본 발명의 일실시예에 따르면, 침입 판단부(213)는 서브 데이터 버스트 구성부(217) 및 서브 데이터 버스트 판단부(218)를 포함할 수 있다.
서브 데이터 버스트 구성부(217)는 상기 선정된 시간이내의 간격으로 수신되는 상기 적어도 하나의 제1 데이터 패킷이 상기 데이터 패킷 버퍼 상에 하나씩 저장될 때마다, 상기 데이터 패킷 버퍼 상에 저장이 완료된 데이터 패킷들을 서브 데이터 버스트로 구성한다.
서브 데이터 버스트 판단부(218)는 상기 서브 데이터 버스트가 구성될 때마다, 화이트 리스트 데이터베이스(211) 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단한다.
이때, 침입 탐지부(214)는 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 화이트 리스트 데이터베이스(211) 상에 존재하지 않는 것으로 판단된 제1 서브 데이터 버스트가 존재하는 경우, 상기 제1 서브 데이터 버스트가 구성되는 시점에서의 상기 데이터 패킷 버퍼에 저장된 제2 데이터 패킷을 비정상 데이터 패킷으로 판단하여 상기 제2 데이터 패킷에 대한 침입 경고 메시지를 출력할 수 있다.
본 발명의 일실시예에 따르면, 침입 탐지부(214)는 테이블 유지부(219), 중요 데이터 확인부(220), 메시지 전송부(221) 및 메시지 출력부(222)를 포함할 수 있다.
테이블 유지부(219)는 복수의 선정된 중요 데이터의 종류에 대한 정보들이 기록되어 있는 테이블을 저장하여 유지한다.
중요 데이터 확인부(220)는 상기 제1 데이터 버스트가 비정상 데이터 버스트로 판단되면, 상기 테이블을 참조하여 상기 제1 데이터 버스트 내에 중요 데이터가 포함되어 있는지 여부를 확인한다.
메시지 전송부(221)는 상기 제1 데이터 버스트 내에 상기 중요 데이터가 포함되어 있지 않은 경우, 데이터 전송 장치(230)에 대해 상기 제1 데이터 버스트에 대한 정상 데이터 확인 요청 메시지를 전송한다.
메시지 출력부(222)는 데이터 전송 장치(230)로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 정상 확인 메시지가 수신되면, 상기 침입 경고 메시지의 출력을 취소하고 상기 제1 데이터 버스트에 대한 정상 수신 확인 메시지를 출력한다.
이때, 본 발명의 일실시예에 따르면, 분산 네트워크 프로토콜 기반의 데이터 수신 장치(210)는 데이터 전송 장치(230)로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 상기 정상 확인 메시지가 수신되면, 화이트 리스트 데이터베이스(211) 상에 상기 제1 데이터 버스트를 화이트 리스트로 추가하여 화이트 리스트 데이터베이스(230)를 갱신하는 화이트 리스트 갱신부(223)를 더 포함할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치(210)에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치(210)는 도 1을 이용하여 설명한 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110)에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
도 3은 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법을 도시한 도면이다.
단계(S310)에서는 화이트 리스트로 지정된 복수의 데이터 버스트들이 저장되어 있는 화이트 리스트 데이터베이스를 유지한다.
단계(S320)에서는 데이터 수신부를 통해 데이터 전송 장치로부터 복수의 데이터 패킷들을 수신하여 상기 복수의 데이터 패킷들을 수신 순서에 따라 데이터 패킷 버퍼에 순차적으로 저장한다.
단계(S330)에서는 상기 데이터 패킷 버퍼 상에 저장되는 상기 복수의 데이터 패킷들에 대한 수신 시간 간격을 확인하여, 상기 데이터 패킷 버퍼 상에 선정된 시간이내의 간격으로 수신된 적어도 하나의 제1 데이터 패킷이 저장된 이후 상기 선정된 시간이내에 신규 데이터 패킷이 수신되지 않는 경우, 상기 적어도 하나의 제1 데이터 패킷을 제1 데이터 버스트로 구성하고, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는지 여부를 판단한다.
단계(S340)에서는 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하지 않는 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력한다.
이때, 본 발명의 일실시예에 따르면, 상기 화이트 리스트 데이터베이스에는 데이터 버스트 간의 선정된 수신 시간 간격에 대한 정보가 추가로 저장되어 있을 수 있다.
이때, 단계(S330)에서는 상기 제1 데이터 버스트에 대한 구성이 완료되면, 상기 데이터 수신부에 상기 제1 데이터 버스트가 수신되기 직전에 상기 데이터 수신부에 수신되었던 제2 데이터 버스트와, 상기 제1 데이터 버스트 간의 수신 시간 간격을 확인하는 단계 및 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하는지 여부를 판단하는 단계를 포함할 수 있다.
이때, 단계(S340)에서는 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트의 타입 정보와 일치하는 타입 정보를 갖는 데이터 버스트가 존재하지 않거나, 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하지 않는 것으로 판단된 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법은 상기 선정된 시간이내의 간격으로 수신되는 상기 적어도 하나의 제1 데이터 패킷이 상기 데이터 패킷 버퍼 상에 하나씩 저장될 때마다, 상기 데이터 패킷 버퍼 상에 저장이 완료된 데이터 패킷들을 서브 데이터 버스트로 구성하는 단계, 상기 서브 데이터 버스트가 구성될 때마다, 상기 화이트 리스트 데이터베이스 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단하는 단계 및 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 상기 화이트 리스트 데이터베이스 상에 존재하지 않는 것으로 판단된 제1 서브 데이터 버스트가 존재하는 경우, 상기 제1 서브 데이터 버스트가 구성되는 시점에서의 상기 데이터 패킷 버퍼에 저장된 제2 데이터 패킷을 비정상 데이터 패킷으로 판단하여 상기 제2 데이터 패킷에 대한 침입 경고 메시지를 출력하는 단계를 더 포함할 수 있다.
또한, 본 발명의 일실시예에 따르면, 단계(S340)에서는 복수의 선정된 중요 데이터의 종류에 대한 정보들이 기록되어 있는 테이블을 저장하여 유지하는 단계, 상기 제1 데이터 버스트가 비정상 데이터 버스트로 판단되면, 상기 테이블을 참조하여 상기 제1 데이터 버스트 내에 중요 데이터가 포함되어 있는지 여부를 확인하는 단계, 상기 제1 데이터 버스트 내에 상기 중요 데이터가 포함되어 있지 않은 경우, 상기 데이터 전송 장치에 대해 상기 제1 데이터 버스트에 대한 정상 데이터 확인 요청 메시지를 전송하는 단계 및 상기 데이터 전송 장치로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 정상 확인 메시지가 수신되면, 상기 침입 경고 메시지의 출력을 취소하고 상기 제1 데이터 버스트에 대한 정상 수신 확인 메시지를 출력하는 단계를 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법은 상기 데이터 전송 장치로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 상기 정상 확인 메시지가 수신되면, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트를 화이트 리스트로 추가하여 상기 화이트 리스트 데이터베이스를 갱신하는 단계를 더 포함할 수 있다.
이상, 도 3을 참조하여 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법은 도 1과 도 2를 이용하여 설명한 분산 네트워크 프로토콜 기반의 데이터 수신 장치(110, 210)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 분산 네트워크 프로토콜 기반의 데이터 수신 장치
120: 데이터 전송 장치
210: 분산 네트워크 프로토콜 기반의 데이터 수신 장치
211: 화이트 리스트 데이터베이스 212: 데이터 수신부
213: 침입 판단부 214: 침입 탐지부
215: 수신 시간 간격 확인부 216: 수신 시간 간격 판단부
217: 서브 데이터 버스트 구성부 218: 서브 데이터 버스트 판단부
219: 테이블 유지부 220: 중요 데이터 확인부
221: 메시지 전송부 222: 메시지 출력부
223: 화이트 리스트 갱신부
230: 데이터 전송 장치

Claims (12)

  1. 분산 네트워크 프로토콜 기반의 데이터 수신 장치에 있어서,
    화이트 리스트로 지정된 복수의 데이터 버스트(burst)들이 저장되어 있는 화이트 리스트 데이터베이스;
    데이터 전송 장치로부터 복수의 데이터 패킷들을 수신하여 상기 복수의 데이터 패킷들을 수신 순서에 따라 데이터 패킷 버퍼에 순차적으로 저장하는 데이터 수신부;
    상기 데이터 패킷 버퍼 상에 저장되는 상기 복수의 데이터 패킷들에 대한 수신 시간 간격을 확인하여, 상기 데이터 패킷 버퍼 상에 선정된(predetermined) 시간이내의 간격으로 수신된 적어도 하나의 제1 데이터 패킷이 저장된 이후 상기 선정된 시간이내에 신규 데이터 패킷이 수신되지 않는 경우, 상기 적어도 하나의 제1 데이터 패킷을 제1 데이터 버스트로 구성하고, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는지 여부를 판단하는 침입 판단부; 및
    상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하지 않는 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력하는 침입 탐지부
    를 포함하고,
    상기 침입 탐지부는
    복수의 선정된 중요 데이터의 종류에 대한 정보들이 기록되어 있는 테이블을 저장하여 유지하는 테이블 유지부;
    상기 제1 데이터 버스트가 비정상 데이터 버스트로 판단되면, 상기 테이블을 참조하여 상기 제1 데이터 버스트 내에 중요 데이터가 포함되어 있는지 여부를 확인하는 중요 데이터 확인부;
    상기 제1 데이터 버스트 내에 상기 중요 데이터가 포함되어 있지 않은 경우, 상기 데이터 전송 장치에 대해 상기 제1 데이터 버스트에 대한 정상 데이터 확인 요청 메시지를 전송하는 메시지 전송부; 및
    상기 데이터 전송 장치로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 정상 확인 메시지가 수신되면, 상기 침입 경고 메시지의 출력을 취소하고 상기 제1 데이터 버스트에 대한 정상 수신 확인 메시지를 출력하는 메시지 출력부
    를 포함하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치.
  2. 제1항에 있어서,
    상기 화이트 리스트 데이터베이스에는
    데이터 버스트 간의 선정된 수신 시간 간격에 대한 정보가 추가로 저장되어 있고,
    상기 침입 판단부는
    상기 제1 데이터 버스트에 대한 구성이 완료되면, 상기 데이터 수신부에 상기 제1 데이터 버스트가 수신되기 직전에 상기 데이터 수신부에 수신되었던 제2 데이터 버스트와, 상기 제1 데이터 버스트 간의 수신 시간 간격을 확인하는 수신 시간 간격 확인부; 및
    상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하는지 여부를 판단하는 수신 시간 간격 판단부
    를 포함하고,
    상기 침입 탐지부는
    상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트의 타입 정보와 일치하는 타입 정보를 갖는 데이터 버스트가 존재하지 않거나, 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하지 않는 것으로 판단된 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치.
  3. 제1항에 있어서,
    상기 침입 판단부는
    상기 선정된 시간이내의 간격으로 수신되는 상기 적어도 하나의 제1 데이터 패킷이 상기 데이터 패킷 버퍼 상에 하나씩 저장될 때마다, 상기 데이터 패킷 버퍼 상에 저장이 완료된 데이터 패킷들을 서브 데이터 버스트로 구성하는 서브 데이터 버스트 구성부; 및
    상기 서브 데이터 버스트가 구성될 때마다, 상기 화이트 리스트 데이터베이스 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단하는 서브 데이터 버스트 판단부
    를 포함하고,
    상기 침입 탐지부는
    상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 상기 화이트 리스트 데이터베이스 상에 존재하지 않는 것으로 판단된 제1 서브 데이터 버스트가 존재하는 경우, 상기 제1 서브 데이터 버스트가 구성되는 시점에서의 상기 데이터 패킷 버퍼에 저장된 제2 데이터 패킷을 비정상 데이터 패킷으로 판단하여 상기 제2 데이터 패킷에 대한 침입 경고 메시지를 출력하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치.
  4. 삭제
  5. 제1항에 있어서,
    상기 데이터 전송 장치로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 상기 정상 확인 메시지가 수신되면, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트를 화이트 리스트로 추가하여 상기 화이트 리스트 데이터베이스를 갱신하는 화이트 리스트 갱신부
    를 더 포함하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치.
  6. 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법에 있어서,
    화이트 리스트로 지정된 복수의 데이터 버스트(burst)들이 저장되어 있는 화이트 리스트 데이터베이스를 유지하는 단계;
    데이터 수신부를 통해 데이터 전송 장치로부터 복수의 데이터 패킷들을 수신하여 상기 복수의 데이터 패킷들을 수신 순서에 따라 데이터 패킷 버퍼에 순차적으로 저장하는 단계;
    상기 데이터 패킷 버퍼 상에 저장되는 상기 복수의 데이터 패킷들에 대한 수신 시간 간격을 확인하여, 상기 데이터 패킷 버퍼 상에 선정된(predetermined) 시간이내의 간격으로 수신된 적어도 하나의 제1 데이터 패킷이 저장된 이후 상기 선정된 시간이내에 신규 데이터 패킷이 수신되지 않는 경우, 상기 적어도 하나의 제1 데이터 패킷을 제1 데이터 버스트로 구성하고, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하는지 여부를 판단하는 단계; 및
    상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트와 일치하는 타입을 갖는 데이터 버스트가 존재하지 않는 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력하는 단계
    를 포함하고,
    상기 침입 경고 메시지를 출력하는 단계는
    복수의 선정된 중요 데이터의 종류에 대한 정보들이 기록되어 있는 테이블을 저장하여 유지하는 단계;
    상기 제1 데이터 버스트가 비정상 데이터 버스트로 판단되면, 상기 테이블을 참조하여 상기 제1 데이터 버스트 내에 중요 데이터가 포함되어 있는지 여부를 확인하는 단계;
    상기 제1 데이터 버스트 내에 상기 중요 데이터가 포함되어 있지 않은 경우, 상기 데이터 전송 장치에 대해 상기 제1 데이터 버스트에 대한 정상 데이터 확인 요청 메시지를 전송하는 단계; 및
    상기 데이터 전송 장치로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 정상 확인 메시지가 수신되면, 상기 침입 경고 메시지의 출력을 취소하고 상기 제1 데이터 버스트에 대한 정상 수신 확인 메시지를 출력하는 단계
    를 포함하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법.
  7. 제6항에 있어서,
    상기 화이트 리스트 데이터베이스에는
    데이터 버스트 간의 선정된 수신 시간 간격에 대한 정보가 추가로 저장되어 있고,
    상기 판단하는 단계는
    상기 제1 데이터 버스트에 대한 구성이 완료되면, 상기 데이터 수신부에 상기 제1 데이터 버스트가 수신되기 직전에 상기 데이터 수신부에 수신되었던 제2 데이터 버스트와, 상기 제1 데이터 버스트 간의 수신 시간 간격을 확인하는 단계; 및
    상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하는지 여부를 판단하는 단계
    를 포함하고,
    상기 침입 경고 메시지를 출력하는 단계는
    상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트의 타입 정보와 일치하는 타입 정보를 갖는 데이터 버스트가 존재하지 않거나, 상기 제2 데이터 버스트와 상기 제1 데이터 버스트 간의 수신 시간 간격이 상기 화이트 리스트 데이터베이스에 저장되어 있는 상기 선정된 수신 시간 간격을 초과하지 않는 것으로 판단된 경우, 상기 제1 데이터 버스트를 비정상 데이터 버스트로 판단하여 상기 제1 데이터 버스트에 대한 침입 경고 메시지를 출력하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법.
  8. 제6항에 있어서,
    상기 선정된 시간이내의 간격으로 수신되는 상기 적어도 하나의 제1 데이터 패킷이 상기 데이터 패킷 버퍼 상에 하나씩 저장될 때마다, 상기 데이터 패킷 버퍼 상에 저장이 완료된 데이터 패킷들을 서브 데이터 버스트로 구성하는 단계;
    상기 서브 데이터 버스트가 구성될 때마다, 상기 화이트 리스트 데이터베이스 상에 저장되어 있는 상기 복수의 데이터 버스트들 중 상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 존재하는지 여부를 판단하는 단계; 및
    상기 서브 데이터 버스트의 타입을 모두 포함하는 적어도 하나 이상의 데이터 버스트가 상기 화이트 리스트 데이터베이스 상에 존재하지 않는 것으로 판단된 제1 서브 데이터 버스트가 존재하는 경우, 상기 제1 서브 데이터 버스트가 구성되는 시점에서의 상기 데이터 패킷 버퍼에 저장된 제2 데이터 패킷을 비정상 데이터 패킷으로 판단하여 상기 제2 데이터 패킷에 대한 침입 경고 메시지를 출력하는 단계
    를 더 포함하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법.
  9. 삭제
  10. 제6항에 있어서,
    상기 데이터 전송 장치로부터 상기 제1 데이터 버스트가 정상 데이터임을 확인하는 상기 정상 확인 메시지가 수신되면, 상기 화이트 리스트 데이터베이스 상에 상기 제1 데이터 버스트를 화이트 리스트로 추가하여 상기 화이트 리스트 데이터베이스를 갱신하는 단계
    를 더 포함하는 분산 네트워크 프로토콜 기반의 데이터 수신 장치의 침입 탐지 방법.
  11. 제6항, 제7항, 제8항 또는 제10항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  12. 제6항, 제7항, 제8항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
KR1020150080903A 2015-06-08 2015-06-08 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법 KR101585876B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150080903A KR101585876B1 (ko) 2015-06-08 2015-06-08 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150080903A KR101585876B1 (ko) 2015-06-08 2015-06-08 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법

Publications (1)

Publication Number Publication Date
KR101585876B1 true KR101585876B1 (ko) 2016-01-15

Family

ID=55173539

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150080903A KR101585876B1 (ko) 2015-06-08 2015-06-08 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법

Country Status (1)

Country Link
KR (1) KR101585876B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130034773A (ko) * 2011-09-29 2013-04-08 한국전력공사 화이트리스트를 이용한 네트워크 감시 장치 및 방법
KR101455167B1 (ko) * 2013-09-03 2014-10-27 한국전자통신연구원 화이트리스트 기반의 네트워크 스위치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130034773A (ko) * 2011-09-29 2013-04-08 한국전력공사 화이트리스트를 이용한 네트워크 감시 장치 및 방법
KR101455167B1 (ko) * 2013-09-03 2014-10-27 한국전자통신연구원 화이트리스트 기반의 네트워크 스위치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
임용훈 외 2명, "IEC 61850 변전소 네트워크에서의 이상 징후 탐지 연구," Journal of The Korea Institute of Information Security & Cryptology(JKIISC), VOL.23, NO.5, P. 939, (2013.10)*
임용훈 외 2명, "IEC 61850 변전소 네트워크에서의 이상 징후 탐지 연구," Journal of The Korea Institute of Information Security & Cryptology(JKIISC), VOL.23, NO.5, P. 939, (2013.10)* *

Similar Documents

Publication Publication Date Title
US10826684B1 (en) System and method of validating Internet of Things (IOT) devices
EP3668756B1 (en) Systems and methods for disabling a malicious ecu in a controller area network (can) bus
CN108353015B (zh) 中继装置
US10298578B2 (en) Communication relay device, communication network, and communication relay method
JP6481579B2 (ja) 車載通信システム及び監視装置
US9894084B2 (en) Illegal message destroyer
US20190123908A1 (en) Arithmetic Device, Authentication System, and Authentication Method
US10404717B2 (en) Method and device for the protection of data integrity through an embedded system having a main processor core and a security hardware module
US20200183373A1 (en) Method for detecting anomalies in controller area network of vehicle and apparatus for the same
US11924003B2 (en) Controller Area Network (CAN) bus security invention
US10721241B2 (en) Method for protecting a vehicle network against manipulated data transmission
CN102882676A (zh) 物联网设备端安全接入方法及系统
CN104717105A (zh) 一种基于ISA100.11a标准的工业传感网数据重复检测方法
CN103259797A (zh) 数据文件传输方法及平台
US20140107863A1 (en) Vehicle Control Device, Vehicle Control System
US20150113363A1 (en) Communication device and communication method
CN105577705A (zh) 针对iec60870-5-104协议的安全防护方法及系统
KR101585876B1 (ko) 분산 네트워크 프로토콜 기반의 데이터 수신 장치 및 그 침입 탐지 방법
JP6992309B2 (ja) 送信装置、受信装置、及び通信方法
KR101606090B1 (ko) 네트워크 보호 장치 및 방법
KR101389646B1 (ko) 통신 장치 및 통신 방법
CN102572880A (zh) 序号检测方法、装置及系统
CN109743178B (zh) 一种防止区块链的块链被劫持的方法及系统
US10862687B2 (en) Communication system for suppressing a processing load of an ECU when dealing with fraudulent messages
KR20240104727A (ko) Can 네트워크 내 버스오프 공격 탐지 시스템, 버스오프 공격 탐지 방법 및 이를 실행시키도록 기록매체에 저장된 컴퓨터 프로그램

Legal Events

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

Payment date: 20191111

Year of fee payment: 5