KR20210015705A - 차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템 - Google Patents

차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템 Download PDF

Info

Publication number
KR20210015705A
KR20210015705A KR1020200095519A KR20200095519A KR20210015705A KR 20210015705 A KR20210015705 A KR 20210015705A KR 1020200095519 A KR1020200095519 A KR 1020200095519A KR 20200095519 A KR20200095519 A KR 20200095519A KR 20210015705 A KR20210015705 A KR 20210015705A
Authority
KR
South Korea
Prior art keywords
sdn
intrusion detection
packet
intrusion
flow table
Prior art date
Application number
KR1020200095519A
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 DE112020003658.8T priority Critical patent/DE112020003658T5/de
Priority to CN202080055847.3A priority patent/CN114208116A/zh
Priority to PCT/KR2020/010142 priority patent/WO2021020935A1/ko
Priority to US17/631,809 priority patent/US20240040381A1/en
Publication of KR20210015705A publication Critical patent/KR20210015705A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • 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

Landscapes

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

Abstract

차량 내부 네트워크(In-Vehicle Network: IVN)에 설치된 SDN 지원 스위치, SDN 지원 스위치와 통신하는 SDN 컨트롤러를 이용하여 차량 침입을 탐지하고 대응하는 방법에 있어서, SDN 컨트롤러가 SDN 지원 스위치로부터 플로우 테이블(flow table)을 수신하여 침입 탐지 시스템(Intrusion Detection System: IDS)으로 하여금 침입 탐지를 수행하게 하고, 침입 탐지 수행 결과를 기반으로 플로우 테이블을 갱신시키는 침입 대응 시스템(Intrusion Response System: IRS) 및 방법을 제공한다.

Description

차량 내부 네트워크에 대한 SDN 기반의 침입 대응 방법 및 이를 이용한 시스템{Method for SDN-based Intrusion Response or Prevention for In-vehicle Network and System using the same}
본 발명은 차량 내부 네트워크(In-vehicle Network: IVN)에 대한 침입 혹은 공격을 탐지하고 차단하는 기술에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
V2X 통신 및 네트워크 기반의 자율 주행(autonomous driving) 관련 기술이 적용된 상업용 차량의 개발이 이루어지고 있다. 그러나 V2X 통신 및 IVN을 적용한 상업용 차량은 통신망 또는 네트워크망을 침입하여 이루어지는 공격에 취약한 문제가 있다. 도 1은 차량의 보안 위협 종류를 분류한 분류도이다. 차량의 보안을 위협하는 공격에는 권한 탈취형과 비권한 탈취형 공격, 공격 소스를 기반으로 한 외부 공격과 차량 내부 요소들에 대한 내부 공격이 있다. 내부 공격은 대개 대상 차량에 물리적으로 접근하여 공격자가 수행하여 눈에 띄는 피해를 끼치는 반면 외부 공격은 주로 근거리 RF 통신, 키리스 엔트리 시스템(keyless entry system) 또는 타이어 압력 모니터링 시스템과 같은 센서 기반 시스템을 기초로 이루어져 그 영향력이 제한적이었다. 그러나, IVN 환경에서의 차량 내 연결성과 V2X 환경에서의 차량 간 연결성이 증대됨에 따라, 차량 외부 공격의 영향력은 증대될 예정이다.
설령, 공격 또는 침입을 적절히 감지한 경우에도 이에 대응하여 공격 또는 침입을 완화하는 방법이 문제가 되어 왔다. 종래 제안된 완화 방법들은 IVN 차량에 대한 공격에는 적절한 대안이 되지 못 하였다.
즉, V2X와 IVN을 지원하는 차량의 위험을 탐지하고 적절히 대응하기 위한 기술 프레임워크에 대한 개발이 부족한 실정이다. 현재, 온로드 IDS(Intrusion Detection System)는 차량 시스템의 계산 능력 한계로 경량 알고리즘만 지원한다는 제한이 있다. 따라서, 이러한 계산 능력 한계를 극복한 침입 탐지 및 그 대응을 제시할 수 있는 침입 대응 시스템(Intrusion Response System: IRS)의 고안이 필요하다.
본 개시는 소프트웨어 정의 네트워크(Software-Defined Networking: SDN) 기술을 이용하여, 이더넷(Ethernet) 기반의 차량 내부 네트워크(In-Vehicle Network: IVN)에 대한 공격을 탐지하고 나아가 이에 대응하는 방법 및 이를 이용한 시스템을 제시한다.
본 개시의 일 측면에 의하면, 차량 내부 네트워크(In-Vehicle Network: IVN)에 대한 침입 대응 시스템으로서, 차량 내부 네트워크에 설치되어, 플로우 테이블(flow table)로부터 플로우 엔트리(flow entry)를 참조하여 유입된 패킷의 플로우을 제어하는 SDN 지원 스위치; 및 상기 SDN 지원 스위치와 통신하고, 상기 SDN 지원 스위치로부터 일정 t 시간마다 플로우 테이블(flow table)을 수신하여 모니터링하고, 모니터링한 결과를 상기 SDN 지원 스위치에 송신하는 SDN 컨트롤러를 포함하되, 상기 SDN 컨트롤러는, 침입 탐지 시스템(Intrusion Detection System: IDS)에 상기 플로우 테이블을 송신하여 침입 탐지를 수행하게 하고, 상기 침입 탐지 시스템으로부터 침입 탐지 수행 결과를 상기 모니터링한 결과로서 수신하는 것을 특징으로 하는 침입 대응 시스템을 제공한다.
본 개시의 다른 측면에 의하면, 차량 내부 네트워크(In-Vehicle Network: IVN)에 설치된 SDN 지원 스위치 및 차량 외부에 배치된 SDN 컨트롤러를 이용하여 차량 침입을 탐지하고 대응하는 방법에 있어서, 상기 SDN 지원 스위치가 플로우 테이블(flow table)을 일정 t 시간마다 상기 SDN 컨트롤러로 송신하는 과정; 상기 SDN 컨트롤러가 상기 플로우 테이블을 수신하여 침입 탐지 시스템(Intrusion Detection System: IDS)에 송신하는 과정; 상기 SDN 컨트롤러는 상기 침입 탐지 시스템으로 하여금 상기 플로우 테이블에 포함된 각 플로우 엔트리의 필드 전부 도는 일부를 기초로 침입 탐지를 수행하게 하고, 상기 침입 탐지 시스템으로부터 수행 결과를 수신하는 과정; 상기 SDN 컨트롤러가 침입 탐지 수행 결과가 포함된 패킷-아웃 메시지(packet-out message)를 상기 SDN 지원 스위치에 송신하는 과정; 및 상기 SDN 지원 스위치가 상기 패킷-아웃 메시지를 기초로 상기 플로우 테이블을 갱신(update)하는 과정을 포함하는 것을 특징으로 하는 차량 침입 대응 방법을 제공한다.
본 개시의 SDN 스위치는 차량 내부 네트워크에 유입되는 트래픽의 모니터링과 차단을 동시에 수행할 수 있다. 즉, SDN 스위치는 플로우 테이블(flow table)을 기반으로 차량 내 유입된 트래픽을 모니터링하면서 공격으로 식별된 트래픽을 선별적으로 차단할 수 있다.
본 개시에 따르면, 차량 내 유입되는 패킷의 침입 패킷 여부에 대한 판단과 플로우 제어 액션에 대한 결정이 차량 내부 네트워크에서가 아닌 원격으로 결정되게 함으로써, 차량 내부 환경과 관계없이 높은 컴퓨팅 성능이 요구되는 고성능의 탐지 기술, 이를테면 딥러닝(deep learning) 또는 AI(Artificial Intelligence) 방법론을 기반으로 침입 패킷을 탐지할 수 있고, 탐지 결과에 따라 적절한 대응 명령을 제시할 수 있다. 또한, 차량 외부의 침입 탐지 시스템은 차량 환경과 관계없이 실시간으로 탐지 알고리즘 혹은 모델의 변경 혹은 업데이트를 가능하게 한다.
더욱이, 본 개시에 따르면, 복수의 차량에서 발생하는 내부 트래픽을 한 곳에서 동시적이고 종합적으로 모니터링할 수 있다. 이를 통해 단일 차량에서 탐지하기 어려운 애매한 이상 징후를 수집하고 다른 차량의 정상 트래픽과 비교함으로써 보다 정밀한 공격 탐지가 가능하게 된다.
본 개시의 기술은 기존 이더넷 기반 차량에 구비된 일반 스위치에 SDN 장치를 추가함으로써도 적용 가능하다. 따라서, 이더넷 기반의 차량 내부 네트워크의 토폴로지의 변경을 최소화하면서 본 개시의 기술이 적용될 수 있다.
도 1은 차량의 보안 위협 종류를 분류한 분류도이다.
도 2는 전형적인 SDN 아키텍처를 도시한 개념도이다.
도 3은 SDN 시스템을 구성과 하는 SDN 컨트롤러(SDN Controller)와 SDN 디바이스(SDN Device), 및 SDN 디바이스에 탑재되는 플로우 테이블(flow table)을 구성하는 플로우 엔트리의 구성 필드를 보인다.
도 4는 본 발명의 일 실시예에 따른 침입 대응 시스템(Intrusion Response System: IRS)의 구조를 개략적으로 나타내는 개념도이다.
도 5a 및 도 5b는 본 발명의 일 실시예에 따른 차량 내부 네트워크의 예시적인 토폴로지를 도시한 도면이다.
도 6a 및 도 6b는 본 발명의 일 실시예에 따른 침입 대응 시스템의 중앙 집중형 및 분산형 구조의 제어 평면 토폴로지를 도시한 도면이다.
도 7a 및 도 7b는 본 발명의 일 실시예에 따른 침입 대응 시스템(IRS)에 적용가능한 침입 탐지 시스템(IDS)의 토폴로지를 도시한 도면이다.
도 8은 본 개시에 따른 침입 대응 시스템의 유용성을 보이는 유스 케이스 시나리오를 나타내는 예시도이다.
도 9a 및 도 9b는 본 실시예에 따른 데이터 중심 침입 탐지 방법과 그 대응 방법을 나타내는 흐름도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제1, 제2, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '…부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다.
본 개시는, 일반적으로, 소프트웨어 정의 네트워크(Software-Defined Networking: SDN) 기술을 이용하여, 이더넷(Ethernet) 기반의 차량 내부 네트워크(In-Vehicle Network: IVN)에 대한 공격을 탐지하고 나아가 이에 대응하는 침입 대응 방법 및 침입 대응 시스템에 관한 것이다.
소프트웨어 정의 네트워크(SDN)는 스위치, 라우터와 같은 네트워크 장치의 제어 부분을 데이터 전송 부분과 분리하고, 네트워크 장치의 기능을 정의할 수 있는 개방형 인터페이스를 외부에 제공하여, 이를 통해 프로그램된 소프트웨어로 다양한 네트워크 경로 설정 및 제어, 관리 등을 할 수 있도록 하는 기술이다.
도 2는 전형적인 SDN의 아키텍처를 도시한 개념도이다. SDN 아키텍쳐는 애플리케이션 계층(application layer), 제어 계층(control layer) 및 인프라스트럭쳐 계층(infrastructure layer)을 포함하는 3 개의 계층으로 정의된다. 애플리케이션 계층, 제어 계층, 및 인프라스트럭쳐 계층은 각각 애플리케이션 평면(application plane), 제어 평면(control plane), 및 인프라스트럭쳐 평면(infrastructure plane, 혹은 데이터 평면(data plane))으로도 불린다. 각 계층은 개방형 인터페이스(open interface)를 통해 서로 통신한다. "노스바운드 API(northbound API)"로 지칭되는 애플리케이션 계층과 제어 계층 간의 개방형 인터페이스는 여러 가지 기능의 애플리케이션을 개발하고 다른 운영 도구과 통신을 가능하게 하는 API로서, 대개 Restful API를 주로 사용한다. "사우스바운드 API(southbound API)"로 지칭되는 제어 계층과 인프라스트럭쳐 계층 간의 개방형 인터페이스는 포워딩 제어, 정보 수집 등을 위한 인터페이스로서, 예컨대, OpenFlow, OF-config, Netconf 등이 그 예이다.
도 3은 SDN 시스템을 구성과 하는 SDN 컨트롤러(SDN Controller)와 SDN 디바이스(SDN Device), 및 SDN 디바이스에 탑재되는 플로우 테이블(flow table)를 구성하는 플로우 엔트리의 구성 필드를 보인다. 논리적 엔티티(entity)인 SDN 컨트롤러는 SDN 시스템의 제어 평면에 배치되고, 하드웨어 디바이스인 SDN 디바이스는 데이터 평면에 배치된다. SDN 디바이스(SDN Device)에 탑재되는 플로우 테이블은 SDN 디바이스에 수신된 패킷을 처리하기 위해서 다음과 같은 세 가지 주요 필드를 포함한다. 여기에는 플로우를 정의하는 패킷 헤더 정보(rule), 패킷을 어떻게 처리할 지를 표시하는 동작(action), 그리고 각 플로우별 통계(statistics)를 포함한다. 제어장치는 사우스바운드 API를 이용하여 스위치 내부의 플로우 테이블을 작성할 수 있으며, 여기에는 새로운 플로우를 등록하거나 삭제하는 기능을 포함한다.
도 4는 본 발명의 일 실시예에 따른 침입 대응 시스템(Intrusion Response System: IRS)의 구조를 개략적으로 나타내는 개념도이다.
전술한 바와 같이, 본 개시의 침입 대응 시스템(IRS; 400)은 소프트웨어 정의 네트워크(SDN) 기술을 이용한다. SDN은 가상화된 아키텍처이므로 그 구성요소들을 물리적으로 같은 위치에 배치할 필요는 없다. 본 개시의 침입 대응 시스템(400)에 따르면, SDN 시스템의 데이터 평면에는 SDN 지원 스위치(SDN Switch, 410)를 구비한 차량 내부 네트워크(IVN)가 배치되고, SDN 시스템의 제어 평면에는 SDN 컨트롤러(SDN Controller, 420)가 배치되며, SDN 시스템의 애플리케이션 평면에는 침입 탐지 시스템(Intrusion Detection System: IDS, 430)이 배치된다.
침입 대응 시스템(400)은 트래픽이 발생하는 차량과 트래픽의 통계를 분석하여 침입 여부를 판단하고 그 판단 결과에 따른 대응을 결정하는 논리적 혹은 물리적 엔티티(entity)를 차량 내부 네트워크로부터 분리시킨다. 침입 탐지 시스템(430)의 운용 주체는 SDN 컨트롤러(420)의 운용 주체와 상이할 수도 있다.
차량 내부 네트워크에 구비된 SDN 지원 스위치(410)는 플로우 테이블(flow table)을 기초로 차량 내부 네트워크에서 발생한 트래픽 혹은 차량 내부 네트워크로 유입되는 트래픽을 제어한다. 차량과 V2I 통신으로 연결되는 차량 외부의 SDN 컨트롤러(420)는 SDN 지원 스위치로부터 특정 시간마다 플로우 테이블을 수신하고, 수신된 플로우 테이블을 모니터링한 결과로서 침입 탐지 시스템(430)의 침입 탐지의 수행 결과를 수신하여 SDN 지원 스위치(410)로 하여금 플로우 테이블을 갱신하게 한다.
이하, 제안된 침입 대응 시스템(400)에서 SDN 지원 스위치(410), SDN 컨트롤러(420) 및 침입 탐지 시스템(430)의 기능 및 동작을 자세히 설명한다.
SDN 지원 스위치(410)는 차량에 탑재되어 차량의 IVN 또는 V2X 통신으로 유입되는 모든 트래픽 또는 패킷(이하, "패킷"으로 통일함)의 흐름을 제어한다. SDN 지원 스위치(410)는 SDN 스위치 또는 SDN 환경에서 동작하도록 SDN 장치를 결합한 일반 스위치일 수 있으나, 반드시 이에 한하지 않는다. 예컨대, 차량에 탑재된 IVN 또는 V2X 환경에서 발생하는 패킷들의 흐름을 제어할 수 있고, 제어 평면의 SDN 컨트롤러(420)와 통신할 수 있으면 본 실시예에 따른 SDN 지원 스위치(410)가 될 수 있다.
SDN 지원 스위치(410)는 탑재된 플로우 테이블(flow table)을 이용하여 SDN 지원 스위치(410)로 유입된 패킷을 제어한다. 본 실시예의 일 측면에 의하면, SDN 지원 스위치(410)는 포트(port) 정보 등 패킷 관련 데이터와 플로우 테이블 내의 각 플로우 엔트리(flow entry)의 규칙 필드(rule field)를 매칭하여 특정 패킷과 매칭되는 플로우 엔트리(flow entry)를 참조 또는 추출한다. 이러한 매칭은 SDN 지원 스위치(410)와 SDN 컨트롤러(420) 간의 통신 프로토콜에 해당하는 사우스바운드 API의 명세(specification)에 따라 달라진다. 예컨대, 도 4에서와 같이 플로우 엔트리의 규칙 필드에는 스위치 포트(Switch port), 맥 소스(Mac src), 이더넷 타입(Eth type), VLAN 아이디(VLAN ID), IP 소스(IP src) 등이 포함될 수 있다. 이때 패킷 데이터와의 매칭은 규칙 필드의 모든 명세와 매칭되거나, 기 설정된 범위 내에서의 매칭 또는 기 설정된 개수 이상의 매칭이 이루어짐으로써 성립될 수 있다. 이때 특정 패킷과 매칭되는 플로우 엔트리는 복수개일 수 있다.
SDN 지원 스위치(410)는 유입된 패킷과 매칭되는 플로우 엔트리가 있는 경우, 해당 플로우 엔트리를 추출하여 플로우 엔트리의 액션 필드(action field)의 명령을 실행한다. 본 실시예의 일 측면에 의하면, 매칭되는 복수의 플로우 엔트리가 있는 경우 플로우 엔트리에 포함된 우선순위 필드(priority field)를 이용하여 우선순위가 가장 높은 플로우 엔트리를 추출할 수 있다.
SDN 지원 스위치(410)로 유입되는 모든 패킷을 SDN 컨트롤러(420)로 송신하는 경우 개인 정보 침해 문제와 자원 낭비의 문제가 있을 수 있다. 이에, 본 실시예의 일 측면에 의하면 패킷 전송에 있어 유입된 패킷과 매칭되는 플로우 엔트리가 없는 경우, 매칭된 플로우 엔트리의 유효기간이 만료(expire)된 경우와 같이 종래의 플로우 테이블만으로 패킷 제어를 수행할 수 없는 경우만 유입된 패킷을 포함하는 패킷-인 메시지(packet-in message)를 SDN 컨트롤러(420)로 송신할 수 있다. 이러한 패킷-인 메시지는 SDN 지원 스위치(410)와 SDN 컨트롤러(420)가 채용하는 인터페이스에 적응적으로 생성된 것일 수 있다. SDN 컨트롤러(420)는 패킷-인 메시지에 포함된 패킷과 포워딩 액션을 패킷-아웃 메시지(packet-out message)에 포함시켜 SDN 지원 스위치(410)로 송신할 수 있다. SDN 지원 스위치(410)는 수신한 패킷-아웃 메시지를 기초로 플로우 테이블을 갱신함으로써 유입된 패킷을 적절히 제어한다.
또는, 플로우 테이블을 기초로 모든 패킷 데이터를 제어하는 SDN 지원 스위치(410)의 기능을 이용하여, 일정 t 시간마다 또는 SDN 컨트롤러(420)로부터 일정 t 시간마다 플로우 테이블을 요청하는 질의를 수신함으로써 SDN 컨트롤러(420)에 플로우 테이블을 송신하여 침입 탐지가 수행되도록 하고, 침입 탐지가 수행된 결과를 SDN 컨트롤러(420)로부터 수신하여 플로우 테이블을 갱신하는, 데이터 중심 침입 탐지(data-driven detection) 방법을 채용할 수도 있다. 이러한 데이터 중심 침입 탐지는 패킷의 제어와 침입 탐지가 별도로 이루어지는 데 특징이 있다.
이때, SDN 컨트롤러(420)가 플로우 테이블을 수신하는 t 시간은 차량의 내부 또는 외부 환경, 주행 환경, 침입 탐지 시스템(430)이 채용하는 침입 탐지 방법 및 침입 탐지 수행 결과의 전부 또는 일부를 기초로 설정 또는 재설정되는 것일 수 있다. t 시간의 설정 또는 재설정은 SDN 컨트롤러(420)로부터 수신한 패킷-아웃 메시지를 기초로 SDN 지원 스위치(410)가 결정하거나, SDN 컨트롤러(420)가 수신한 패킷-인 메시지 또는 패킷 플로우를 모니터링함에 따라 결정되거나, 침입 탐지 시스템(430)이 결정하는 것일 수 있다.
이러한 패킷-아웃 메시지에는 침입 탐지 결과가 포함될 수 있다. 예컨대, 침입이 있는 것으로 판단된 경우 패킷-아웃 메시지는 침입 패킷 또는 공격을 걸러낼 수 있는 규칙과 그 대응(예: 패킷 드롭 액션, 패킷 드롭 및 소스 차단 액션, 패킷 드롭 및 컨트롤러로 포워딩 액션, t 시간 감축 등)을 포함할 수 있다. SDN 지원 스위치(410)는 이러한 패킷-아웃 메시지를 기초로 새로운 플로우 엔트리를 플로우 테이블에 추가하거나, 기존 플로우 테이블을 갱신하거나, t를 변경함으로써 침입 탐지에 대응할 수 있다. 이러한 규칙 및 대응하는 액션을 결정하는 주체는 SDN 컨트롤러(420)의 요청을 받은 외부 장치(예: 침입 탐지 시스템(440) 등) 또는 SDN 컨트롤러(420) 자체일 수 있다. 이러한 데이터 중심 침입 탐지 방법은 도 9a 및 도 9b를 참조하여 자세하게 후술한다.
플로우 엔트리는 전술한 규칙 필드와 액션 필드뿐 아니라, 통계 필드(statistics field, 도 4의 STATS 필드)를 더 포함할 수 있다. 통계 필드는 패킷에 관한 통계적 데이터를 수집 또는 산출하여 저장하는 필드로, 카운터 필드(counter field)가 포함될 수 있다. 카운터 필드는 플로우 엔트리의 규칙 필드와 유입된 패킷이 매칭되는 횟수를 카운트하는 것으로, 경우에 따라 기 설정된 주기를 갖고 초기화되거나 누적적으로 증가될 수 있다. 이러한 카운터 필드에는 유입된 패킷과의 일정 기준값 내에서의 매칭 횟수를 기록하는 매치 카운터(match counter)를 포함하거나, 매칭되는 패킷의 초당 바이트 수를 연산하는 바이트 카운터(bytes counter)를 더 포함할 수 있다.
SDN 지원 스위치(410)는 SDN 컨트롤러(420)로부터 메시지를 전송받은 경우에만 플로우 테이블을 갱신할 수 있다. SDN 지원 스위치(410)는 SDN 컨트롤러(420)와의 통신(예: 사우스바운드 API 기반의 통신)이 끊어진 경우 또는 콜드 부팅(예: 엔진 시동) 시 SDN 컨트롤러(420)와의 연결이 재개될 때까지 페일-세이프 모드(fail-safe mode)에서 작동한다. 페일-세이프 모드에서 SDN 지원 스위치는 차량 제조사에서 설정한 플로우 테이블을 기반으로 패킷 플로우를 제어할 수 있다. 이 경우 SDN 지원 스위치(410)는 일반 스위치(common switch)로서 작동한다.
SDN 컨트롤러(420)는 SDN 지원 스위치(410)로부터 패킷-인 메시지 또는 플로우 테이블을 수신한다. 전술한 바와 같이 SDN 컨트롤러(420)가 패킷-인 메시지를 수신하는 경우 해당 패킷과 포워딩 액션을 패킷-아웃 메시지에 포함시켜 SDN 지원 스위치(410)에 송신한다. 플로우 테이블을 수신하는 경우에는 침입 탐지 시스템(440)에 전달하고, 침입 탐지 시스템(430)으로부터 침입 탐지를 수행하게 하여 수행한 결과(예: 액션)를 수신한다. SDN 컨트롤러(420)는 침입 탐지 수행 결과를 포함하는 패킷-아웃 메시지를 SDN 지원 스위치(410)에 송신한다.
SDN 컨트롤러(420)는 SDN 컨트롤러 또는 SDN 환경에서 동작하도록 SDN 장치를 결합한 일반 컨트롤러일 수 있으나, 반드시 이에 한하는 것은 아니다. 예컨대, IVN 또는 V2X 환경에서 발생하는 패킷을 관리하고 SDN 지원 스위치(410) 또는 SDN 지원 스위치(410)가 탑재된 차량과 통신할 수 있으면 본 실시예에 따른 SDN 컨트롤러(420)가 될 수 있다.
SDN 컨트롤러(420)는 침입 탐지 시스템(430)으로부터 수신한 침입 탐지 수행 결과에 따라, 해당 침입을 걸러낼 수 있는 새로운 규칙(예: t 시간 변경, 플로우 엔트리의 규칙 필드 설정 등)을 생성하여 패킷-아웃 메시지에 더 포함시킬 수 있다. 이러한 새로운 규칙은 침입 탐지 시스템(440) 또는 외부 장치로부터 수신하여 생성될 수 있다.
본 실시예의 다른 측면에 따르면 SDN 컨트롤러(420)는 하나 이상의 차량에 탑재된 하나 이상의 SDN 지원 스위치(410)와 OpenFlow 등 사우스바운드 API 기반 연결의 유지관리, 플로우 테이블 관리 또는 패킷 통계 수집을 수행할 수 있다. SDN 컨트롤러(420)는 또한 하나 이상의 침입 탐지 시스템(도 4의 430 등)과 ad-hoc API, RESTful API 또는 기타 프로그래밍 인터페이스 등 노스바운드 API 기반 연결을 유지관리 할 수 있다.
침입 탐지 시스템(430)은 SDN 컨트롤러(420)와 통신하고, SDN 컨트롤러(420)로부터 플로우 테이블을 수신하여 침입 탐지를 수행하고, 수행 결과에 대응하는 액션을 결정하여 SDN 컨트롤러(420)에 송신한다. 예컨대, 본 실시예의 일 측면에 의하면 침입 탐지 시스템(430)은 플로우 테이블 내 각 플로우 엔트리의 각 필드를 모니터링하여 비정상적인 카운터 증가가 있거나, 권한이 없는 소스 노드가 권한이 요구되는 프로세서로 패킷을 보내는 경우가 있다면 이를 공격으로 판단하여 해당 플로우를 걸러낼 수 있는 규칙을 지정하거나, 특정 플로우 엔트리의 액션 필드를 패킷 드롭 명령으로 지정하는 할 수 있다. 본 실시예의 다른 측면에 의하면 같은 경우 침입 탐지 시스템(430)은 패킷 드롭 명령과 컨트롤러로의 포워딩 명령을 액션으로 결정함으로써 해당 유형의 패킷을 네트워크상에서는 드롭(drop)시키고 SDN 컨트롤러(420)로 전달하여 해당 유형의 패킷을 모니터링하게 할 수 있다. 이러한 모니터링을 위해 SDN 컨트롤러(420)는 다른 장치 또는 SDN 지원 스위치(410)로부터 플로우 통계를 수신할 수 있다.
이하 도 5a, 도 5b, 도 6a, 도 6b, 도 7a, 및 도 7b를 참조하여, 제안된 침입 대응 시스템의 데이터 평면, 제어 평면 및 애플리케이션 평면의 예시적인 토폴로지들을 각각 설명한다.
도 5a 및 도 5b는 본 발명의 일 실시예에 따른 차량 내부 네트워크의 예시적인 토폴로지를 도시한 도면이다.
도 5a는 하이브리드 형태의 차량 내부 네트워크(IVN)의 예시적인 토폴로지를 보인다. 예시된 차량 내부 네트워크(IVN)는 각종 이더넷 디바이스(ethernet device), 인포테인먼트(infortainment) 및 하나 이상의 ECU(Electronic Control Unit)들과 이들 디바이스들이 연결된 SDN 스위치로 구성되는 이더넷 기반 LAN를 포함한다. 전형적으로, ADAS(Advanced Driver-Assistance System) 및 멀티미디어와 같은 고속 데이터 애플리케이션은 이더넷 기반 LAN을 통해 SDN 스위치와 연결될 수 있다. 또한, 예시된 차량 내부 네트워크(IVN)는 메시지 우선순위를 요구하는 파워 트레인 시스템(power train system)과 같은, 이더넷이 적합하지 않은 일부 애플리케이션을 위한 레거시 CAN 버스(legacy CAN bus)를 포함한다. 레거시 CAN 버스는 이더넷과 CAN 버스 간 통신을 지원하는 ETH-CAN 게이트웨이(ETH-CAN gateway)를 통해 SDN 지원 스위치에 연결될 수 있다. SDN 스위치는 V2I 통신 모뎀(V2I modem)을 통하여 원격에 위치한 SDN 컨트롤러(420)를 포함한 다른 장치, 서버, 시스템 등과의 통신을 수행할 수 있다.
도 5b는 이더넷 기반의 차량 내부 네트워크(IVN)의 예시적인 토폴로지를 보인다. 예시된 차량 내부 네트워크(IVN)는 3개의 스위치(Switch 1, Switch 2, Basic Switch 3)와 9개의 ECU를 포함하고 있다. 토폴로지를 구성하는 방법에 따라 스위치의 개수 또는 ECU 장치의 개수는 달라질 수 있음에 유의하여야 한다. ECU에서 생성되는 모든 패킷이 스위치를 거쳐 최종 목적 노드로 전달되도록 하기 위해, 각 ECU는 스위치에 단독으로 연결되어야 하고, 여러 ECU가 단일 회선을 점유하지 않는다.
Switch 1 및 Switch 2는 SDN 기능이 활성화된 SDN 지원 스위치이다. 두 스위치는 차량과 외부 인프라 간의 통신(V2I 통신)을 담당하는 무선 모뎀(wireless modem)을 통해 SDN 컨트롤러와 연결된다. Switch 1 및 Switch 2는, SDN 컨트롤러와의 연결이 형성된 경우, SDN 컨트롤러로부터 수신한 액션에 기초하여 ECU 1 내지 ECU 6의 패킷을 처리하며, 각 패킷의 액션을 스스로 결정할 수 없다. 그러나, 무선 모뎀이 제 기능을 수행하지 못하여 SDN 컨트롤러와의 연결이 단절되는 경우에, Switch 1과 Switch 2는 후술하는 Basic Switch 3과 같이 작동한다. 이로써 본 실시예에 따른 차량 침입 대응 시스템(400) 기반의 차량은 비상시에도 정상 작동을 유지할 수 있고(예: fail-safe operation 작동), 차량 침입 대응 시스템(400)의 각 기능들이 선택적으로 적용되도록 한다.
Switch 1과 Switch 2는 SDN 컨트롤러로부터 수신한 명령 또는 액션에 따라 공격으로 여겨지는 패킷을 다른 ECU로 전달하지 않고 차단할 수 있으며, 더 나아가 사후 분석을 위해 SDN 컨트롤러로 전송할 수 있다. 해당 패킷이 공격자에 의한 침입인지의 판단은 외부의 침입 탐지 시스템에서 수행된다.
Basic Switch 3은 본 실시예에 따른 SDN 지원 스위치가 아닌, 기존 차량에 적용되어 왔던 맥 어드레스 학습(MAC address learning)을 수행하는 기본 스위치이다. Basic Switch 3은 ECU 7 내지 ECU 9가 보낸 패킷의 목적지를 알고 있는 경우 특정 하나의 포트로 패킷을 전달(forward)하고, 목적지를 모르는 경우 모든 포트로 브로드캐스트(broadcast)한다. Basic Switch 3은 침입 탐지/대응을 위한 패킷 정보 수집 기능을 지원하지 않고, SDN 컨트롤러와 같은 외부 장치로부터 패킷 플로우를 제어하는 액션을 지정 받지 못 한다.
도 6a 및 도 6b는 본 발명의 일 실시예에 따른 침입 대응 시스템의 중앙 집중형 및 분산형 구조의 제어 평면 토폴로지를 도시한 도면이다.
전형적으로, 제어 평면에 배치된 SDN 컨트롤러는 다수의 차량 내 SDN 스위치로부터 데이터를 송수신할 수 있다. 도 6a는 단일 SDN 컨트롤러가 차량의 모든 패킷을 관리하는 중앙집중형 구조를 보인다. 본 개시의 침입 탐지 시스템에서는 1개의 SDN 컨트롤러만으로 본래의 목적을 달성할 수 있으나, 지연(latency)과 부하 분산(load balancing) 등을 고려하여 여러 개의 SDN 컨트롤러를 설치 및 운용할 수도 있다. 도 6b는 여러 개의 거점화된 SDN 컨트롤러들이 각각 물리적 또는 논리적으로 가까운 하나 이상의 차량을 관리하는 분산형 구조를 나타내고 있다. 예를 들어, SDN 컨트롤러들은 거점 별 엣지 클라우드 서버(Edge cloud server) 또는 포그 서버(fog server) 상에 구현될 수 있다. 거점 별 SDN 컨트롤러들은 물리적 혹은 논리적으로 가까운 차량과 1차 통신을 수행하고 그 결과를 중앙 SDN 컨트롤러(Centralized SDN Controller)로 넘겨줄 수 있다. 중앙집중형 구조에서는 단일 SDN 컨트롤러가, 분산형 아키텍처에서는 중앙 SDN 컨트롤러가 노스바운드 API 를 이용하여 침입 탐지 시스템(430)과의 통신을 수행한다.
도 7a 및 도 7b는 본 발명의 일 실시예에 따른 침입 대응 시스템(IRS)에 적용가능한 침입 탐지 시스템(IDS)의 토폴로지를 도시한 도면이다.
근래에 제안된 딥러닝 기반의 침입 탐지 시스템은 정밀한 탐지 결과를 얻기 위해 GPU 등 더 많은 자원을 요구하며, 차량에 탑재되는 컴퓨팅 시스템은 주행에 필요한 최소한의 성능을 가지므로 이러한 침입 탐지 시스템을 구동하기 적합하지 않다. 차량 외부에 배치되는 침입 탐지 시스템은 침입 탐지 알고리즘을 연산하기 위한 차량 내 성능 문제를 더이상 고려하지 않아도 된다. 따라서, 제안된 침입 대응 시스템에는, 도 8a에 예시된 딥러닝 알고리즘과 같은, 높은 연산능력을 요구하는 정밀한 침입 탐지 알고리즘을 운용하는 침입 탐지 시스템이 채용될 수 있다.
제안된 침입 대응 시스템에서는 여러 개의 침입 탐지 시스템이 동시에 운용될 수 있다. 각 침입 탐지 시스템(IDS)이 특정한 프로토콜에 대한 침입 탐지를 담당하거나(예를 들어, IDS 1 for SSH, IDS 2 for AVTP, IDS 3 for UDP), 도 8b에 예시된 것처럼, 각기 상이한 탐지 알고리즘을 운용하는 여러 개의 침입 탐지 시스템의 탐지 결과를 이용하는 앙상블(Ensemble) 기법이 이용될 수도 있다.
침입 탐지 시스템을 차량 내부 네트워크가 아닌 차량 외부에 배치하는 것은 침입 대응 시스템의 운용에 여러가지 유연성을 제공한다. 침입 탐지 시스템은 분석 대상인 차량의 위치나 상태와 관계없이 실시간으로 업데이트 될 수 있다. 예컨대, 침입 탐지 시스템는 분석 대상 차량이 주행 중인 상태에서도, 침입 탐지 모델 혹은 알고리즘을 동적으로 추가, 재구성 또는 취소할 수 있다. 또한 개별 차량에 새로운 기능이 탑재되거나 개별 차량이 새로운 패턴의 공격 패턴이 알려진 경우에, 운영자(서비스 제공자)는 관련된 데이터를 이용하여 탐지 모델을 업데이트할 수도 있다.
도 8은 본 개시에 따른 침입 대응 시스템의 유용성을 보이는 유스 케이스 시나리오를 나타내는 예시도이다.
(1) 공격이 감지될 때마다 모든 차량은 탐지된 공격 정보를 클라우드 서버(cloud server) 또는 포그 서버(fog server) 상 SDN 컨트롤러를 통하여 침입 탐지 시스템으로 전송한다. 이 경우 RSU는 인접 차량과 각 서버 간의 통신을 중계할 수 있다. RSU의 통신 방법은 NFC(Near Field Communication) 방식, 저전력 블루투스(BLE: Bluetooth Low Energy), 무선랜(WIFI), UWB(Ultra Wideband), 무선 주파수(Radio Frequency), 적외선 통신(IrDA:Infrared Data Association), 지그비(Zigbee), LTE, 5G를 기반으로 이루어질 수 있다.
(2) 본 개시의 침입 대응 시스템 또는 방법이 적용되는 차량 중 어느 하나인 (a) 차량이 공격받고 있는 경우, 차량에 탑재된 IDS는 공격 트래픽 정보 또는 공격으로 염려되는 패킷을 클라우드 서버 또는 포그 서버로로 송신한다.
(3) 클라우드 서버 또는 포그 서버상 SDN 컨트롤러는 침입 탐지 시스템으로 공격 트래픽 정보 또는 패킷을 보내고, 침입 탐지 시스템은 데이터를 분석한다. 공격이 있는 것으로 판단된 경우 침입 탐지 시스템은 (a) 차량을 우회해서 주행하라는 경고 명령을 SDN 컨트롤러를 통하여 각 차량에게 보낸다.
(4) V2V(Vehicle-to-Vehicle) 통신이 활성화된 경우, (a) 차량은 인접한 다른 차량에게 스스로의 상태를 공유할 수 있다.
(5) 외부 장치에 의한 원격 제어가 허용되는 경우, 클라우드 서버 또는 포그 서버의 요청에 의해 외부 장치는 (a) 차량이 감속 및 당김 운전하도록 제어할 수 있다.
도 9a 및 도 9b는 본 실시예에 따른 데이터 중심 침입 탐지 방법과 그 대응 방법을 나타내는 흐름도이다.
도 9a는 SDN 지원 스위치(410) 및 SDN 컨트롤러(420)가 데이터 중심 침입 탐지를 수행하는 과정이 나타나있다.
본 실시예에 따른 침입 대응 시스템(400)의 적용을 받는 차량(예: CAV)이 주행을 시작하면 IVN 또는 V2X 환경으로부터 SDN 지원 스위치(410)로 패킷이 유입된다(S900).
SDN 지원 스위치(410)는 탑재된 플로우 테이블로부터 유입된 패킷과 매칭되는 규칙 필드를 갖는 플로우 엔트리가 있는지 판단한다(S902).
매칭되는 플로우 엔트리가 있는 경우, 플로우 엔트리의 액션 필드 명령에 패킷 드롭 명령이 포함되어 있는지 판단하여(S904) 패킷 드롭 명령이 없으면 액션 필드의 명령을 수행한다(S906).
패킷 드롭 명령이 있으면 해당하는 패킷을 드롭시키고 해당 소스로부터의 트래픽을 차단한다(S912).
유입된 패킷과 매칭되는 플로우 엔트리가 없는 경우, 또는 매칭된 플로우 엔트리가 만료되어 결과적으로 매칭되는 플로우 엔트리가 없는 것과 같아진 경우 해당 패킷을 포함하는 패킷-인 메시지를 차량 외부의 SDN 컨트롤러(420)로 송신하고(S910) 해당 패킷을 드롭시키고 트래픽을 차단한다(S912).
SDN 컨트롤러(420)는 패킷-인 메시지를 수신하여(S920), 포워딩 액션을 지정하고(S922), 해당 액션을 패킷-아웃 메시지에 포함시켜 SDN 지원 스위치(410)에 송신한다(S992).
SDN 컨트롤러(420)는 침입 탐지 시스템(430)으로부터 플로우 테이블을 요구하는 질의(query)를 수신하여(S940) SDN 지원 스위치(410)에 전달한다.
SDN 지원 스위치(410)는 SDN 컨트롤러(420)의 플로우 테이블 요청 질의를 수신하여 플로우 테이블을 송신한다(S950, S952).
SDN 지원 스위치(410)로부터 플로우 테이블을 수신하면 해당 플로우 테이블을 침입 탐지 시스템(440)으로 전달한다(S960).
SDN 컨트롤러(420)는 침입 탐지 시스템(430)이 수신한 플로우 테이블을 기반으로 침입 탐지를 수행한 결과를 수신하여(S990) 패킷-아웃 메시지에 담아 SDN 지원 스위치(410)로 송신한다(S992).
SDN 지원 스위치(410)는 SDN 컨트롤러(420)로부터 패킷-아웃 메시지를 수신하여(S996) 플로우 테이블을 갱신한다(S998). 이러한 갱신은 새로운 플로우 엔트리를 추가하거나, 만료한 플로우 엔트리의 만료 정보 또는 플로우 엔트리의 각 필드를 갱신하거나, 새로이 갱신할 내용이 없다면 플로우 테이블을 그대로 둠으로써 이루어질 수 있다.
도 9b는 침입 탐지 시스템(430)이 데이터 중심 침입 탐지를 수행하는 과정이 나타나있다.
침입 탐지 시스템(430)은 플로우 테이블을 요청할 수 있는 주기(S930에서의 t)가 도래하기를 기다려(S930) SDN 컨트롤러(420)에 질의한다(S932).
SDN 컨트롤러(420)로부터 플로우 테이블을 수신하면(S970) 플로우 테이블 내 각 플로우 엔트리의 각 필드와 플로우 통계 등을 기초로 침입 탐지를 수행한다(S972).
침입 탐지 시스템(430)은 침입이 있는 것으로 판단 시(S974), 침입 판단의 대상이 된 패킷의 드롭을 결정한다(S980). 이러한 결정은 침입 판단의 대상이 된 패킷과 매칭되는 플로우 엔트리의 액션 필드에 드롭 명령을 포함시킴으로써도 수행될 수 있다. 침입 탐지 시스템(430)은 드롭 액션을 포함한 탐지 결과를 SDN 컨트롤러(420)에 송신한다(S982).
그러나 침입이 없는 것으로 판단되면 탐지 결과를 송신하지 않는다(S976).
도 9a 및 도 9b에서는 과정 각 과정들을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 발명의 일 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 발명의 일 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 일 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 9a 및 도 9b에 기재된 순서를 변경하여 실행하거나 각 과정 중 하나 이상의 과정을 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 9a 및 도 9b의 시계열적인 순서로 한정되는 것은 아니다.
본 명세서에 설명되는 시스템들 및 기법들의 다양한 구현예들은, 디지털 전자 회로, 집적 회로, FPGA(field programmable gate array), ASIC(application specific integrated circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현예들은 프로그래밍가능 시스템상에서 실행 가능한 하나 이상의 컴퓨터 프로그램들로 구현되는 것을 포함할 수 있다. 프로그래밍가능 시스템은, 저장 시스템, 적어도 하나의 입력 디바이스, 그리고 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 이들에게 데이터 및 명령들을 전송하도록 결합되는 적어도 하나의 프로그래밍가능 프로세서(이것은 특수 목적 프로세서일 수 있거나 혹은 범용 프로세서일 수 있음)를 포함한다. 컴퓨터 프로그램들(이것은 또한 프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 혹은 코드로서 알려져 있음)은 프로그래밍가능 프로세서에 대한 명령어들을 포함하며 "컴퓨터가 읽을 수 있는 기록매체"에 저장된다.
컴퓨터가 읽을 수 있는 기록매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체는 ROM, CD-ROM, 자기 테이프, 플로피디스크, 메모리 카드, 하드 디스크, 광자기 디스크, 스토리지 디바이스 등의 비휘발성(non-volatile) 또는 비 일시적인(non-transitory) 매체 또는 데이터 전송 매체(data transmission medium)와 같은 일시적인(transitory) 매체를 더 포함할 수도 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다.
본 명세서에 설명되는 시스템들 및 기법들의 다양한 구현예들은, 프로그램가능 컴퓨터에 의하여 구현될 수 있다. 여기서, 컴퓨터는 프로그램가능 프로세서, 데이터 저장 시스템(휘발성 메모리, 비휘발성 메모리, 또는 다른 종류의 저장 시스템이거나 이들의 조합을 포함함) 및 적어도 한 개의 커뮤니케이션 인터페이스를 포함한다. 예컨대, 프로그램가능 컴퓨터는 서버, 네트워크 기기, 셋탑 박스, 내장형 장치, 컴퓨터 확장 모듈, 개인용 컴퓨터, 랩탑, PDA(Personal Data Assistant), 클라우드 컴퓨팅 시스템 또는 모바일 장치 중 하나일 수 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
400: 침입 대응 시스템(Intrusion Response System: IRS)
410: SDN 지원 스위치
420: SDN 컨트롤러
430: 침입 탐지 시스템(Intrusion Detection System: IDS)

Claims (15)

  1. 차량 내부 네트워크(In-Vehicle Network: IVN)에 대한 침입 대응 시스템으로서,
    차량 내부 네트워크에 설치되어, 플로우 테이블(flow table)로부터 플로우 엔트리(flow entry)를 참조하여 유입된 패킷의 플로우을 제어하는 SDN 지원 스위치; 및
    상기 SDN 지원 스위치와 통신하고, 상기 SDN 지원 스위치로부터 일정 t 시간마다 플로우 테이블(flow table)을 수신하여 모니터링하고, 모니터링한 결과를 상기 SDN 지원 스위치에 송신하는 SDN 컨트롤러
    를 포함하되,
    상기 SDN 컨트롤러는, 침입 탐지 시스템(Intrusion Detection System: IDS)에 상기 플로우 테이블을 송신하여 침입 탐지를 수행하게 하고, 상기 침입 탐지 시스템으로부터 침입 탐지 수행 결과를 상기 모니터링한 결과로서 수신하는 것
    을 특징으로 하는 침입 대응 시스템.
  2. 제1항에 있어서,
    상기 t는, 상기 차량의 내부 또는 외부 환경, 주행 환경, 상기 침입 탐지 장치가 채용하는 침입 탐지 방법 및 상기 침입 탐지 수행 결과의 전부 또는 일부를 기초로 설정 또는 재설정되는 것을 특징으로 하는 침입 대응 시스템.
  3. 제1항에 있어서,
    상기 플로우 엔트리는, 규칙 필드(rule field), 액션 필드(action field) 및 하나 이상의 카운터 필드(counter field)를 포함하고,
    상기 SDN 지원 스위치는,
    상기 유입된 패킷의 데이터를 상기 플로우 테이블 내 각 플로우 엔트리의 규칙 필드와 매칭하여, 매칭되는 플로우 엔트리의 각 카운터 필드를 갱신하는 것을 특징으로 하는 침입 대응 시스템.
  4. 제3항에 있어서,
    상기 플로우 엔트리는 매치 카운터 필드(match counter field) 및 바이트 카운터 필드(bytes counter field)를 더 포함하고,
    상기 SDN 지원 스위치는,
    상기 유입된 패킷의 데이터를 상기 플로우 테이블 내 각 플로우 엔트리의 규칙 필드와 매칭하여, 매칭 개수 또는 매칭 범위가 일정 기준값 이상인 플로우 엔트리의 매치 카운터 필드를 갱신하고, 초당 바이트 수를 연산하여 바이트 카운터 필드를 갱신하는 것을 특징으로 하는 침입 대응 시스템.
  5. 제3항에 있어서,
    상기 모니터링은, 상기 플로우 테이블내 각 플로우 엔트리 카운터 필드를 기초로 수행되는 것을 특징으로 하는 침입 대응 시스템.
  6. 제1항에 있어서,
    상기 SDN 컨트롤러는,
    복수의 SDN 지원 스위치와 각각의 인터페이스를 기반으로 통신하고, 상기 복수의 SDN 지원 스위치로부터 각각 플로우 테이블을 수신하되, 상기 t 시간은 상기 복수의 SDN 지원 스위치에 따라 각각 설정되는 것을 특징으로 하는 차량 침입 대응 시스템.
  7. 제6항에 있어서,
    상기 플로우 엔트리는, 하나 이상의 필드를 포함하고, 상기 필드는 상기 복수의 SDN 지원 스위치 각각이 채용하는 인터페이스에 따라 결정되는 것을 특징으로 하는 침입 대응 시스템.
  8. 제1항에 있어서,
    상기 SDN 지원 스위치는,
    상기 모니터링한 결과를 수신하여 상기 플로우 테이블을 갱신(update)하는 것을 특징으로 하는 침입 대응 시스템.
  9. 차량 내부 네트워크(In-Vehicle Network: IVN)에 설치된 SDN 지원 스위치 및 차량 외부에 배치된 SDN 컨트롤러를 이용하여 차량 침입을 탐지하고 대응하는 방법에 있어서,
    상기 SDN 지원 스위치가 플로우 테이블(flow table)을 일정 t 시간마다 상기 SDN 컨트롤러로 송신하는 과정;
    상기 SDN 컨트롤러가 상기 플로우 테이블을 수신하여 침입 탐지 시스템(Intrusion Detection System: IDS)에 송신하는 과정;
    상기 SDN 컨트롤러는 상기 침입 탐지 시스템으로 하여금 상기 플로우 테이블에 포함된 각 플로우 엔트리의 필드 전부 도는 일부를 기초로 침입 탐지를 수행하게 하고, 상기 침입 탐지 시스템으로부터 수행 결과를 수신하는 과정;
    상기 SDN 컨트롤러가 침입 탐지 수행 결과가 포함된 패킷-아웃 메시지(packet-out message)를 상기 SDN 지원 스위치에 송신하는 과정; 및
    상기 SDN 지원 스위치가 상기 패킷-아웃 메시지를 기초로 상기 플로우 테이블을 갱신(update)하는 과정
    을 포함하는 것을 특징으로 하는 차량 침입 대응 방법.
  10. 제9항에 있어서,
    상기 t는, 상기 차량의 내부 또는 외부 환경, 주행 환경, 상기 침입 탐지 시스템이 채용하는 침입 탐지 방법 및 상기 침입 탐지 수행 결과의 전부 또는 일부를 기초로 설정 또는 재설정되는 것을 특징으로 하는 침입 대응 방법.
  11. 제9항에 있어서,
    상기 플로우 엔트리는, 규칙 필드(rule field), 액션 필드(action field) 및 하나 이상의 카운터 필드(counter field)를 포함하고,
    상기 SDN 지원 스위치는, 유입된 패킷의 데이터와 각 플로우 엔트리의 규칙 필드를 매칭하여 매칭된 플로우 엔트리의 각 카운터 필드를 갱신하고,
    상기 모니터링은, 상기 플로우 테이블에 포함된 플로우 엔트리의 각 카운터 필드를 기초로 이루어지는 것을 특징으로 하는 침입 대응 방법.
  12. 제9항에 있어서,
    상기 SDN 지원 스위치가 상기 차량 내부 네트워크로부터 유입된 패킷을 포함하는 패킷-인 메시지(packet-in message)를 상기 SDN 컨트롤러로 송신하는 과정; 및
    상기 SDN 컨트롤러가 상기 유입된 패킷과 포워딩 액션을 포함하는 패킷-아웃 메시지(packet-out message)를 상기 SDN 지원 스위치로 송신하는 과정
    을 더 포함하는 것을 특징으로 하는 침입 대응 방법.
  13. 제12항에 있어서,
    상기 패킷-인 메시지를 상기 SDN 컨트롤러로 송신하는 과정은,
    상기 유입된 패킷과 매칭되는 플로우 엔트리가 상기 플로우 테이블 내에 없거나, 매칭된 플로우 테이블이 만료된 경우에 수행되는 것을 특징으로 하는 침입 대응 방법.
  14. 제9항에 있어서,
    상기 SDN 컨트롤러는,
    복수의 SDN 지원 스위치와 각각의 인터페이스를 기반으로 통신하고, 상기 복수의 SDN 지원 스위치로부터 각각 플로우 테이블을 수신하되, 상기 t 시간은 상기 복수의 SDN 지원 스위치에 따라 각각 설정되는 것을 특징으로 하는 침입 대응 방법.
  15. 제14항에 있어서,
    상기 플로우 엔트리는, 하나 이상의 필드를 포함하고, 상기 필드는 상기 복수의 SDN 지원 스위치 각각이 채용하는 인터페이스에 따라 결정되는 것을 특징으로 하는 침입 대응 방법.




KR1020200095519A 2019-07-31 2020-07-30 차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템 KR20210015705A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE112020003658.8T DE112020003658T5 (de) 2019-07-31 2020-07-31 Sdn-basiertes eindringungsverhinderungsverfahren für ein fahrzeuginternesnetz und system, das dieses verfahren verwendet
CN202080055847.3A CN114208116A (zh) 2019-07-31 2020-07-31 基于sdn的车载网络入侵应对方法及使用该方法的系统
PCT/KR2020/010142 WO2021020935A1 (ko) 2019-07-31 2020-07-31 차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템
US17/631,809 US20240040381A1 (en) 2019-07-31 2020-07-31 Sdn-based intrusion response method for in-vehicle network and system using same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190093503 2019-07-31
KR1020190093503 2019-07-31

Publications (1)

Publication Number Publication Date
KR20210015705A true KR20210015705A (ko) 2021-02-10

Family

ID=74561600

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200095519A KR20210015705A (ko) 2019-07-31 2020-07-30 차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템
KR1020200095518A KR20210015704A (ko) 2019-07-31 2020-07-30 차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020200095518A KR20210015704A (ko) 2019-07-31 2020-07-30 차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템

Country Status (1)

Country Link
KR (2) KR20210015705A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230059429A (ko) * 2021-10-26 2023-05-03 인천대학교 산학협력단 인공지능 기반 컴퓨터 이상 탐지 시스템
WO2023210881A1 (ko) * 2022-04-28 2023-11-02 엘지전자 주식회사 Sdn 기반의 차량 내 네트워크 및 이의 제어 방법
US11838197B2 (en) 2020-10-29 2023-12-05 Samsung Electronics Co., Ltd. Methods and system for securing a SDN controller from denial of service attack

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240069369A (ko) 2022-11-11 2024-05-20 건국대학교 산학협력단 소프트웨어 정의 네트워크에서 전환 이동 타겟 방어 메커니즘의 성능 정량화 장치 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11838197B2 (en) 2020-10-29 2023-12-05 Samsung Electronics Co., Ltd. Methods and system for securing a SDN controller from denial of service attack
KR20230059429A (ko) * 2021-10-26 2023-05-03 인천대학교 산학협력단 인공지능 기반 컴퓨터 이상 탐지 시스템
WO2023210881A1 (ko) * 2022-04-28 2023-11-02 엘지전자 주식회사 Sdn 기반의 차량 내 네트워크 및 이의 제어 방법

Also Published As

Publication number Publication date
KR20210015704A (ko) 2021-02-10

Similar Documents

Publication Publication Date Title
KR20210015705A (ko) 차량 내부 네트워크에 대한 sdn 기반의 침입 대응 방법 및 이를 이용한 시스템
US20220278994A1 (en) Sdn-based intrusion response method for in-vehicle network, and system using same
US20200145334A1 (en) Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
Jaballah et al. A survey on software-defined VANETs: benefits, challenges, and future directions
US9900342B2 (en) Behavioral white labeling
US20180139173A1 (en) Method and apparatus for implementing a fibre channel zone policy
KR101803332B1 (ko) 사물 인터넷 네트워크 시스템
US20220337603A1 (en) Autonomous pilicy enforcement point configuration for role based access control
US20150334001A1 (en) Communication system, control apparatus, and network topology management method
US20140313975A1 (en) White listing for binding in ad-hoc mesh networks
US20240040381A1 (en) Sdn-based intrusion response method for in-vehicle network and system using same
US11330017B2 (en) Method and device for providing a security service
Todorova et al. DDoS attack detection in SDN-based VANET architectures
CN111585829B (zh) 经异步通信网接收数据的电子装置和方法、相关通信系统和计算机程序
EP3448001B1 (en) Communication security apparatus, control method, and storage medium storing a program
US20120170581A1 (en) Policy homomorphic network extension
KR20230059429A (ko) 인공지능 기반 컴퓨터 이상 탐지 시스템
KR101763653B1 (ko) 네트워크 자원을 인식하고 관리하는 방법 및 장치
KR20170006950A (ko) Sdn 기반의 네트워크 플랫트닝 시스템 및 그 방법
EP3721586A1 (en) Network link verification
Al-Kahtani et al. Architectures and security of software defined networks for internet of things: State-of-the-art and challenges
Kamalesh et al. Threats to Control Plane of Software Defined Networks: An Extensive Study
US20220078620A1 (en) System for detecting short duration attacks on connected vehicles

Legal Events

Date Code Title Description
A201 Request for examination