KR102618020B1 - 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치 - Google Patents

차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치 Download PDF

Info

Publication number
KR102618020B1
KR102618020B1 KR1020220005421A KR20220005421A KR102618020B1 KR 102618020 B1 KR102618020 B1 KR 102618020B1 KR 1020220005421 A KR1020220005421 A KR 1020220005421A KR 20220005421 A KR20220005421 A KR 20220005421A KR 102618020 B1 KR102618020 B1 KR 102618020B1
Authority
KR
South Korea
Prior art keywords
log
logs
normal
intrusion
target log
Prior art date
Application number
KR1020220005421A
Other languages
English (en)
Other versions
KR102618020B9 (ko
KR20230109437A (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 KR1020220005421A priority Critical patent/KR102618020B1/ko
Publication of KR20230109437A publication Critical patent/KR20230109437A/ko
Application granted granted Critical
Publication of KR102618020B1 publication Critical patent/KR102618020B1/ko
Publication of KR102618020B9 publication Critical patent/KR102618020B9/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 차량용 네트워크 침입 방지 방법 및 장치에 관한 것으로, 본 발명의 일 실시예에 따른 침입 방지 방법은, 인포테인먼트 시스템으로부터 제1 로그들을 수집하는 단계, 오픈 소스 기반의 소스 코드를 사용하여 제2 로그들을 수집하는 단계, 상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그 정규식들을 추출하는 단계, 상기 제1 로그들 가운데 어느 하나를 대상 로그로 선택하는 단계, 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능한지 판단하는 단계 및 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능 것으로 판단한 경우, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 단계를 포함하고, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 단계는 미리 학습이 수행된 인공 신경망에 의해 상기 대상 로그에 침입이 발생하였는지 판단할 수 있다.

Description

차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치{METHOD OF DETECTING INTRUSION FOR INFOTAINMENT SYSTEMS AND APPARATUS THEREOF}
본 발명은 차량용 인포테인먼트 시스템에서 네트워크 침입 탐지 방법 및 장치에 관한 것으로, 특히 기존방식의 결정적 방식과 인공 신경망을 함께 사용한 차량용 인포테인먼트 시스템에서 네트워크 침입 탐지 방법 및 장치에 관한 것이다.
차량용 인포테인먼트 시스템(in-vehicle infotainment system)은 차 안에서 즐길 수 있는 엔터테인먼트(entertainment)와 정보(information) 시스템을 총칭하는 용어이다. 자율주행 등 미래 모빌리티 기술과 접목한 차량용 인포테인먼트 시스템 (infotainment system)은 블루투스 (bluetooth), 와이파이 (WI-FI), 텔레매틱스 (telematics) 등 무선통신 기술을 탑재해 사용자에게 원격 제어기능을 제공하고 있다. 다만, 차량용 인포테인먼트 시스템에 사용되는 소프트웨어는 높은 복잡도를 지니고 있어 정적 코드 분석이나 퍼징 등으로 알려지지 않은 취약점을 발견하기 어렵다. 다만, 공격자가 그러한 취약점을 발견해 인포테인먼트 시스템이 적용된 차량을 대상으로 사이버 공격 (exploitation)을 가할 수 있다면, 정보가 유출될 뿐만 아니라 심각한 인명 피해까지 발생할 수 있는 문제점이 있다.
본 발명의 목적은 상기와 같은 문제점을 해결하기 위한 것으로, 차량용 인포테인먼트 시스템의 비정상 행위 탐지 속도와 탐지 정확도가 향상된 차량용 네트워크 침입 탐지 방법 및 방법을 제공하는 데 있다.
본 발명의 일 실시예에 따른 침입 탐지 방법은 인포테인먼트 시스템으로부터 제1 로그들을 수집하는 단계, 오픈 소스 기반의 소스 코드를 사용하여 제2 로그들을 수집하는 단계, 상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그 정규식들을 추출하는 단계, 상기 제1 로그들 가운데 어느 하나를 대상 로그로 선택하는 단계, 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능한지 판단하는 단계 및 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능 것으로 판단한 경우, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 단계를 포함하고, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 단계는 미리 학습이 수행된 인공 신경망에 의해 상기 대상 로그에 침입이 발생하였는지 판단할 수 있다.
본 발명의 다른 실시예에 따른 침입 방지 장치는 프로세서(processor) 및 상기 프로세서에 의해 수행되는 하나 이상의 명령이 저장된 메모리(memory)를 포함하고, 상기 하나 이상의 명령은, 인포테인먼트 시스템으로부터 제1 로그들을 수집하는 것, 오픈 소스 기반의 소스 코드를 사용하여 제2 로그들을 수집하는 것, 상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그 정규식들을 추출하는 것, 상기 제1 로그들 가운데 어느 하나를 대상 로그로 선택하는 것, 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능한지 판단하는 것, 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능 것으로 판단한 경우, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것 및 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것은 미리 학습이 수행된 인공 신경망에 의해 상기 대상 로그에 침입이 발생하였는지 판단하는 것을 포함할 수 있다.
본 발명의 다른 실시예에 따른 차량은 인포테인먼트 시스템 및 침입 탐지 장치를 포함할 수 있고, 상기 침입 방지 장치는 프로세서(processor) 및 상기 프로세서에 의해 수행되는 하나 이상의 명령이 저장된 메모리(memory)를 포함하고, 상기 하나 이상의 명령은, 상기 인포테인먼트 시스템으로부터 제1 로그들을 수집하는 것, 오픈 소스 기반의 소스 코드를 사용하여 제2 로그들을 수집하는 것, 상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그 정규식들을 추출하는 것, 상기 제1 로그들 가운데 어느 하나를 대상 로그로 선택하는 것, 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능한지 판단하는 것, 상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능 것으로 판단한 경우, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것 및 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것은 미리 학습이 수행된 인공 신경망에 의해 상기 대상 로그에 침입이 발생하였는지 판단하는 것을 포함할 수 있다.
본 발명에 따르면, 정상 로그 정규식 및 인공 신경망을 통해 2단계에 걸쳐 침입을 탐지하여 탐지 정확도 및 속도가 향상될 수 있다.
본 발명에 대해 더욱 이해하기 위해 포함되며 본 출원에 포함되고 그 일부를 구성하는 첨부된 도면은 본 발명의 원리를 설명하는 상세한 설명과 함께 본 발명의 실시예를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 차량의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 정상 로그 정규식을 추출하는 방법을 설명하기 위한 개념도이다.
도 3은 본 발명의 일 실시예에 따른 침입 탐지 방법의 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른 침입 탐지 장치의 블록도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 명세서의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 발명의 일 실시예에 따른 차량의 블록도이다.
도 1을 참조하면, 차량(10)은 인포테인먼트(infotainment) 시스템(100) 및 침입 탐지 장치(200)를 포함할 수 있다. 본 명세서에서는 침입 탐지 장치(200)가 차량(10) 내부에 구비되는 것으로 도시하였으나, 이는 일 예시이며, 침입 탐지 장치(200)는 차량 외부에 별도로 구비될 수 있다.
인포테인먼트 시스템(100)은 사용자의 제어를 기초로 복수의 서비스들을 제공할 수 있다. 예를 들어, 복수의 서비스들은 네비게이션 출력, 오디오 재생 및 동영상 재생 등을 포함할 수 있으나, 이에 한정하지 아니한다. 예를 들어, 사용자는 블루투스(bluetooth), 와이파이(WI-FI), 텔레매틱스(telematics) 등의 무선 통신 기술을 사용하여 인포테인먼트 시스템(100)을 원격으로 제어할 수 있다. 여기에서, 멀티미디어 데이터는 스트리밍 데이터 또는 인포테인먼트 시스템(100)에 미리 저장된 데이터일 수 있다. 예를 들어, 멀티미디어 데이터가 스트리밍 데이터인 경우 인포테인먼트 시스템(100)은 멀티미디어 데이터를 외기(예를 들어, TMS 센터(Telematics Multimedia System center))로부터 수신할 수 있다.
한편, 사용자가 인포테인먼트 시스템(100)을 원격으로 제어하는 경우, 인포테인먼트 시스템(100)이 외부로부터 멀티미디어 데이터를 수신하는 경우와 같이 인포테인먼트 시스템(100)이 차량(10) 외부와 무선 통신을 수행하는 경우 등과 같은 이벤트가 발생하는 경우에 각각 제1 로그가 발생할 수 있다. 제1 로그는 각각의 이벤트가 발생할 때 마다 실제로 생성되는 로그일 수 있다. 한편, 제1 로그들이 각각의 서비스마다 상이할 수 있다.
일 실시예에서, 인포테인먼트 시스템(100)은 데몬 프로세서 및 리눅스를 포함할 수 있다. 데몬 프로세서는 각각의 이벤트마다 정해진 형식이 없는 로그 메시지를 남길 수 있고, 리눅스는 로그 메시지를 가독성이 높은 형태로 변환하여 제1 로그를 생성할 수 있다. 예를 들어, 리눅스는 journalctl와 같은 유틸리티를 사용하여 로그 메시지를 제1 로그로 변환할 수 있다.
침입 탐지 장치(200)는 제1 로그 수집기(210), 제2 로그 수집기(220), 정상 로그 생성기(230), 제1 침입 탐지기(240) 및 제2 침입 탐지기(250)를 포함할 수 있다.
제1 로그 수집기(210)는 인포테인먼트 시스템(100)에서 생성되는 제1 로그들을 수집할 수 있다. 제1 로그 수집기(210)는 제1 로그들을 정상 로그 생성기(230) 및 제1 침입 탐지기(240)에 제공할 수 있다.
제2 로그 수집기(220)는 제2 로그들을 수집할 수 있다. 제2 로그들을 차량(10)이 정상 주행하는 경우 생성되는 로그일 수 있다. 제2 로그 수집기(220)는 외부로부터 제2 로그들을 수집할 수 있다. 예를 들어, 제2 로그 수집기(220)는 오픈 소스와 같은 소스 코드를 통해 제2 로그를 수집할 수 있다. 여기에서, 제2 로그들은 인포테인먼트 시스템(100)에서 제공되는 서비스의 종류에 발생 가능한 로그들을 포함할 수 있고, 서비스의 종류에 따라 각각 상이한 형태일 수 있다. 제2 로그 수집기(220)는 제2 로그를 정상 로그 생성기(230) 및 제2 침입 탐지기(250)에 제공할 수 있다.
정상 로그 생성기(230)는 제1 로그들을 제1 로그 수집기(210)로부터 제공받을 수 있고, 제2 로그들을 제2 로그 수집기(220)로부터 제공받을 수 있다. 정상 로그 생성기(230)는 제1 로그들 및 제2 로그들을 기초로 정상 로그 정규식을 추출할 수 있다. 이를 상세히 설명하면 다음 도 2와 같을 수 있다.
도 2는 본 발명의 일 실시예에 따른 정상 로그 정규식을 추출하는 방법을 설명하기 위한 개념도이다.
도 2를 참조하면, 정상 로그 생성기(230)는 제1 로그들 및 제2 로그들 기초로 인포테인먼트 시스템(100)에서 생성 가능한 정상 로그들을 통합할 수 있다. 정상 로그들은 외부로부터의 침입이 발생하지 않는 경우에 발생할 수 있는 정상적인 형태의 로그들은 수 있다.
정상 로그 생성기(230)는 통합한 정상 로그들을 기초로 정상 로그 패턴을 추출할 수 있다. 정상 로그 생성기(230)는 통합한 정상 로그들을 정렬하고 중복된 로그들을 제거할 수 있다. 이러한 경우, 유사한 형태의 로그들이 순차적으로 배열될 수 있다. 예를 들어, 인포테인먼트 시스템(100)이 동일한 서비스를 제공하는 경우 발생하는 로그들은 순차적으로 배열될 수 있다. 도 2에서 제1 로그(911)는 네비게이션 출력시 생성되는 로그일 수 있고, 제2 로그(912) 및 제3 로그(913)는 오디오 재생시 생성되는 로그일 수 있으며, 제4 로그(914)는 동영상 재생시 생성되는 로그일 수 있다.
정상 로그 생성기(230)는 순차적으로 배열된 로그들의 문자열들의 유사도를 연산할 수 있다. 여기에서, 정상 로그 생성기(230)는 편집 거리(edit distance) 알고리즘을 통해 서로 인접한 두 개의 로그들의 문자열의 유사도를 연산할 수 있다. 정상 로그 생성기(230)는 문자열의 유사도를 기초로 정상 로그 패턴을 추출할 수 있다. 정상 로그 생성기(230)는 문자열의 유사도가 미리 설정한 값 보다 큰 로그들을 동일한 그룹으로 그룹핑하고, 문자열의 유사도가 미리 설정한 값 보다 작은 로그들을 다른 그룹으로 그룹핑하는 방식으로 정상 로그 패턴을 추출할 수 있다. 여기에서, 미리 설정한 값은 정상 로그들의 형태를 기초로 결정될 수 있다. 예를 들어, 제1 정상 로그(911)를 제1 그룹(G1)으로, 제2 정상 로그(912) 및 제3 정상 로그(913)를 제2 그룹(G2)으로, 제4 정상 로그(914)를 제3 그룹(G3)으로 그룹핑하는 방식으로 정상 로그 패턴을 추출할 수 있다. 예를 들어, 제1 그룹(G1)은 네비게이션 출력시 생성되는 정상 로그 패턴일 수 있고, 제2 그룹(g2)은 오디오 재생시 생성되는 정상 로그 패턴일 수 있으며, 제3 그룹(G3) 동영상 재생시 생성되는 정상 로그 패턴일 수 있다.
정상 로그 생성기(230)는 정상 로그 패턴을 기초로 정상 로그 정규식을 추출할 수 있다. 정상 로그 생성기(230)는 정상 로그 패턴에 포함된 각각의 그룹들 마다 정상 로그 정규식을 추출할 수 있다. 예를 들어, 정상 로그 생성기(230)는 제1 그룹(G1) 내지 제3 그룹(G3) 각각에 대한 정상 로그 정규식을 추출할 수 있다.
다시 도 1을 참조하면, 정상 로그 생성기(230)는 정상 로그 정규식을 제1 침입 탐지기(240) 및 제2 침입 탐지기(250)에 제공할 수 있다.
제1 침입 탐지기(240)는 제1 로그들을 제1 로그 수집기(210)로부터 제공받을 수 있고, 정상 로그 정규식을 정상 로그 생성기(230)로부터 제공받을 수 있다. 본 명세서에서는, 제1 침입 탐지기(240)가 제1 로그들을 제1 로그 수집기(210)로부터 제공받는 것을 기초로 설명하나, 이와 달리 제1 침입 탐지기(240)가 제1 로그를 인포테인먼트 시스템(100)으로부터 수집할 수 있다. 이 경우, 제1 침입 탐지기(240)는 제1 로그가 생성될 때마다 인포테인먼트 시스템(100)으로부터 제1 로그를 수집할 수 있다.
제1 침입 탐지기(240)는 제1 로그들 가운데 어느 하나를 대상 로그로 선택할 수 있다. 제1 침입 탐지기(240)는 대상 로그와 정상 로그 정규식을 비교하는 방식으로 대상 로그에 대한 외부의 침입이 발생하였는지 여부를 1차적으로 탐지할 수 있다. 제1 침입 탐지기(240)는 대상 로그와 각각의 서비스 별로 생성된 정상 로그 정규식 모두를 비교할 수 있다. 제1 침입 탐지기(240)는 정상 로그 정규식을 화이트 리스트(white list)로 보고, 대상 로그와 정상 로그 정규식을 비교할 수 있다. 예를 들어, 대상 로그가 정상 로그 정규식으로부터 추출되지 않는 경우, 제1 침입 탐지기(240)는 대상 로그에 외부로부터의 침입이 발생한 것으로 판단할 수 있다. 대상 로그에 외부로부터의 침입이 발생한 것으로 판단한 경우, 제1 침입 탐지기(240)는 대상 로그를 제2 침입 탐지기(250)에 제공할 수 있다.
제2 침입 탐지기(250)는 정상 로그 정규식을 정상 로그 생성기(230)로부터 제공받을 수 있고. 대상 로그를 제1 침입 탐지기(240)로부터 제공받을 수 있다. 제2 침입 탐지기(250)는 학습부(251) 및 인공 신경망을 포함하는 탐지부(252)를 포함할 수 있다. 예를 들어, 인공 신경망은 RNN(recurrent neural network)일 수 있으나, 이에 한정하지 아니한다.
학습부(251)는 각각의 서비스들 마다 학습 모델을 생성할 수 있다. 예를 들어, 학습부(251)는 네비게이션 제공을 기초로 하는 제1 학습 모델, 오디오 출력을 기초로 하는 제2 학습 모델 및 동영상 재생을 기초로 하는 제3 학습 모델을 생성할 수 있다.
학습부(251)는 인공 신경망에 대한 학습을 수행할 수 있다. 학습부(251)는 각각의 학습 모델 별로 학습을 수행할 수 있다. 예를 들어, 학습부(251)는 정상 로그 정규식을 기초로 인공 신경망에 대한 학습을 수행할 수 있다. 예를 들어, 학습부(251)는 정상 로그 정규식을 벡터화 하고 해당 벡터를 인공 신경망 학습의 입력 값으로 사용할 수 있다. 벡터는 word2vec 모델을 사용할 수 있고, 로그 각각의 개별패턴을 단어로 볼 수 있다. 또한, 학습부(251)는 LSTM (Long short-term memory)나 트랜스포머 (Transformer)를 이용한 시계열 데이터 예측 모델로 인공 신경망에 대한 학습을 수행할 수 있다.
탐지부(252)는 대상 로그에 외부로부터의 침입이 발생하였는지 여부를 2차적으로 판단할 수 있다. 탐지부(252)는 인공 신경망을 사용하여 대상 로그에 외부로부터의 침입이 발생하였는지 여부를 판단할 수 있다. 탐지부(252)는 제1 로그의 순서가 학습 모델과 다른 경우 대상 로그에 외부로부터의 침입이 발생한 것으로 판단할 수 있다. 대상 로그에 외부로부터의 침입이 발생한 것으로 판단한 경우, 탐지부(252)는 침입 발생 사실을 알릴 수 있다. 예를 들어, 탐지부(252)는 차량(10), 사용자 및 관제 센터 가운데 적어도 하나에 침입 발생 사실을 알릴 수 있다.
도 3은 본 발명의 일 실시예에 따른 침입 탐지 방법의 흐름도이다.
도 3을 참조하면, 침입 탐지 장치는 제1 로그를 수집할 수 있다(S310). 침입 탐지 장치(200)는 제1 로그를 인포테인먼트 시스템(100)으로부터 수집할 수 있다. 침입 탐지 장치(200)는 인포테인먼트 시스템(100)에서 생성되는 모든 제1 로그를 수집할 수 있다.
침입 탐지 장치는 제2 로그를 수집할 수 있다(S320). 침입 탐지 장치(200)는 외부로부터 제2 로그를 수집할 수 있다. 예를 들어, 침입 탐지 장치(200)는 오픈 소스와 같은 소스 코드를 이용하여 제2 로그를 수집할 수 있다.
침입 탐지 장치는 정상 로그 정규식을 추출할 수 있다(S330). 침입 탐지 장치(200)는 제1 로그 및 제2 로그를 기초로 정상 로그 정규식을 추출할 수 있다. 침입 탐지 장치(200)는 제1 로그 및 제2 로그 가운데 중복되는 것을 제거하고, 유사한 형태의 로그를 순차적으로 배열할 수 있다. 침입 탐지 장치(200)는 유사한 형태의 로그에 대한 그룹핑을 수행하여 정상 로그 패턴을 추출할 수 있고, 정상 로그 패턴을 기초로 정상 로그 정규식을 추출할 수 있다. 침입 탐지 장치(200)는 인포테인먼트 시스템(100)에서 제공되는 서비스 별로 정상 로그 정규식을 추출할 수 있다.
침입 탐지 장치는 대상 로그가 정상 로그 정규식으로부터 도출 가능한지 판단할 수 있다(S340). 침입 탐지 장치(200)는 S310에서 수집한 제1 로그 중 하나를 대상 로그로 선택할 수 있다. 침입 탐지 장치(200)는 대상 로그가 S330에서 추출한 정상 로그 정규식으로부터 도출 가능한지 판단할 수 있다. 대상 로그가 정상 로그 정규식으로부터 추출 가능한 경우(S340의 예), 침입 탐지 장치(200)는 대상 로그에 침입이 발생하지 않은 것으로 판단하고, 탐지를 종료할 수 있다.
대상 로그가 정상 로그 정규식으로부터 추출이 불가능한 경우(S340의 아니오), 침입 탐지 장치(200)는 대상 로그에 침입이 발생한 것으로 1차적으로 판단할 수 있고, 대상 로그의 순서가 학습 모델과 일치하는지 비교할 수 있다(S350). 침입 탐지 장치(200)는 미리 학습이 수행된 인공 신경망을 사용하여 대상 로그의 순서가 학습 모델과 일치하는지 비교할 수 있다. 대상 로그의 순서가 학습 모델과 일치하는 경우(S350의 예), 침입 탐지 장치(200)는 대상 로그에 침입이 발생하지 않은 것으로 판단하고, 탐지를 종료할 수 있다. 대상 로그의 순서가 학습 모델과 일치하는 경우(S350의 예), 침입 탐지 장치(200)는 대상 로그에 침입이 발생하지 않은 것으로 판단하고, 탐지를 종료할 수 있다.
대상 로그의 순서가 학습 모델과 일치하지 않는 경우(S350의 아니오), 침입 탐지 장치(200)는 대상 로그에 침입이 발생한 것으로 판단하고, 대상 로그에 침입이 발생하였음을 알릴 수 있다(S360). 예를 들어, 침입 탐지 장치(200)는 차량(10), 사용자 및 관제 센터 중 적어도 하나에 대상 로그의 침입 발생 사실을 알릴 수 있다.
도 4는 본 발명의 다른 실시예에 따른 침입 탐지 장치의 블록도이다.
도 4의 침입 탐지 장치(400)는 도 1의 침입 탐지 장치(200)와 동일할 수 있다. 침입 탐지 장치(400)는 적어도 하나의 프로세서(410), 메모리(420) 및 네트워크와 연결되어 통신을 수행하는 송수신 장치(430)를 포함할 수 있다. 또한, 침입 탐지 장치(400)는 입력 인터페이스 장치(440), 출력 인터페이스 장치(450), 저장 장치(460) 등을 더 포함할 수 있다. 침입 탐지 장치(400)에 포함된 각각의 구성 요소들은 버스(bus, 470)에 의해 연결되어 서로 통신을 수행할 수 있다. 다만, 침입 탐지 장치(400)에 포함된 각각의 구성요소들은 공통 버스(470)가 아니라, 프로세서(410)를 중심으로 개별 인터페이스 또는 개별 버스를 통하여 연결될 수도 있다. 예를 들어, 프로세서(410)는 메모리(420), 송수신 장치(430), 입력 인터페이스 장치(440), 출력 인터페이스 장치(450) 및 저장 장치(460) 중에서 적어도 하나와 전용 인터페이스를 통하여 연결될 수도 있다.
프로세서(410)는 메모리(420) 및 저장 장치(460) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(410)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(420) 및 저장 장치(460) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(420)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.
본 발명에서 사용되는 대부분의 용어는 해당 분야에서 널리 사용되는 일반적인 것들에서 선택되지만, 일부 용어는 출원인에 의해 임의로 선택되며 그 의미는 필요에 따라 다음 설명에서 자세히 서술한다. 따라서 본 발명은 용어의 단순한 명칭이나 의미가 아닌 용어의 의도된 의미에 근거하여 이해되어야 한다.
본 발명은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (24)

  1. 인포테인먼트 시스템으로부터 제1 로그들을 수집하는 단계;
    오픈 소스 기반의 소스 코드를 사용하여 제2 로그들을 수집하는 단계;
    상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그 정규식들을 추출하는 단계;
    상기 제1 로그들 가운데 어느 하나를 대상 로그로 선택하는 단계;
    상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능한지 판단하는 단계; 및
    상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능 것으로 판단한 경우, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 단계를 포함하고,
    상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 단계는 미리 학습이 수행된 인공 신경망에 의해 상기 대상 로그에 침입이 발생하였는지 판단하고,
    상기 정상 로그 정규식들을 추출하는 단계는,
    상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그들을 통합하는 단계;
    상기 정상 로그들을 기초로 정상 로그 패턴들을 획득하는 단계; 및
    상기 정상 로그 패턴을 기초로 상기 정상 로그 정규식들을 추출하는 단계를 포함하는, 침입 탐지 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 정상 로그들을 기초로 정상 로그 패턴들을 획득하는 단계는,
    편집 거리(edit distance) 알고리즘을 통해 상기 정상 로그들 가운데 서로 인접한 정상 로그들의 유사도를 연산하는 단계를 포함하는, 침입 탐지 방법.
  4. 제1항에 있어서,
    상기 정상 로그 정규식들은,
    상기 인포테인먼트 시스템에서 제공되는 서비스 별로 상이한, 침입 탐지 방법.
  5. 제1항에 있어서,
    상기 인공 신경망은,
    상기 인포테인먼트 시스템에서 제공되는 서비스 별로 상이한 학습 모델들을 포함하는, 침입 탐지 방법.
  6. 제1항에 있어서,
    상기 인공 신경망은,
    순환 신경망 (recurrent neural network, RNN)인, 침입 탐지 방법.
  7. 제6항에 있어서,
    상기 순환 신경망은,
    LSTM (Long short-term memory) 및 트랜스포머 (Transformer) 중 적어도 하나를 이용하여 학습이 수행된, 침입 탐지 방법.
  8. 제1항에 있어서,
    상기 대상 로그에 침입이 발생한 것으로 판단한 경우,
    상기 침입 발생 사실을 알리는 단계를 더 포함하는, 침입 탐지 방법.
  9. 프로세서(processor); 및
    상기 프로세서에 의해 수행되는 하나 이상의 명령이 저장된 메모리(memory)를 포함하고,
    상기 하나 이상의 명령은,
    인포테인먼트 시스템으로부터 제1 로그들을 수집하는 것;
    오픈 소스 기반의 소스 코드를 사용하여 제2 로그들을 수집하는 것;
    상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그 정규식들을 추출하는 것;
    상기 제1 로그들 가운데 어느 하나를 대상 로그로 선택하는 것;
    상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능한지 판단하는 것;
    상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능 것으로 판단한 경우, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것; 및
    상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것은 미리 학습이 수행된 인공 신경망에 의해 상기 대상 로그에 침입이 발생하였는지 판단하는 것을 포함하고,
    상기 정상 로그 정규식들을 추출하는 것은,
    상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그들을 통합하는 것;
    상기 정상 로그들을 기초로 정상 로그 패턴들을 획득하는 것; 및
    상기 정상 로그 패턴을 기초로 상기 정상 로그 정규식들을 추출하는 것을 포함하는, 침입 탐지 장치.
  10. 삭제
  11. 제9항에 있어서,
    상기 정상 로그들을 기초로 정상 로그 패턴들을 획득하는 것은,
    편집 거리(edit distance) 알고리즘을 통해 상기 정상 로그들 가운데 서로 인접한 정상 로그들의 유사도를 연산하는 것을 포함하는, 침입 탐지 장치.
  12. 제9항에 있어서,
    상기 정상 로그 정규식들은,
    상기 인포테인먼트 시스템에서 제공되는 서비스 별로 상이한, 침입 탐지 장치.
  13. 제9항에 있어서,
    상기 인공 신경망은,
    상기 인포테인먼트 시스템에서 제공되는 서비스 별로 상이한 학습 모델들을 포함하는, 침입 탐지 장치.
  14. 제9항에 있어서,
    상기 인공 신경망은,
    순환 신경망(Rrecurrent neural network, RNN)인, 침입 탐지 장치.
  15. 제14항에 있어서,
    상기 순환 신경망은,
    LSTM (Long short-term memory) 및 트랜스포머 (Transformer) 중 적어도 하나를 이용하여 학습이 수행된, 침입 탐지 장치.
  16. 제9항에 있어서,
    상기 대상 로그에 침입이 발생한 것으로 판단한 경우,
    상기 침입 발생 사실을 알리는 것을 더 포함하는, 침입 탐지 장치.
  17. 인포테인먼트 시스템 및 침입 탐지 장치를 포함하는 차량에 있어서,
    상기 침입 탐지 장치는,
    프로세서(processor); 및
    상기 프로세서에 의해 수행되는 하나 이상의 명령이 저장된 메모리(memory)를 포함하고,
    상기 하나 이상의 명령은,
    상기 인포테인먼트 시스템으로부터 제1 로그들을 수집하는 것;
    오픈 소스 기반의 소스 코드를 사용하여 제2 로그들을 수집하는 것;
    상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그 정규식들을 추출하는 것;
    상기 제1 로그들 가운데 어느 하나를 대상 로그로 선택하는 것;
    상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능한지 판단하는 것;
    상기 정상 로그 정규식들로부터 상기 대상 로그가 추출 가능 것으로 판단한 경우, 상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것; 및
    상기 대상 로그의 순서를 기초로 상기 대상 로그에 침입이 발생하였는지 판단하는 것은 미리 학습이 수행된 인공 신경망에 의해 상기 대상 로그에 침입이 발생하였는지 판단하는 것을 포함하고,
    상기 정상 로그 정규식들을 추출하는 것은,
    상기 제1 로그들 및 상기 제2 로그들을 기초로 정상 로그들을 통합하는 것;
    상기 정상 로그들을 기초로 정상 로그 패턴들을 획득하는 것; 및
    상기 정상 로그 패턴을 기초로 상기 정상 로그 정규식들을 추출하는 것을 포함하는, 차량.
  18. 삭제
  19. 제17항에 있어서,
    상기 정상 로그들을 기초로 정상 로그 패턴들을 획득하는 것은,
    편집 거리(edit distance) 알고리즘을 통해 상기 정상 로그들 가운데 서로 인접한 정상 로그들의 유사도를 연산하는 것을 포함하는, 차량.
  20. 제17항에 있어서,
    상기 정상 로그 정규식들은,
    상기 인포테인먼트 시스템에서 제공되는 서비스 별로 상이한, 차량.
  21. 제17항에 있어서,
    상기 인공 신경망은,
    상기 인포테인먼트 시스템에서 제공되는 서비스 별로 상이한 학습 모델들을 포함하는, 차량.
  22. 제17항에 있어서,
    상기 인공 신경망은,
    순환 신경망(recurrent neural network, RNN)인, 차량.
  23. 제22항에 있어서,
    상기 순환 신경망은,
    LSTM (Long short-term memory) 및 트랜스포머 (Transformer) 중 적어도 하나를 이용하여 학습이 수행된, 차량.
  24. 제17항에 있어서,
    상기 대상 로그에 침입이 발생한 것으로 판단한 경우,
    상기 침입 발생 사실을 알리는 것을 더 포함하는, 차량.
KR1020220005421A 2022-01-13 2022-01-13 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치 KR102618020B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220005421A KR102618020B1 (ko) 2022-01-13 2022-01-13 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220005421A KR102618020B1 (ko) 2022-01-13 2022-01-13 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치

Publications (3)

Publication Number Publication Date
KR20230109437A KR20230109437A (ko) 2023-07-20
KR102618020B1 true KR102618020B1 (ko) 2023-12-27
KR102618020B9 KR102618020B9 (ko) 2024-03-15

Family

ID=87426303

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220005421A KR102618020B1 (ko) 2022-01-13 2022-01-13 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102618020B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101621959B1 (ko) * 2015-12-23 2016-05-17 주식회사 모비젠 로그패턴추출장치, 로그패턴분석장치 및 그 방법
KR102046789B1 (ko) * 2019-04-05 2019-11-20 호서대학교 산학협력단 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2909065B1 (en) * 2012-10-17 2020-08-26 Tower-Sec Ltd. A device for detection and prevention of an attack on a vehicle

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101621959B1 (ko) * 2015-12-23 2016-05-17 주식회사 모비젠 로그패턴추출장치, 로그패턴분석장치 및 그 방법
KR102046789B1 (ko) * 2019-04-05 2019-11-20 호서대학교 산학협력단 웹 어플리케이션에 대한 딥러닝 기반의 침입탐지 방법, 시스템 및 컴퓨터 프로그램

Also Published As

Publication number Publication date
KR102618020B9 (ko) 2024-03-15
KR20230109437A (ko) 2023-07-20

Similar Documents

Publication Publication Date Title
CN110233849B (zh) 网络安全态势分析的方法及系统
CN109922032B (zh) 用于确定登录账户的风险的方法、装置、设备及存储介质
CN103164698B (zh) 文本指纹库生成方法及装置、文本指纹匹配方法及装置
US11790237B2 (en) Methods and apparatus to defend against adversarial machine learning
CN105577685A (zh) 云计算环境中的自主分析入侵检测方法及系统
CN111881289B (zh) 分类模型的训练方法、数据风险类别的检测方法及装置
KR102199467B1 (ko) 기계 학습을 위한 데이터 수집 방법
US20190362269A1 (en) Methods and apparatus to self-generate a multiple-output ensemble model defense against adversarial attacks
CN111740946B (zh) Webshell报文的检测方法及装置
CN110263538A (zh) 一种基于系统行为序列的恶意代码检测方法
CN111773732A (zh) 目标游戏用户的检测方法、装置及设备
CN111600919A (zh) 基于人工智能的web检测方法和装置
KR20200064007A (ko) 정답을 찾는 질의 응답 시스템 및 그의 훈련 방법
CN110874471B (zh) 保护隐私安全的神经网络模型的训练方法和装置
CN111508588B (zh) 训练装置、训练方法和计算机可读记录介质
KR20190143758A (ko) 심층 신경망을 이용한 사이버 위협 탐지 방법 및 장치
CN111586071A (zh) 一种基于循环神经网络模型的加密攻击检测方法及装置
CN111144546A (zh) 评分方法、装置、电子设备及存储介质
KR102618020B1 (ko) 차량용 인포테인먼트 시스템 네트워크 침입 탐지 방법 및 장치
CN112817877A (zh) 异常脚本检测方法、装置、计算机设备和存储介质
CN113593546B (zh) 终端设备唤醒方法和装置、存储介质及电子装置
CN114943077A (zh) 基于深度强化学习的恶意pdf文件对抗样本生成方法
CN110602709B (zh) 可穿戴式设备的网络数据安全方法、装置及存储介质
CN114201199A (zh) 基于信息安全大数据的防护升级方法及信息安全系统
Purves Conventionality and causality in lewis-type evolutionary prediction games

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]