KR102069954B1 - 제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법 - Google Patents

제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법 Download PDF

Info

Publication number
KR102069954B1
KR102069954B1 KR1020170182674A KR20170182674A KR102069954B1 KR 102069954 B1 KR102069954 B1 KR 102069954B1 KR 1020170182674 A KR1020170182674 A KR 1020170182674A KR 20170182674 A KR20170182674 A KR 20170182674A KR 102069954 B1 KR102069954 B1 KR 102069954B1
Authority
KR
South Korea
Prior art keywords
control data
sequence pattern
normal
value
matrix
Prior art date
Application number
KR1020170182674A
Other languages
English (en)
Other versions
KR20190080301A (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 주식회사 포스코아이씨티
Priority to KR1020170182674A priority Critical patent/KR102069954B1/ko
Publication of KR20190080301A publication Critical patent/KR20190080301A/ko
Application granted granted Critical
Publication of KR102069954B1 publication Critical patent/KR102069954B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/048Monitoring; Safety
    • 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/56Computer malware detection or handling, e.g. anti-virus arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

정상 제어데이터 보안규칙을 기초로 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하고, 정상 시퀀스 패턴을 기초로 제어데이터들의 발생순서가 정상인지 여부를 탐지할 수 있는 본 발명의 일 측면에 따른 제어데이터의 정상 시퀀스 패턴 생성 시스템은, 제어단말에서 공장제어장치로 전달된 제1 제어데이터들의 커맨드(Command) 및 밸류(Value)에 대한 정상 제어데이터 보안규칙을 생성하는 규칙 생성부; 상기 정상 제어데이터 보안규칙을 기초로 상기 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하는 시퀀스 패턴 생성부; 및 상기 공장제어장치로 전달되는 타겟 제어데이터들의 발생순서를 상기 정상 시퀀스 패턴과 비교하여 상기 타겟 제어데이터들의 발생순서의 비정상 여부를 판단하는 판단부를 포함하는 것을 특징으로 한다.

Description

제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법{System and Method for Generating Normal Sequence Pattern of Control Data}
본 발명은 제어데이터의 처리에 대한 것으로서, 제어데이터의 발생순서를 분석할 수 있는 시스템에 관한 것이다.
PLC(Programmable Logic Controller)와 같은 공장제어장치들의 온라인화가 증가됨에 따라 공장제어장치들을 타겟으로 하는 사이버 공격 또한 증가하고 있다.
공장제어장치들을 타겟으로 하는 사이버 공격은 공장제어장치들로 전달되는 제어데이터의 커맨드(Command) 또는 밸류(Value)를 불법적으로 변경함으로써 공장제어장치들을 오동작 시키거나 동작불능 상태로 만들 수 있고, 심한 경우 공장제어장치들을 손상시킬 수도 있다.
이러한 사이버 공격으로부터 공장제어장치들을 보호하기 위한 침입 탐지 시스템 등과 같은 보안 시스템이 제안된 바 있다. 일반적인 침입 탐지 시스템은 공장제어장치로 입력되는 제어데이터가 미리 정해진 보안 규칙에 위배되는지 여부를 판단함으로써 해당 제어데이터가 정상 제어데이터인지 또는 비정상 제어데이터인지를 구분하도록 설계된다.
하지만, 상술한 바와 같은 일반적인 침입탐지 시스템은 보안 규칙이 시스템 구축시 미리 정해져 있기 때문에 비정상 제어데이터의 변경에 대해 능동적으로 대응하기가 쉽지 않고, 따라서 새롭게 발생된 공격유형의 비정상 제어데이터를 정확하게 탐지해 낼 수 없다는 문제점이 있다.
또한, 상술한 바와 같은 일반적인 침입탐지 시스템은 보안 규칙이 시스템 구축시 미리 정해져 있기 때문에 적용대상이 되는 공장제어장치가 변경될 때마다 시스템 관리자가 보안 규칙을 새롭게 생성하여야 하기 때문에 시스템 구축 및 유지비용이 증가한다는 문제점이 있다.
선행문헌 1: 대한민국 공개특허 제10-2009-0102469호(발명의 명칭: DNP 기반 SCADA 네트워크 데이터 보호 시스템 및 그 방법, 공개일: 2009년 9월 30일)
본 발명은 상술한 문제점을 해결하기 위한 것으로서, 공장제어장치로 입력되는 제어데이터의 학습을 통해 비정상 제어데이터의 탐지를 위한 정상 제어데이터 보안규칙을 자동으로 생성할 수 있는 비정상 제어데이터 탐지 시스템 및 방법을 제공하는 것을 그 기술적 특징으로 한다.
또한, 본 발명은 정상 제어데이터 보안규칙을 기초로 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하고, 정상 시퀀스 패턴을 기초로 제어데이터들의 발생순서가 정상인지 여부를 탐지할 수 있는 비정상 제어데이터 탐지 시스템 및 방법을 제공하는 것을 그 기술적 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 제어데이터의 정상 시퀀스 패턴 생성 시스템은, 제어단말에서 공장제어장치로 전달된 제1 제어데이터들의 커맨드(Command) 및 밸류(Value)에 대한 정상 제어데이터 보안규칙을 생성하는 규칙 생성부; 상기 정상 제어데이터 보안규칙을 기초로 상기 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하는 시퀀스 패턴 생성부; 및 상기 공장제어장치로 전달되는 타겟 제어데이터들의 발생순서를 상기 정상 시퀀스 패턴과 비교하여 상기 타겟 제어데이터들의 발생순서의 비정상 여부를 판단하는 판단부를 더 포함하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 제어데이터의 정상 시퀀스 패턴 생성 방법은, 제어단말에서 공장제어장치로 전달된 제1 제어데이터들의 커맨드 및 밸류에 대한 정상 제어데이터 보안규칙을 생성하는 단계; 상기 제1 제어데이터들의 식별번호를 기초로 정렬된 k*n 매트릭스에서 k값을 변경시키면서 k값 별로 상기 매트릭스의 기준열에 배치된 식별정보와 타열에 배치된 식별정보를 비교하여 제1 유사도를 산출하는 단계; 상기 제1 유사도를 기초로 상기 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하는 단계; 및 상기 공장제어장치로 전달되는 타겟 제어데이터들의 발생순서와 상기 정상 시퀀스 패턴을 비교하여 상기 타겟 제어데이터들의 발생순서의 비정상 여부를 판단하는 단계를 포함하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 비정상 제어데이터 탐지 시스템은, 제어단말에서 공장제어장치로 전달된 제1 제어데이터들의 커맨드(Command) 및 밸류(Value)에 대한 정상 제어데이터 보안규칙을 기초로 상기 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하고, 상기 공장제어장치로 전달되는 타겟 제어데이터들의 발생순서를 상기 정상 시퀀스 패턴과 비교하여 상기 타겟 제어데이터들의 발생순서의 비정상 여부를 판단하는 정상 시퀀스 패턴 생성 장치를 포함하는 것을 특징으로 한다.
본 발명에 따르면 공장제어장치의 초기 가동기간 동안 입력된 제어데이터의 학습을 통해 정상 제어데이터 보안규칙을 자동으로 생성하기 때문에, 다양한 종류의 비정상 데이터는 물론 비정상 제어데이터의 변경에 대해서도 능동적으로 대응할 수 있어 비정상 데이터의 탐지 정확도를 향상시킬 수 있고, 이로 인해 시스템의 신뢰도를 향상시킬 수 있다는 효과가 있다.
또한, 본 발명에 따르면 정상 제어데이터 보안규칙을 기초로 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 자동으로 생성하고, 생성된 정상 시퀀스 패턴을 기초로 제어데이터의 발생순서가 정상적인지 여부를 확인할 수 있기 때문에 조업패턴을 외부로 알리지 않고도 발생순서가 비정상적인 제이데이터들을 정확하게 탐지해 낼 수 있다는 효과가 있다.
또한, 본 발명에 따르면 정상 시퀀스 패턴을 기초로 사이버 공격자에 의한 비정상적 발생순서의 제어데이터만 아니라 조업자의 실수에 의한 비정상적 발생순서의 제어데이터도 탐지할 수 있어 사이버 공격자로부터 공장제어장치를 안전하게 보호함과 동시에 조업효율도 향상시킬 수 있다는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 제어데이터의 정상 시퀀스 패턴 생성 시스템이 적용되는 네트워크 구성을 개략적으로 보여주는 도면이다.
도 2는 도 1에 도시된 게이트웨이의 구성을 개략적으로 보여주는 블록도이다.
도 3은 도 1에 도시된 탐지서버의 구성을 개략적으로 보여주는 블록도이다.
도 4는 도 3에 도시된 시퀀스 패턴 생성부의 구성을 개략적으로 보여주는 블록도이다.
도 5a는 기준 시퀀스의 일 예를 보여주는 도면이다.
도 5b는 k*n 매트릭스의 일 예를 보여주는 도면이다.
도 6은 제2 유사도를 산출하는 방법을 개념적으로 보여주는 도면이다.
도 7은 본 발명의 일 실시예에 따른 제어데이터의 정상 시퀀스 패턴 생성 방법을 보여주는 플로우차트이다.
이하, 첨부되는 도면을 참고하여 본 발명의 실시예들에 대해 상세히 설명한다.
본 명세서에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 정의하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다.
"포함하다" 또는 "가지다" 등의 용어는 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
"적어도 하나"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및 제 3항목 중에서 적어도 하나"의 의미는 제1 항목, 제2 항목 또는 제3 항목 각각 뿐만 아니라 제1 항목, 제2 항목 및 제3 항목 중에서 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.
도 1은 본 발명의 일 실시예에 따른 제어데이터의 정상 시퀀스 패턴 생성 시스템이 적용되는 네트워크 구성을 개략적으로 보여주는 도면이다.
도 1에 도시된 제어단말(100)은 공장제어장치(110)를 제어하고 공장제어장치(110)에 의해 생성되는 조업 데이터를 수집하는 역할을 수행한다. 일 실시예에 있어서 제어단말(100)은 SCADA(Supervisory Control And Data Acquisition) 또는 HMI(Human Machine Interface)를 포함할 수 있다.
공장제어장치(110)는 제어단말(100)에서 전달되는 제어데이터를 기초로 조업현장에 배치되어 있는 설비를 제어하고, 설비제어결과 또는 각 설비로부터 획득되는 조업 데이터를 제어단말(100)로 전송하는 역할을 수행한다. 일 실시예에 있어서 공장제어장치(110)는 PLC(Programmable Logic Controller)를 포함할 수 있다.
제어데이터의 정상 시퀀스 패턴 생성 시스템(120)은 제어단말(110)과 공장제어장치(110)를 연결한다. 제어데이터의 정상 시퀀스 패턴 생성 시스템(120)은 제어단말(110)에서 생성된 제어데이터를 공장제어장치(120)로 전달하고, 공장제어장치(110)에 의해 생성된 조업 데이터를 제어단말(100)로 전달한다.
특히, 본 발명에 따른 제어데이터의 정상 시퀀스 패턴 생성 시스템(120)은 제어단말(110)에서 공장제어장치(120)로 전달되는 제어데이터들의 발생순서가 정상적인지 여부를 판단하기 위해 제어데이터의 정상 시퀀스 패턴을 생성하고, 생성된 정상 시퀀스 패턴을 기초로 제어데이터들의 발생순서가 정상인지 여부를 판단한다.
이를 위해, 본 발명에 따른 제어데이터의 정상 시퀀스 패턴 생성 시스템(120)은 도 1에 도시된 바와 같이, 보안 게이트웨이(130) 및 탐지서버(140)를 포함한다.
보안 게이트웨이(130)는 제어단말(110)과 공장제어장치(110)를 인터페이싱함으로써 제어단말(110)에서 생성된 제어데이터를 공장제어장치(120)로 전달하고, 공장제어장치(110)에 의해 생성된 조업 데이터를 제어단말(100)로 전달한다. 본 발명에 따름 보안 게이트웨이(130)의 기능을 도 2를 참조하여 보다 구체적으로 설명한다.
도 2는 본 발명의 일 실시예에 따른 보안 게이트웨이(130)의 구성을 개략적으로 보여주는 블록도이다. 도 2에 도시된 바와 같이 본 발명의 일 실시예에 따른 보안 게이트웨이(130)는 데이터 차단부(210), 데이터 미러링부(220), 및 바이패스부(230)를 포함한다.
데이터 차단부(210)는 제어단말(110)로부터 제어데이터가 수신되면 수신된 제어데이터의 IP 어드레스(Internet Protocol Address)가 미리 등록된 IP 어드레스에 해당하는지 여부를 판단한다. 판단결과, 수신된 제어데이터의 IP 어드레스가 미리 등록된 IP 어드레스에 해당하지 않는 경우 데이터 차단부(210)는 해당 제어데이터는 비정상적인 경로를 통해 수신된 비정상 제어데이터인 것으로 판단하여 해당 제어데이터가 공장제어장치(110)로 전달되는 것을 차단한다.
일 실시예에 있어서, 데이터 차단부(210)는 탐지서버(140)에 의해 생성되는 정상경로 리스트를 기초로 제어단말(110)에서 수신되는 제어데이터의 IP 어드레스가 미리 등록된 IP 어드레스에 해당하는지 여부를 판단할 수 있다. 이때, 정상경로 리스트에는 정상 IP어드레스들이 등록되어 있을 수 있다.
데이터 차단부(210)는 제어데이터의 차단이 수행되면 차단결과를 사용자에게 통지할 수 있다.
데이터 미러링부(220)는 제어단말(110)로부터 공장제어장치(120)로 전달되는 제어데이터를 공장제어장치(120)로 전달한다. 이때, 데이터 미러링부(220)는 제어데이터를 네트워크 지연없이 복제하여 복제된 제어데이터를 탐지서버(140)로도 전달한다. 이러한 데이터 미러링부(220)의 복제기능을 통해 탐지서버(140)가 제어데이터를 획득함으로써 제어데이터들의 발생순서가 정상적인지 여부를 판단할 수 있게 된다.
바이패스부(230)는 보안 게이트웨이(130)의 오류발생여부에 따라 제어데이터의 전달경로를 조정한다. 구체적으로, 바이패스부(230)는 보안 게이트웨이(130)에 오류가 발생되지 않은 경우 제어데이터가 데이터 미러링부(220)를 통해 공장제어장치(120)로 전달되도록 한다.
하지만 게이트웨이(130)에 오류가 발생된 경우 바이패스부(230)는 데이터 미러링부(220)를 바이패스하여 제어데이터를 공장제어장치(120)로 직접 전달한다. 이러한 경우 제어데이터의 복제기능을 수행되지 않게 된다.
다시 도 1을 참조하면, 탐지서버(140)는 제어데이터들 중 미리 정해진 기간 동안 수집된 제1 제어데이터를 기초로 정상 제어데이터 보안규칙 및 제어데이터의 정상 시퀀스 패턴을 생성하고, 판단대상이 되는 타겟 제어데이터들의 발생순서를 정상 시퀀스 패턴과 비교함으로써 타겟 제어데이터들의 발생순서가 정상인지 여부를 판단한다.
이하, 본 발명에 따른 탐지서버(140)의 구성을 도 3을 참조하여 보다 구체적으로 설명한다.
도 3은 본 발명의 일 실시예에 따른 탐지서버의 구성을 보여주는 블록도이다. 도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 탐지서버(140)는 데이터 수집부(310), 파싱부(320), 규칙 생성부(330), 데이터베이스(340), 시퀀스 패턴 생성부(350), 및 제1판단부(360)를 포함한다.
데이터 수집부(310)는 정상 제어데이터 보안규칙의 생성을 위해 데이터 미러링부(220)를 통해 수신된 제어데이터들 중 미리 정해진 기간 동안 수신된 제1 제어데이터들을 수집한다.
일 실시예에 있어서, 데이터 수집부(310)는 제어데이터들 중 제어단말(100) 및 공장제어장치(110)의 초기 가동기간 중에 데이터 미러링부(220)를 통해 수신된 제1 제어데이터들을 수집할 수 있다.
본 발명에 따른 데이터 수집부(310)가 제어단말(100) 및 공장제어장치(110)의 초기 가동기간 중에 수신된 제1 제어데이터들을 수집하는 이유는 초기 가동기간 중에는 외부 침입자에 의한 사이버 공격이 이루어지지 않기 때문에 해당 기간동안 수집된 제1 제어데이터들은 정상 제어데이터들인 것으로 간주할 수 있기 때문이다.
파싱부(320)는 데이터 수집부(310)에 의해 수집된 제1 제어데이터들을 파싱함으로써 제1 제어데이터들로부터 커맨드(Command) 및 해당 커맨드의 밸류(Value)를 획득한다. 예컨대, 파싱부(320)는 온도관련 제1 제어데이터로부터 온도증가(Add)를 커맨드로 획득하고, 증가될 온도값을 밸류로 획득할 수 있다.
한편, 파싱부(320)는 데이터 수집부(310)에 의해 수집된 제1 제어데이터들을 파싱함으로써 제1 제어데이터들의 헤더로부터 해당 제1 제어데이터를 발신한 IP 어드레스를 추가로 획득할 수 있다.
상술한 실시예에 있어서는 파싱부(320)는 데이터 수집부(310)에 의해 수집된 제1 제어데이터들을 파싱하는 것으로 설명하였다. 변형된 실시예에 있어서 데이터 수집부(310)가 생략될 수도 있다. 이러한 경우, 파싱부(320)가 데이터 미러링부(220)에 의해 복제되어 데이터베이스(350)에 저장된 제어데이터들 제1 데이터들을 직접 추출하여 파싱할 수도 있을 것이다.
규칙 생성부(330)는 파싱부(320)에 의해 획득된 커맨드 및 해당 커맨드의 밸류를 머신러닝(Machine Learning) 기법으로 학습하여 정상 제어데이터 보안규칙을 생성한다.
일 실시예에 있어서, 규칙 생성부(330)는 하나의 커맨드 및 해당 커맨드의 밸류가 매핑되어 있는 하나의 데이터 세트를 하나의 정상 제어데이터 보안규칙으로 설정할 수 있다.
다른 실시예에 있어서, 규칙 생성부(330)는 동일한 종류의 커맨드에 대해 복수개의 밸류들이 존재하는 경우 해당 커맨드에 대한 복수개의 밸류들을 기초로 해당 커맨드에 대한 대표밸류를 산출하고, 산출된 대표밸류와 해당 커맨드가 매핑된 하나의 데이터 세트를 하나의 정상 제어데이터 보안규칙으로 설정할 수 있다. 이때, 대표밸류는 복수개의 밸류들의 평균값, 중간값, 최대값, 또는 최소값 등으로 결정될 수 있다.
또 다른 실시예에 있어서, 규칙 생성부(330)는 동일한 종류의 커맨드에 대해 복수개의 밸류들이 존재하는 경우 해당 커맨드에 대한 복수개의 밸류들 간의 함수식을 도출하고, 도출된 함수식이 해당 커맨드와 매핑되어 있는 하나의 데이터 세트를 하나의 정상 제어데이터 보안규칙으로 설정할 수도 있다.
규칙 생성부(330)는 생성된 정상 제어 데이터 보안규칙을 리스트화하여 데이터베이스(350)에 저장할 수 있다.
한편, 상술한 규칙 생성부(330)는 데이터 수집부(310)에 의해 신규 제어데이터가 추가로 수집되고 파싱부(320)에 의해 신규 데이터의 커맨드 및 밸류가 획득될 때마다 획득된 신규 제어데이터의 커맨드 및 밸류를 추가로 학습함으로써 정상 제어데이터 보안규칙을 추가로 생성하거나, 기 생성된 정상 제어데이터 보안규칙을 수정할 수도 있다.
데이터베이스(340)에는 규칙 생성부(330)에 의해 생성된 정상 제어데이터 규칙이 저장된다. 일 실시예에 있어서, 정상 제어데이터 규칙은 리스트 형태로 데이터베이스(340)에 저장될 수 있다.
또한, 데이터베이스(340)에는 제1 제어데이터 별로 제1 제어데이터로부터 획득된 커맨드, 해당 커맨드의 밸류, 해당 제1 제어데이터의 IP 어드레스, 및 해당 제1 제어데이터의 발생시점이 매핑되어 저장될 수도 있다.
시퀀스 패턴 생성부(350)는 데이터베이스(340)에 저장되어 있는 정상 제어데이터 보안규칙을 기초로 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성한다. 이때, 정상 시퀀스 패턴이란 제1 제어데이터들의 정상적인 발생순서를 나타내는 패턴을 의미한다.
이하 본 발명에 따른 시퀀스 패턴 생성부(350)의 구성을 도 4를 참조하여 보다 구체적으로 설명한다.
도 4는 본 발명의 일 실시예에 따른 시퀀스 패턴 생성부의 구성을 개략적으로 보여주는 블록도이다. 도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 시퀀스 패턴 생성부(350)는 인덱싱부(410), 식별정보 할당부(420), 데이터 정렬부(430), 유사도 산출부(440), 및 시퀀스 패턴 결정부(450)를 포함한다.
인덱싱부(410)는 데이터베이스(340)에 저장된 정상 제어데이터 보안규칙을 인덱싱하여 각 정상 제어데이터 보안규칙 별로 인덱스 정보를 할당한다.
식별정보 할당부(420)는 제1 제어데이터들 각각에 식별정보를 할당한다. 일 실시예에 있어서, 식별정보 할당부(420)는 정상 제어데이터 보안규칙에 할당된 인덱스 정보를 이용하여 제1 제어데이터들의 식별정보를 할당할 수 있다. 구체적으로 식별정보 할당부(420)는 각각의 제1 제어데이터가 매핑되는 정상 제어데이터 보안규칙의 인덱스 정보를 해당 제1 제어데이터의 식별정보로 할당할 수 있다. 이때, 각각의 제1 제어데이터는 해당 제1 제어데이터를 이용하여 생성된 정상 제어데이터 보안규칙과 매핑될 수 있다.
데이터 정렬부(430)는 제1 제어데이터들의 발생순서에 따라 제1 제어데이터들의 식별정보를 k*n 매트릭스로 정렬한다. 일 실시예에 있어서, 데이터 정렬부(430)는 제1 제어데이터들의 식별정보들을 k*n 매트릭스로 정렬함에 있어서, 동일 열 내에서는 발생순서가 빠른 제1 제어데이터의 식별정보를 상측에 배치하고 발생순서가 느린 제1 제어데이터의 식별정보를 하측에 배치한다. 또한, 데이터 정렬부(430)는 동일 행 내에서는 발생순서가 빠른 제1 제어데이터의 식별정보를 좌측에 배치하고 발생순서가 느린 제1 제어데이터의 식별정보를 우측에 배치한다.
데이터 정렬부(430)에 의해 제1 제어데이터들의 식별정보를 k*n 매트릭스로 정렬한 예가 도 5에 도시되어 있다. 도 5b에서는 도 5a 에 도시된 제1 제어데이터들의 식별정보들을 6*4 매트릭스로 정렬한 예를 도시한 것이다. 도 5a 및 도 5b에서 L1~L6은 제1 제어데이터들에 할당된 식별정보를 나타낸다.
이하, 데이터 정렬부(430)가 K*n 매트릭스를 생성하는 과정을 보다 구체적으로 설명한다. 먼저, 데이터 정렬부(430)는 제1 제어데이터들의 식별정보를 제1 제어데이터들의 발생순서에 따라 순차적으로 나열한 기준 시퀀스를 생성한다. 기준 시퀀스의 일 예가 도 5a에 도시되어 있다.
이후, 데이터 정렬부(430)는 기준 시퀀스 상에서 제일 좌측에 배치된 식별정보를 기준으로 k개의 식별정보를 추출하여 매트릭스의 제1 열을 구성한다. 예컨대, 도 5의 예를 기준으로 k 값이 6인 경우 도 5a에 도시된 기준 시퀀스에서 제일 좌측에 배치된 식별정보(L1)를 기준으로 6개의 식별정보들을 추출하여 매트릭스의 제1 열을 구성하게 된다.
이후, 데이터 정렬부(430)는 기준 시퀀스 상에 남아 있는 식별정보들 중 제일 좌측에 배치된 식별정보를 기준으로 k개의 식별정보를 추출하여 매트릭스의 제2 열을 구성한다. 예컨대, 도 5의 예를 기준으로. 도 5a에 도시된 기준 시퀀스 상에 남아 있는 식별정보들 중 제일 좌측에 배치된 식별정보(L1)을 기준으로 다시 6개의 식별정보들을 추출하여 매트릭스의 제2 열을 구성하게 된다.
위의 과정을 n번 반복함으로써 데이터 정렬부(430)는 k*n 매트릭스를 생성하게 된다. 예컨대, 도 5의 예를 기준으로. 위의 과정을 추가로 2번 더 수행하게 되면 도 5b에 도시된 6*4 매트릭스가 생성된다.
유사도 산출부(440)는 k값을 증가시키면서 k값 별로 매트릭스의 기준열에 배치된 식별정보와 타열에 배치된 식별정보를 비교하여 제1 유사도를 산출한다. 일 실시예에 있어서, 각 매트릭스에서 기준열은 첫 번째 열로 결정될 수 있다.
구체적으로, 유사도 산출부(440)는 아래의 수학식 1을 이용하여 제1 유사도를 산출할 수 있다.
Figure 112017130562021-pat00001
상기 수학식에서 f(k,n)은 k*n 매트릭스에서 산출된 제1 유사도를 나타내고, k는 매트릭스의 행의 개수를 나타내며, n은 매트릭스의 열의 개수를 나타내고, i는 매트릭스의 행의 번호를 나타내며, j는 매트릭의 열의 번호를 나타내고, Xi1은 매트릭스에서 i번째 행의 1번째 열에 배치된 식별번호를 나타내며, Xij는 매트릭스에서 i번째 행의 j번째 열에 배치된 식별번호를 나타낸다.
이때,
Figure 112017130562021-pat00002
는 Xi1과 Xij가 동일하면 제1 값으로 설정되고, Xi1과 Xij가 상이하면 제2 값으로 설정된다. 일 실시예에 있어서, 제1 값은 1로 설정되고 제2 값은 0으로 설정될 수 있다.
시퀀스 패턴 결정부(450)는 k값들 중 제1 유사도의 편미분 값이 최소가 되게 하는 타겟k값을 결정한다. 시퀀스 패턴 결정부(450)는 타겟 k값이 결정되면 결정된 타겟 k값에 해당하는 매트릭스에서 어느 하나의 열에 배치된 식별정보들을 기초로 정상 시퀀스 패턴을 생성한다.
이때, 매트릭스의 동일 열 내에서는 발생순서가 빠른 제1 제어데이터의 식별정보가 상측에 배치되고 발생순서가 느린 제1 제어데이터의 식별정보가 하측에 배치되므로, 정상 시퀀스 패턴은 타겟 k값에 해당하는 매트릭스의 열에 배치된 식별정보들을 상측에 하측 순서로 배치함으로써 결정된다. 예컨대, 도 5b의 예에서는 L1-L6-L4-L2-L5-L3가 정상 시퀀스 패턴으로 결정된다.
한편, 타겟k값이 복수개인 경우, 시퀀스 패턴 결정부(450)는 각 타겟 k값 별로 결정된 시퀀스 패턴(이하, '후보 시퀀스 패턴'이라 함)을 기준 시퀀스와 비교하여 제2 유사도를 산출하고, 복수개의 후보 시퀀스 패턴들 중 제2 유사도가 가장 큰 후보 시퀀스 패턴을 시퀀스 패턴으로 결정할 수 있다.
일 실시예에 있어서, 시퀀스 패턴 결정부(450)는 제2 유사도를 산출하기 위해 각 후보 시퀀스 패턴을 기준 시퀀스 상에서 쉬프트 시키면서 동일 위치에 배치되는 식별정보들을 비교함으로써 제2 유사도를 산출할 수 있다.
예컨대, 시퀀스 패턴 결정부(450)는 도 6a에 도시된 바와 같이 기준 시퀀스(RS) 상에 후보 시퀀스 패턴(CP)을 위치시킨 후 동일한 위치에 배치된 식별번호들의 동일여부를 판단한다. 이때, 시퀀스 패턴 결정부(450)는 동일성 판단결과, 동일한 위치에 배치된 2개의 식별정보가 동일하면 제1 값을 부여하고 동일하지 않으면 제2 값을 부여하여 제1 값 및 제2 값들을 모두 합산함으로써 결과값을 산출할 수 있다. 일 예로 제1 값은 1로 설정되고 제2 값은 0으로 설정될 수 있다.
이후, 도 6b 및 도 6c에 도시된 바와 같이 시퀀스 패턴 결정부(450)는 기준 시퀀스(RS) 상의 마지막 식별정보(L5)와 후보 시퀀스 패턴(CP)의 마지막 식별정보(L2)가 동일 위치에 배치될 때까지 기준 시퀀스(RS) 상에서 후보 시퀀스 패턴(CP)을 하나의 식별정보 단위로 쉬프트시키면서 제1 값 및 제2 값들을 모두 합산한 결과값을 산출한다. 시퀀스 패턴 결정부(450)는 산출된 결과값들의 평균값을 제2 유사도로 산출할 수 있다.
다시 도 3을 참조하면, 제1 판단부(360)는 공장제어장치로 전달된 타겟 제어데이터들의 발생순서를 정상 시퀀스 패턴과 비교한다. 비교결과, 타겟 제어데이터들의 발생순서가 정상 시퀀스 패턴과 상이하면 제1 판단부(360)는 판단결과를 사용자에게 전달한다. 예컨대, 정상 시퀀스 패턴이 L7-L19-L22-L8로 결정되어 있고 타겟 제어데이터들의 발생순서가 L7-L22-L19-L22-L8인 경우 타겟 제어데이터들의 발생순서가 정상 시퀀스 패턴과 상이하기 때문에 제1 판단부(360)는 타겟 제어데이터들의 발생순서가 비정상적인 것으로 판단하여 사용자에게 판단결과를 통지한다.
한편, 본 발명에 따른 탐지서버(140)는 제2 판단부(370)를 더 포함할 수 있다. 제2 판단부(370)는 판단대상이 되는 타겟 제어데이터와 정상 제어데이터 보안규칙을 비교하여 타겟 제어데이터가 비정상 제어데이터인지 여부를 판단한다.
구체적으로, 제2 판단부(370)는 데이터베이스(340)에 저장되어 있는 정상 제어데이터 규칙들 중 타겟 제어데이터의 커맨드 및 밸류를 기초로 해당 타겟 제어데이터가 매핑될 수 있는 정상 제어데이터 규칙이 존재하는지 여부를 판단한다. 이때, 타겟 제어데이터는 데이터 미러링부(220)를 통해 파싱부(320)로 전달되고, 파싱부(320)에 의해 타겟 제어데이터의 커맨드 및 밸류가 획득될 수 있다.
판단결과, 타겟 제어데이터가 매핑될 수 있는 정상 제어데이터 규칙이 존재하면 제2 판단부(370)는 해당 타겟 제어데이터를 정상 제어데이터인 것으로 판단한다. 하지만, 타겟 제어데이터가 매핑될 수 있는 정상 제어데이터가 규칙이 존재하지 않으면 제2 판단부(370)는 해당 타겟 제어데이터를 비정상 제어데이터인 것으로 판단한다.
제2 판단부(370)는 타겟 제어데이터가 비정상 제어데이터인 것으로 판단되면 판단결과를 사용자에게 통지한다.
한편, 본 발명에 따른 탐지서버(140)는 정상경로 리스트 생성부(380)를 더 포함할 수 있다. 정상경로 리스트 생성부(380)는 파싱부(320)에 의해 제1 제어데이터들의 헤더로부터 획득된 IP 어드레스들을 이용하여 정상 IP 어드레스들로 구성된 정상경로 리스트를 생성한다. 이때, 정상경로 리스트 생성부(380)는 제어단말(100) 및 공장제어장치(110)의 초기 가동기간 동안 수집된 제1 제어데이터들의 헤더로부터 획득된 IP 어드레스들을 정상 IP 어드레스로 결정할 수 있다.
이하, 도 7을 참조하여 본 발명에 따른 제어데이터의 정상 시퀀스 패턴 생성 방법을 설명한다.
도 7은 본 발명의 일 실시예에 따른 제어데이터의 정상 시퀀스 패턴 생성 방법을 보여주는 플로우차트이다. 도 7에 도시된 제어데이터의 정상 시퀀스 패턴 생성 방법은 도 1에 도시된 제어데이터의 정상 시퀀스 패턴 생성 시스템(이하, '시스템'이라 함)에 의해 수행될 수 있다.
먼저, 시스템은 제어단말에서 공장제어장치로 전달된 제1 제어데이터들로부터 커맨드 및 해당 커맨드의 밸류를 획득한다(S700).
이후, 시스템은 획득된 커맨드 및 밸류를 머신러닝 기법으로 학습하여 정상 제어데이터 보안규칙을 생성한다(S710).
일 실시예에 있어서, 시스템은 각 커맨드가 해당 커맨드의 밸류와 매핑되어 있는 데이터 세트, 동일한 종류의 커맨드에 대한 복수개의 밸류들을 기초로 산출된 대표밸류가 해당 커맨드와 매핑되어 있는 데이터 세트, 또는 동일한 종류의 커맨드에 대한 복수개의 밸류들간의 함수식이 해당 커맨드와 매핑되어 있는 데이터 세트를 정상 제어데이터 보안규칙으로 생성할 수 있다.
이후, 시스템은 정상 제어데이터 보안규칙의 인덱스 정보를 이용하여 할당된 제1 제어데이터들의 식별번호를 제1 제어데이터들의 발생순서에 따라 k*n 매트릭스로 정렬한다(S720). 여기서, 시스템은 정상 제어데이터 보안규칙 중 제1 제어데이터들이 매핑되는 정상 제어데이터 보안규칙의 인덱스 정보를 해당 제1 제어데이터의 식별정보로 할당할 수 있다. 이때, 정상 제어데이터 보안규칙의 생성에 이용된 제1 제어데이터가 해당 정상 제어데이터 보안규칙과 매핑되어 있을 수 있다.
시스템이 K*n 매트릭스를 생성하는 과정을 보다 구체적으로 설명한다. 먼저, 시스템은 제1 제어데이터들의 식별정보를 제1 제어데이터들의 발생순서에 따라 순차적으로 나열한 기준 시퀀스를 생성한다. 이후, 시스템은 기준 시퀀스 상에서 제일 좌측에 배치된 식별정보를 기준으로 k개의 식별정보를 추출하여 매트릭스의 제1 열을 구성한다. 이후, 시스템은 기준 시퀀스 상에 남아 있는 식별정보들 중 제일 좌측에 배치된 식별정보를 기준으로 k개의 식별정보를 추출하여 매트릭스의 제2 열을 구성한다. 위의 과정을 n번 반복함으로써 시스템은 k*n 매트릭스를 생성하게 된다.
이후, 시스템은 k값을 변경시키면서 k값 별로 매트릭스의 기준열에 배치된 식별정보와 타열에 배치된 식별정보를 비교하여 제1 유사도를 산출한다(S730). 이때, 기준열은 각 매트릭스의 첫 번째 열로 결정될 수 있다.
일 실시예에 있어서, 시스템은 상술한 수학식 1을 이용하여 제1 유사도를 산출할 수 있다. 제1 유사도를 산출하는 구체적인 방법은 수학식 1에 관련된 부분에서 이미 설명하였으므로 구체적인 설명은 생략한다.
이후, 시스템은 k값들 중 제1 유사도의 편미분 값이 최소가 되게 하는 타겟k값의 매트릭스에서 어느 하나의 열에 배치된 식별정보들을 기초로 정상 시퀀스 패턴을 생성한다(S740). 이때, 매트릭스의 동일 열 내에서는 발생순서가 빠른 제1 제어데이터의 식별정보가 상측에 배치되고 발생순서가 느린 제1 제어데이터의 식별정보가 하측에 배치되므로, 정상 시퀀스 패턴은 타겟 k값에 해당하는 매트릭스의 열에 배치된 식별정보들을 상측에 하측 순서로 배치함으로써 결정될 수 있.
한편, S740단계에서, 타겟k값이 복수개인 경우, 시스템은 각 타겟 k값 별로 결정된 시퀀스 패턴(이하, '후보 시퀀스 패턴'이라 함)을 기준 시퀀스와 비교하여 제2 유사도를 산출하고, 복수개의 후보 시퀀스 패턴들 중 제2 유사도가 가장 큰 후보 시퀀스 패턴을 시퀀스 패턴으로 결정할 수 있다.
일 실시예에 있어서, 시스템은 제2 유사도를 산출하기 위해 각 후보 시퀀스 패턴을 기준 시퀀스 상에서 쉬프트 시키면서 동일 위치에 배치되는 식별정보들을 비교함으로써 제2 유사도를 산출할 수 있다.
구체적으로, 시스템은 각 후보 시퀀스 패턴을 기준 시퀀스 상에서 쉬프트 시키면서 동일 위치에 배치되는 식별정보가 동일하면 제1 값을 부여하고 동일하지 않으면 제2 값을 부여하며, 부여된 제1 값 및 제2 값들을 모두 합산한 결과값의 평균값을 상기 제2 유사도로 산출할 수 있다.
S740 단계 이후, 시스템은 공장제어장치로 타겟 제어데이터들이 수신되면(S745), 타겟 제어데이터들의 발생순서를 정상 시퀀스 패턴과 비교한다(S750). 비교결과, 타겟 제어데이터들의 발생순서가 정상 시퀀스 패턴과 동일하면 타겟 제어데이터들의 발생순서가 정상인 것으로 판단하고, S745단계로 회귀하여 다른 타겟 제어데이터들에 대해 S745 단계 이후의 과정을 반복한다.
한편, S750의 판단결과 타겟 제어데이터들의 발생순서가 정상 시퀀스 패턴과 상이하면 판단결과를 사용자에게 전달한 후(S760), S745단계로 회귀하여 다른 타겟 제어데이터들에 대해 S745 단계 이후의 과정을 반복한다.
본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
예컨대, 상술한 실시예에 있어서는 시퀀스 패턴 생성부(350)와 제1 판단부(360)가 별개의 구성인 것으로 설명하였지만, 변형된 실시예에 있어서 시퀀스 패턴 생성부(350) 및 제1 판단부(360)는 하나의 구성인 정상 시퀀스 패턴 생성 장치(미도시)로 구현될 수도 있을 것이다.
그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 제어단말 110: 공장제어장치
120: 제어데이터의 정상 시퀀스 패턴 생성 시스템
130: 게이트웨이 140: 탐지서버
210: 데이터 차단부 220: 데이터 미러링부
230: 바이패스부 310: 데이터 수집부
320: 파싱부 330: 규칙 생성부
340: 데이터베이스 350: 시퀀스 패턴 생성부
360: 제1 판단부 370: 제2 판단부
380: 정상경로 리스트 생성부 410: 인덱싱부
420: 식별정보 할당부 430: 데이터 정렬부
440: 유사도 산출부 450: 시퀀스 패턴 결정부

Claims (17)

  1. 제어단말에서 공장제어장치로 전달된 제1 제어데이터들의 커맨드(Command) 및 밸류(Value)에 대한 정상 제어데이터 보안규칙을 생성하는 규칙 생성부;
    상기 정상 제어데이터 보안규칙을 기초로 상기 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하는 시퀀스 패턴 생성부; 및
    상기 공장제어장치로 전달되는 타겟 제어데이터들의 발생순서를 상기 정상 시퀀스 패턴과 비교하여 상기 타겟 제어데이터들의 발생순서의 비정상 여부를 판단하는 판단부를 포함하고,
    상기 시퀀스 패턴 생성부는,
    상기 정상 제어데이터 보안규칙을 인덱싱하여 각 정상 제어데이터 보안규칙 별로 인덱스 정보를 할당하는 인덱싱부를 포함하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  2. 제1항에 있어서,
    상기 시퀀스 패턴 생성부는,
    상기 제1 제어데이터들의 식별정보들이 정렬된 k*n 매트릭스에서 각 열에 배치된 식별정보들 간의 제1 유사도를 기초로 상기 정상 시퀀스 패턴을 생성하는 시퀀스 패턴 결정부를 포함하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  3. 제2항에 있어서,
    상기 시퀀스 패턴 결정부는
    상기 k*n 매트릭스에서 k값 별로 산출된 제1 유사도의 편미분값이 최소가 되게 하는 타겟k값을 결정하고, 상기 타겟 k값에 해당하는 매트릭스에서 어느 하나의 열에 배치된 식별정보들을 기초로 상기 정상 시퀀스 패턴을 생성하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  4. 제2항에 있어서,
    상기 시퀀스 패턴 결정부는,
    상기 k*n 매트릭스에서 k값 별로 산출된 제1 유사도의 편미분값이 최소가 되게 하는 타겟k값을 결정하고, 상기 타겟k값이 복수개이면 상기 제1 제어데이터들의 식별정보들이 상기 제1 제어데이터들의 발생순서에 따라 나열된 기준 시퀀스와 상기 타겟 k값 별로 생성된 복수개의 후보 시퀀스 패턴을 비교하여 제2 유사도를 산출하고, 상기 복수개의 후보 시퀀스 패턴 중 상기 제2 유사도가 가장 큰 후보 시퀀스 패턴을 상기 시퀀스 패턴으로 결정하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  5. 제2항에 있어서,
    상기 시퀀스 패턴 결정부는,
    상기 k*n 매트릭스에서 k값 별로 산출된 제1 유사도의 편미분값이 최소가 되게 하는 타겟k값을 결정하고, 상기 타겟k값이 복수개이면 각 타겟 k값 별로 생성된 각 후보 시퀀스 패턴을 상기 제1 제어데이터들의 발생순서에 따라 나열된 기준 시퀀스 상에서 쉬프트 시키면서 동일 위치에 배치되는 식별정보가 동일하면 제1 값을 부여하고 동일하지 않으면 제2 값을 부여하며, 부여된 제1 값 및 제2 값들을 모두 합산한 결과값이 가장 큰 후보 시퀀스 패턴을 상기 시퀀스 패턴으로 결정하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  6. 제1항에 있어서,
    상기 시퀀스 패턴 생성부는,
    상기 제1 제어데이터들의 식별정보들이 정렬된 k*n 매트릭스에서 k값을 변경시키면서 k값 별로 상기 매트릭스의 기준열에 배치된 식별정보와 타열에 배치된 식별정보를 비교하여 제1 유사도를 산출하는 유사도 산출부를 포함하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  7. 제6항에 있어서,
    상기 기준열은 상기 매트릭스의 첫 번째 열인 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  8. 제6항에 있어서,
    상기 유사도 산출부는 수학식
    Figure 112017130562021-pat00003
    를 이용하여 상기 제1 유사도를 산출하고, 상기 수학식에서 k는 상기 매트릭스의 행의 개수를 나타내고, n은 상기 매트릭스의 열의 개수를 나타내며, i는 상기 매트릭스의 행의 번호를 나타내고, j는 상기 매트릭의 열의 번호를 나타내며, Xi1은 상기 매트릭스에서 i번째 행의 1번째 열에 배치된 식별번호를 나타내고, Xij는 상기 매트릭스에서 i번째 행의 j번째 열에 배치된 식별번호를 나타내는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  9. 제8항에 있어서,
    상기 수학식에서
    Figure 112017130562021-pat00004
    는 Xi1과 Xij가 동일하면 제1 값으로 설정되고, Xi1과 Xij가 상이하면 제2 값으로 설정되는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  10. 삭제
  11. 제1항에 있어서,
    상기 시퀀스 패턴 생성부는,
    상기 정상 제어데이터 보안규칙 중 상기 제1 제어데이터들이 매핑되는 정상 제어데이터 보안규칙의 인덱스 정보를 해당 제1 제어데이터의 식별정보로 할당하는 식별정보 할당부를 포함하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  12. 제11항에 있어서,
    상기 식별정보 할당부는 상기 정상 제어데이터 보안규칙의 생성에 이용된 제1 제어데이터를 해당 정상 제어데이터 보안규칙과 매핑시키는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  13. 제1항에 있어서,
    상기 시퀀스 패턴 생성부는,
    상기 정상 제어데이터 보안규칙의 인덱스 정보를 기초로 할당된 상기 제1 제어데이터들의 식별번호를 상기 제1 제어데이터들의 발생순서에 따라 k*n 매트릭스로 정렬하는 데이터 정렬부를 포함하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  14. 제13항에 있어서,
    상기 데이터 정렬부는,
    동일 열 내에서 발생순서가 빠른 제1 제어데이터의 식별정보를 상측에 배치하고 발생순서가 느린 제1 제어데이터의 식별정보를 하측에 배치하며, 동일 행 내에서 발생순서가 빠른 제1 제어데이터의 식별정보를 좌측에 배치하고 발생순서가 느린 제1 제어데이터의 식별정보를 우측에 배치하여 상기 k*n 매트릭스를 생성하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  15. 제1항에 있어서,
    상기 정상 제어데이터 보안규칙은 각 커맨드가 해당 커맨드의 밸류와 매핑되어 있는 데이터 세트, 동일한 종류의 커맨드에 대한 복수개의 밸류들을 기초로 산출된 대표밸류가 해당 커맨드와 매핑되어 있는 데이터 세트, 또는 동일한 종류의 커맨드에 대한 복수개의 밸류들간의 함수식이 해당 커맨드와 매핑되어 있는 데이터 세트인 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 시스템.
  16. 제어단말에서 공장제어장치로 전달된 제1 제어데이터들의 커맨드 및 밸류에 대한 정상 제어데이터 보안규칙을 생성하는 단계;
    상기 제1 제어데이터들의 식별번호를 기초로 정렬된 k*n 매트릭스에서 k값을 변경시키면서 k값 별로 상기 매트릭스의 기준열에 배치된 식별정보와 타열에 배치된 식별정보를 비교하여 제1 유사도를 산출하는 단계;
    상기 제1 유사도를 기초로 상기 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하는 단계; 및
    상기 공장제어장치로 전달되는 타겟 제어데이터들의 발생순서와 상기 정상 시퀀스 패턴을 비교하여 상기 타겟 제어데이터들의 발생순서의 비정상 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 제어데이터의 정상 시퀀스 패턴 생성 방법.
  17. 제어단말에서 공장제어장치로 전달된 제1 제어데이터들의 커맨드(Command) 및 밸류(Value)에 대한 정상 제어데이터 보안규칙을 기초로 상기 제1 제어데이터들의 발생순서에 따른 정상 시퀀스 패턴을 생성하고, 상기 공장제어장치로 전달되는 타겟 제어데이터들의 발생순서를 상기 정상 시퀀스 패턴과 비교하여 상기 타겟 제어데이터들의 발생순서의 비정상 여부를 판단하는 정상 시퀀스 패턴 생성 장치를 포함하고,
    상기 정상 시퀀스 패턴 생성 장치는,
    상기 정상 제어데이터 보안규칙을 인덱싱하여 각 정상 제어데이터 보안규칙 별로 인덱스 정보를 할당하는 것을 특징으로 하는 비정상 제어데이터 탐지 시스템.
KR1020170182674A 2017-12-28 2017-12-28 제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법 KR102069954B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170182674A KR102069954B1 (ko) 2017-12-28 2017-12-28 제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170182674A KR102069954B1 (ko) 2017-12-28 2017-12-28 제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20190080301A KR20190080301A (ko) 2019-07-08
KR102069954B1 true KR102069954B1 (ko) 2020-01-23

Family

ID=67256299

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170182674A KR102069954B1 (ko) 2017-12-28 2017-12-28 제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102069954B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101544110B1 (ko) 2015-02-11 2015-08-12 주식회사 선진일렉텍 원방 감시 제어 시스템
KR101572854B1 (ko) 2014-06-17 2015-12-01 주식회사 엔에스이 사이버 보안 기능이 강화된 피엘씨 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013036269A1 (en) * 2011-09-09 2013-03-14 Hewlett-Packard Development Company, L.P. Systems and methods for evaluation of events based on a reference baseline according to temporal position in a sequence of events
KR101880162B1 (ko) * 2015-12-31 2018-08-16 다운정보통신(주) 자동제어시스템 내 제어신호 분석을 이용한 제어신호 무결성 검증 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572854B1 (ko) 2014-06-17 2015-12-01 주식회사 엔에스이 사이버 보안 기능이 강화된 피엘씨 장치
KR101544110B1 (ko) 2015-02-11 2015-08-12 주식회사 선진일렉텍 원방 감시 제어 시스템

Also Published As

Publication number Publication date
KR20190080301A (ko) 2019-07-08

Similar Documents

Publication Publication Date Title
KR102027044B1 (ko) 비정상 제어데이터 탐지 시스템
US20230267149A1 (en) Analysis of data flows in complex enterprise it environments
US9560063B2 (en) Apparatus and method for detecting malicious domain cluster
US20160065600A1 (en) Apparatus and method for automatically detecting malicious link
CN109543942A (zh) 数据校验方法、装置、计算机设备和存储介质
CN103164698B (zh) 文本指纹库生成方法及装置、文本指纹匹配方法及装置
CN103154884B (zh) 模式检测
CN104168288A (zh) 一种基于协议逆向解析的自动化漏洞挖掘系统及方法
US20210044607A1 (en) Monitor, monitoring method, and recording medium
CN104240781B (zh) 核电厂数字化仪控系统的信号分配方法及系统
Hodo et al. Anomaly detection for simulated iec-60870-5-104 trafiic
EP3242240B1 (en) Malicious communication pattern extraction device, malicious communication pattern extraction system, malicious communication pattern extraction method and malicious communication pattern extraction program
KR102282847B1 (ko) 제어데이터 이상 검출을 위한 시스템
JP6967722B2 (ja) リスク分析装置及びリスク分析方法
CN113495902A (zh) 数据处理方法及数据标准管理系统
CN110493181A (zh) 用户行为检测方法、装置、计算机设备及存储介质
CN114338064B (zh) 识别网络流量类型的方法、装置、系统、设备和存储介质
KR102069954B1 (ko) 제어데이터의 정상 시퀀스 패턴 생성 시스템 및 방법
KR102282843B1 (ko) 스위칭 장치를 이용하는 비정상 제어데이터 탐지시스템
US10051004B2 (en) Evaluation system
Bernieri et al. AMON: An automaton monitor for industrial cyber-physical security
KR102115734B1 (ko) 공격ㆍ이상 검지 장치, 공격ㆍ이상 검지 방법, 및 공격ㆍ이상 검지 프로그램
EP3545658B1 (en) Evaluation and generation of a whitelist
Yu et al. Mining anomaly communication patterns for industrial control systems
CN110266562A (zh) 网络应用系统身份认证功能的自动检测的方法

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