자동차/논문

Machine Learning을 이용한 차량내부 네트워크용 침입탐지시스템 연구 동향

삼전동해커 2023. 2. 14. 15:13

출처 : https://scholar.google.co.kr/citations?view_op=view_citation&hl=en&user=329wHz0AAAAJ&cstart=20&pagesize=80&sortby=pubdate&citation_for_view=329wHz0AAAAJ:J-ba04ztB30C

 

1.서론

모든 차량에 대해 차량사이버보안관리체계(CSMS)가 필요하다. 수출용 차량에 이를 충족하기 위해 보안의 3대 프로세스 Prevention, Detection, Response가 있어야한다.

 

Prevention은 차량용 Firewall, HSM(Hardware Security Module), 시큐어 코딩을 통해 달성할 수 있다.

Detection은 차량용 IDS, 차량보안관제센터(VSOC)를 통해 Detection이 가능하다.

Response는 OTA를 통한 취약점 패치, 로그생성으로 달성할 수 있다.

 

차량용 네트워크는 일반 네트워크와 같이 포트나 프로토콜별 설정이 불가능하고 스위치에서 인터페이스나 VLAN으로 바로 전송한다. 따라서 IDS와 같은 Detection수단이 필수적이다.

 

본 논문에서는 차량용 IDS가 사용하고 있는 알고리즘 동향에 대해 살펴보고 미래에는 IDS가 어떻게 발전할지 살펴본다.

 

2. 차량용 침입탐지  시스템

2.1 In-vehicle IDS 아키텍쳐

차량용 IDS는 차량 내부 네트워크(In-Vehicle Network)를 탐지하는 In-vehicle IDS와 외부 네트워크와의 소통과정을 탐지하는 external IDS가 있다.

In-vehicle의 경우엔 다음과 같은 아키텍처로 동작한다.

외부에서 탐지용 rule set을 받아와 업데이트하고 CAN과 같은 내부 네트워크에서 오가는 트래픽을 캡쳐해 탐지한다.

 

2.2 Attack Identification

In-vehicle IDS는 다음과 같은 IVN의 게이트웨이에 위치해 위변조된 메세지를 탐지한다.

CAN의 경우 bus형태로 브로드캐스트하는 방식이고, time stamp와 CAN ID, 메세지 페이로드 값 정보를 이용해 제어를 한다.

따라서 일반적인 메세지의 source ip, port 등의 정보가 없어 탐지를 해도 어디에서 출발된 메세지인지 특정이 어렵다.

이를 해결하기 위해 Viden: Attacker identification on in-vehicle networks. 논문과 Voltageids: Low-level communication characteristics for automotive intrusion detection system. 논문에서는 ECU 노드의 시그널 및 전자기적인 특징을 학습해 공격 노드를 식별하는 방법을 제안했다.

 

2.3 CAN 고유의 특성 및 전통적인 분류를 이용한 탐지 기법

각 회사에서 생산된 차종 별로 사용하는 CAN ID는 정의와 역할이 모두 다른 의미를 가지고 있고, 이 정보(DBC)가 노출되면 해커에게 유용한 정보가 될 수 있다. 그렇기 때문에, IDS를 개발하는 경우엔 실제 차량에서 추출한 CAN 공격 트래픽 데이터셋과 직접 차량을 확보하여 역공학으로 분석하거나, openDBC 프로젝트를 참고해 CAN message 정보를 활용한다.

 

이 방법으로 모든 차량의 CAN ID 정보를 획득하지 못해도 CAN bus의 고유한 특성을 이용해 탐지가 가능하다.

CAN message는 각 ID별로 고유의 간격(interval)과 빈도(frequency)를 유지하는 특성이 있다. 그리고 CAN ID가 낮을수록 전송 우선순위가 높다. 공격에 의해 주입된 CAN message의 경우 ID 고유의 간격과 빈도가 깨지게 된다. 따라서 interval과 frequency는 주요한 feature가 된다.

 

 또한 CAN ID는 단일한 ID 자체가 특정 작동을 의미할 수 있지만 여러 메세지들이 모여 특정 행동을 유발할 수 있다.

이런 특징을 이용해 정상 상태의 CAN ID들의 상관관계를 feature로하고, sequence mining을 통해 항상 같이 출현하는 CAN ID들의 관계 파악도 feature로 사용할 수 있다.

 

Cosine similarity based anomaly detection methodology for the CAN bus 논문에서는 cosine similarity를 기반으로 자기유사도를 측정하여 이상징후를 탐지한 알고리즘의 예이다. 즉, CAN ID는 반복적인 자기유사도를 가지고 있다는 특징이 있다.

 

여기까지 interval, frequency, CAN ID 별 상관관계, sequence, 자기유사도 총 5개의 feature를 언급했고 이 외에도 메세지 분포의 entropy값, remote frame을 전송 시 응답으로 돌아오은 메세지의 offset값, 전송 타이밍에 있어서의 clock skew 정도 등을 feature로 SVM,MLP, RF같은 분류기로 분류할 수 있다.

 

2.4 Deep Learning을 이용한 탐지기법

차량이 고급화 하면서 CAN bus의 개수도 증가하고, ECU 노드 개수도 늘어남에 따라 탐지 모델 또한 고도화 할 필요성이 있다.

딥러닝 기술 DCNN을 이용한 논문 In-vehicle network intrusion detection using deep convolutional neural network과 선행 event window와 다음 event window가 상관관계를 가지고 있다는 점에 착안해 LSTM모델 (CAN-ADF: The controller area network attack detection framework)과 RNN 모델(CANTransfer: transfer learning based intrusion detection on a controller area network using convolutional LSTM network)에 관한 논문이 있다.

또한 현재까지 확보한 공격 트래픽은 소수이기 때문에 정상 트래픽과 잠재 공격 트래픽을 GAN을 이용해 만드는 모델도 있다.(Gids: Gan based intrusion detection system for in-vehicle network)

딥러닝은 높은 정확도를 유지할 수 있지만 차량 내부의 컴퓨터만으론 파워가 충분하지 않다. 따라서 CITS의 클라우드 서버와 자동차 내부의 IDS가 협업할 필요성이 있다.

 

3. 차량 보안을 위한 데이터 셋

머신러닝 모델을 개발하기 위해선 데이터 셋 확보가 우선적이다. 실제 차량에서 추출한 데이터 셋과 시뮬레이션에 의해 만들어진 데이터 셋의 가치는 차이가 있다. 공격 시나리오를 수립한 뒤 실제 공격을 수행하여 정상 상태에서의 트래픽과 공격 상태에서의 트래픽을 타임스탬프, 공격기법 레이블 정보와 함께 보존해야 한다.

현재 자동차 회사들은 static한 방법으로 rule set를 지정해 탐지를 한다. 하지만 이 방법은 알려지지 않은 공격에 대한 탐지 와 단순 임계치에 대한 if then rule만으로는 복합공격에 대한 탐지와 대응이 불가능하다.

데이터 셋을 제공하고 탐지모델을 개발하는 대회에서는 주로 딥러닝 모델을 개발한 팀이 상위권에 들었다.

 

4. 근 미래의 머신러닝능 적용한 차량보안 시스템

현재 개발된 Bus 방식의 Message ID 기반 방식의 IDS는 CAN말고도 다른 산업제어시스템에서도 사용이 가능하다.

드론의 프로토콜이나 철도제어, 공장로봇제어에도 이용할 수 있다.

이 후엔 V2X에서 유입되는 정보들을 동시에 처리해 탐지할 수 있는 모델이 필요하다.

 

대응 또한 다양한 방법이 도입될 수 있다.

탐지된 공격을 인접한 차량에 V2V로 전달해 ITS 중앙 서버를 거치지 않고 직접 전달하거나, 내 차량이 공격을 받아 통제 불능 상태일 경우 RSU에 현재 내 상태를 전달하여 인접 보행자에 V2P 통신으로 전달하는 것이 가능하다.