본문바로가기
  • BUSINESS
  • PRODUCT
  • CUSTOMER
  • COMMUNITY

제 목 자동차 사이버보안 위협 및 연구 동향
등록일 2021-10-22
첨부파일



<사진 출처 : www.freepik.com>

I. 자동차 사이버보안 위협

운전자의 편의성 및 안전성 향상을 위하여, 과거 기계적으로 제어되던 차량의 많은 기능들이 최근에는 전자제어장치라 불리는 소형 컴퓨터에 의하여 전자적으로 제어되고 있다. 차량의 기능을 전자적으로 제 어함으로써 얻어지는 이점들 중 한 가지 예를 들어보면, 운전자가 브레이크를 밟지 못하는 상황에서도 충돌이 예상되는 상황이라면 차량이 자동적으로 브레이크 기능을 작동시켜 사고를 예방하게 된다. 이는 최근 AI 기술의 대표 서비스 중 하나인 자율주행 자동차 기술과도 연결된다고 말할 수 있겠다. 고급 차 량의 경우에는 약 100여개의 전자제어장치가 탑재되어 있다고 알려져 있으며, 이러한 많은 전자제어장 치는 운전자의 편의성 및 안전성 향상을 위해 차량에 적용되는 기술도 매우 많다는 것을 의미한다. 테슬 라 차량 같은 경우에는 여러 개의 저성능 전자제어장치를 하나의 고성능 기기로 대체하는 통합 전자제 어장치를 탑재하고 있기도 한다.

자동차 내부에서 여러 개의 전자제어장치는 하나의 네트워크를 형성하여 센서 정보나 제어 명령어를 서로 송·수신한다. 이때, 주로 사용되는 통신 프로토콜이 1980년대에 Bosch社에서 개발한 CAN(Controller Area Network) 통신 프로토콜이다. 상당히 오래전에 개발되었지만, CAN 통신 프로토 콜은 매우 간단한 구조로 설계되었기 때문에 통신 시에 에러가 거의 발생하지 않고 높은 통신 안정성을 제공한다. 오동작이 발생한다면, 사람의 생명까지 위협할 수 있는 자동차 환경에서는 통신 안정성이 매 우 중요한 조건이다. 따라서 차량 제어와 관련된 핵심 파트인 샤시(Chassis) 기능 제어를 위한 네트워크 통신에는 CAN 통신 프로토콜이 대부분의 차량에 적용되고 있다. 하지만 자동차의 많은 기능이 전자적으로 제어됨에 따라, 이를 타겟으로 하는 차량 사이버공격에 대한 위협도 함께 증가하고 있다. 실제로 2015년도에 사전에 어떠한 조작도 하지 않은 차량을 대상으로 원격 에서 해당 차량을 제어하는 사이버공격이 시연되기도 하였다 [3]. 유엔유럽경제위원회(UNECE)에서는 자 동차 사이버 보안 요구사항에 관한 내용을 법규로 지정하였고, 2022년 7월 유럽에서 생산되는 모든 차 량에 자동차 사이버 보안을 위한 기술적 조치가 의무화되어야 한다고 규정하였다. 이로 인해, 자동차 사 이버보안은 산업계와 학계 모두 실제 차량에 적용 가능한 자동차 보안기술 개발에 집중하고 있다. 차량 사이버공격에 주된 원인은 앞서 설명한 CAN 통신 프로토콜에 암호 알고리즘을 적용하기 어렵다는데 있 다. CAN 통신 프로토콜의 통신 속도는 약 500kbps로써 암호 알고리즘이 적용되어 MAC(Message Authentication Code)와 같은 추가적인 데이터가 전송되기에 통신 속도가 매우 제한된다. 만약 암호 알고리즘을 적용하여 추가적인 데이터 전송을 하게 된다면, 차량을 제어하기 위한 데이터들의 전송 딜레 이가 발생하게 되어 결과적으로 차량의 안정성을 훼손하게 될 것이다. 과거에는 자동차 내부 네트워크가 폐쇄된 환경으로 외부 공격자가 임의로 Access하여 악의적인 제어 메시지를 전송하지 못 할 것이라 생 각하여 왔다. 하지만, 최근 차량 정비 목적이거나 텔레매틱스 서비스를 위해 외부에서 차량 내부 네트워 크에 Access 할 수 있는 Access Point들이 많이 등장하고 있다. 대부분의 차량 사이버해킹 사례는 이러 한 Access Point의 접근제어를 우회하여 차량 내부 네트워크에 악의적인 제어 메시지를 전송하는 방법 들이다. 본고에서는 자동차 사이버 공격 방법과 이에 대한 대응방법인 차량용 침입탐지 기술 (Automotive Intrusion Detection System)에 대하여 이야기 하겠다.

II. CAN 통신 프로토콜

1. 전자제어장치

운전자와 탑승자의 편의성(Convenience)과 안전성(Safety)을 위하여, 과거에는 기계적으로 제어되던 다수의 차량 기능들이 전자적으로 제어되고 있다. 자동차의 전자적 제어를 위하여 전자제어장치 (Electronic Control Unit, ECU)라 불리는 여러 개의 임베디드 컴퓨터(Embedded Computer)가 차량 에 탑재되고 있다. 최초의 ECU는 Engine Control Unit으로 불렸으며 엔진을 전자적으로 제어하여 차 량의 배출가스를 조절하기 위해 개발되었는데, 최근에는 엔진뿐만 아니라 많은 부분들이 ECU를 이용하 여 전자적으로 제어하고 있다. 현재 판매되고 있는 고급차량의 경우 약 100개의 ECU들이 차량에 탑재되어 동작하는 것으로 알려져 있다. 이처럼 여러 개의 ECU들은 자신의 상태정보를 다른 ECU들과 공유 하기 위해, CAN(Controller Area Network)이라 불리는 통신 프로토콜을 이용하여 네트워크를 구성하 고 있다. [그림 1]은 각 기능을 담당하고 있는 ECU들이 CAN 프로토콜을 이용하여 네트워크를 구성하 고 있는 개념을 보여주고 있다. CAN 프로토콜은 1986년 Bosch 社에 의하여 개발되었다 [5]. CAN 프로토콜은 네트워크를 버스(Bus Topology) 형태로 구성하여 필요한 케이블의 양을 최소화하여 차량의 전체 중량을 줄일 수 있는 장점을 갖고 있고, 통신 시 에러가 적은 높은 신뢰성(Reliability)으로 인하여 현재까지 모든 차량의 자동차 내부 네트워크를 위한 통신 프로토콜로 사용되고 있다.

2. CAN 프로토콜

CAN 프로토콜은 1986년 개발되었지만, 차량 내부 네트워크를 구성하기에 적합한 장점으로 인해 현 재까지 널리 사용되고 있다. 하지만 개발 당시에는 사이버보안 위협에 대한 개념조차 제대로 정립되지 않은 시기였기 때문에, 현재 CAN 프로토콜은 여러 사이버보안 위협에 그대로 노출된 채 자동차에 적용 되고 있다. 최근 발표되고 있는 자동차 사이버보안 위협 대부분은 이러한 CAN 프로토콜의 보안 취약점 을 이용하고 있다. 이번 절에서는 자동차 사이버보안 위협과 연관되어 있는 CAN 프로토콜의 동작 원리 에 대하여 알아보도록 하겠다.

3. Bit Coding

CAN 프로토콜은 전기적 신호를 이용하여 0 또는 1 비트를 표현하기 위해, NRZ(Non Return to Zero) 인코딩 방법을 사용한다. CAN 프로토콜은 CAN-H와 CAN-L라 불리는 2개의 선을 이용하여 통신 을 수행하는데, 2개의 선의 전압차이 없는 경우에는 비트 1을 표현하고, 2개의 선의 약 2.5V 전압차가 있는 경우에는 비트 0을 표현한다. CAN 프로토콜에서는 비트 1을 Recessive 비트라 하며, 비트 0을 Dominant 비트라고도 한다. [그림 2]는 CAN 데이터 프레임에서 각 비트를 표현하기 위해서 CAN-H와 CAN-L 파일의 전압 변화를 보여주고 있다.

4. 데이터 프레임

CAN 프로토콜은 4가지 CAN 프레임 i) Data Frame, ii) Remote Frame, iii) Error Frame, iv) Overload Frame을 정의하고 있다. 이중 Overload 프레임은 현재 사용되지 않고 있으며, ECU는 데이 터 프레임을 사용하여 메시지를 전송하고 있다. [표 1]은 데이터 프레임에 정의되어 있는 필드와 그에 대한 설명을 보여주고 있다. 데이터 프레임에서 눈여겨 볼 필드로는 ID(Identifier), DLC, Data filed가 있다. ID 필드는 해당 데이터 프레임의 전송 우선순위를 의미하며, 하나의 ECU에게 고유하게 할당되기 때문에, 같은 ID를 갖는 메시지가 동시에 CAN Bus에 전송되는 일이 없으며, 만약 그런 경우가 발생하 면 에러로 간주하여 에러 핸들링 절차를 진행한다. 데이터 프레임의 데이터 필드는 0~8 바이트로 가변 길이를 갖고 이를 DLC 필드에 표시한다. 데이터 필드에는 ECU가 실제로 자신의 상태정보나 차량의 제 어를 요청하는 정보를 포함하고 있다.




 

<사진 출처 : www.freepik.com>

III. 자동차 내부 네트워크 해킹 사례

자동차 사이버보안 취약점은 산업계보다는 학계를 중심으로 연구되어 발표되고 있으며 산업계의 경우 자동차 제조회사에서 내부적인 연구 및 테스트를 진행하고 점검하는 것으로 알려져 있지만 외부로 공개 는 하지 않는 것이 일반적이다. 이번 장에서는 보안 분야의 유명 학술대회를 중심으로 발표된 자동차 해 킹 사례에 대하여 설명하겠다. 시기적으로 다소 오래된 연구결과이기는 하지만, 자동차 내부 네트워크 보안기술 개발들은 대부분 이후 설명할 자동차 사이버 공격들에 대하여 대응하기 위한 기술들로 개발되 고 있다. 2010년 IEEE S&P 학술대회에 워싱턴 대학의 Koscher et al. 연구팀은 세계 최초 자동차 사이버보안 위협에 대한 연구 결과를 발표하였다. 자동차 진단을 위해 표준 인터페이스 지정된 OBD2(On-board diagnostics) 포트로 인해 자동차 내부 네트워크의 접근이 용이해 졌으며, 이를 통해 자동차 내부 네트 워크의 CAN 통신 Trace를 분석할 수 있었다. 분석을 통해 차량을 제어할 수 있는 메시지들을 발견하여 이를 다시 자동차 내부 네트워크에 주입함으로써 자동차를 제어하는데 성공하였다. ECU가 본격적으로 차량에 탑재되기 시작한 초기인 점을 감안하면, Koscher et al.의 연구 결과는 매우 시기 적절하였고, 현재 자동차 사이버보안 기술 연구의 초석이 되었다고 말할 수 있다.

Miller and Valasek의 2013년 연구결과는 자동차 내부 네트워크에 접근을 한 상태에서 CAN 메시지 를 주입함으로써 차량을 제어할 수 있음을 의미하였다. 따라서 도로위의 차량이 해당 연구결과에 적용된 다고 보기에는 어려움이 있었다. 그러나 2015년 Millier and Valasek은 Black Hat USA 학술대회에서 사전 조작이 되지 않은 차량을 대상으로 원격에서 자동차 내부 네트워크에 접근하여 차량을 제어할 수 있음을 발표하였다. 이는 차량에 탑재되어 있는 텔레매틱스 디바이스의 취약점을 이용한 연구결과이다. 해당 차량의 텔레매틱스 디바이스의 IP 주소를 이용하여 포트 스캐닝을 수행하였고 취약점이 존재하는 프로세스에 접속하였다. 텔레매틱스 디바이스는 일반적으로 자동차 내부 네트워크에 연결되어 있기 때문 에, 해당 텔레매틱스 디바이스를 완전히 장악한 이후에는 2013년도 연구결과와 유사하게 차량을 제어할 수 있는 CAN 메시지를 주입하여 차량 제어에 성공하였다. 사전 조작되지 않은 차량을 원격에서 임의의 제어할 수 있다는 점에서 기존 자동차 사이버보안 취약점 연구결과와 달리 해당 연구결과가 발표된 이 후에 많은 차량 제조회사에 해당 문제를 적극적으로 해결하기 위해 대응하였다.

앞서 설명한 자동차 사이버보안 취약점 연구와 달리, Cho and Shin은 CAN 프로토콜의 에러 핸들링 방법을 악용하여 ECU를 CAN 통신에서 bus-off 되도록 하는 공격 방법을 2016년 ACM CCS 학술대 회에 발표하였다. CAN 프로토콜을 이용하는 ECU들은 서로 같은 아이디를 공유하여 메시지를 보내지 않는 다는 가정 하에 서로 통신한다. 하나의 아이디는 오직 하나의 ECU에만 할당되어 사용된다. 따라서 같은 아이디를 사용하는 메시지가 CAN Bus에서 동시에 발견되면 이는 에러 상황을 간주하게 되고, 이 러한 현상이 일정 횟수 이상 발생하게 되면 해당 ECU는 일정시간 통신에서 제외되도록 CAN 프로토콜 이 디자인 되어 있다. ECU들은 Error Counter를 관리하여 자신이 전송 시 에러가 발생하면 Error Counter를 증가하고 해당 Error Counter가 256이 넘어가게 되면 일정 시간동안 통신을 중단한다. Cho and Shin의 연구결과는 의도적으로 타겟 ECU에 할당된 아이디와 같은 아이디 메시지를 전송하여 타겟 ECU의 메시지 전송을 의도적으로 멈추게 만드는 공격 방법이다



<사진 출처 : www.freepik.com>

IV. 차량용 침입탐지 기술

앞서 설명한 자동차 사이버보안 취약점은 CAN 통신 프로토콜이 적용된 자동차 내부 네트워크를 대상 으로 하는 차량 해킹 사례라 말할 수 있다. 자동차 사이버보안 취약점은 학계를 중심으로 많은 연구결과 가 발표되고 있는 반면, 자동차 보안 기술 연구는 학계와 산업계 모두 활발한 연구를 진행하고 있다. CAN 통신 프로토콜에 암호 알고리즘을 적용하는 것이 매우 제한되기 때문에, 대부분 자동차 보안 기술 은 차량용 침입탐지 시스템 개발에 관심을 갖고 있다. CAN 통신 Traffic을 분석하여 침입 여부를 탐지 하는 것을 말한다. CAN 통신 Traffic에서 정상 상태와 비정상 상태를 구분 지을 수 있는 특정 패턴을 발견하여 이를 실시간으로 계속 모니터링 하도록 설계되어 있다. 아래에는 가장 대표적인 차량용 침입탐 지 시스템, Automotive IDS 기술에 대하여 설명하겠다.

Michigan 대학의 Cho and Shin 연구팀은 자동차 내부 네트워크에서 ECU가 CAN 통신 프로토콜을 이용하여 주기적으로 메시지를 전송할 때, ECU의 Clock 생성기의 하드웨어 특성이 미세하게 다르다는 사실을 발견하였다. 이는 ECU 뿐만 아니라, 다른 하드웨어 장치에서도 동일한 상황이 발생하여 Time Synchronization에 문제가 발생하는데 Cho and Shin 연구팀은 이러한 특성을 Automotive IDS 기술 개발에 활용하였다. 자동차 내부 네트워크의 여러 ECU들은 항상 자신들의 Unique한 clock으로 Time을 Counting하기 때문에, 동일한 주기로 메시지를 전송하도록 설정되어 있다 하더라도 미세하게 Clock Offset이 발생하게 된다. 이러한 Clock Offset을 계속 누적하여 그래프를 그려보면, [그림 6]과 같은 모 습을 보여준다. 각각의 ECU가 서로 다른 Clock Offset이 존재하기 때문에 이를 계속해서 누적해 주면 선형 그래프가 그려지고 각각의 선형 그래프의 기울기가 달라지는 것을 볼 수 있으며, 이러한 기울기를 Clock Skew라 부른다. 이러한 특성을 이용하여 자동차 내부 네트워크에서 주기적으로 메시지를 전송할 때, 각각의 Clock Skew를 계산하였을 때 유일한 Skew 값이 계산된다. 따라서 Clock Skew를 계산함으로써 ECU Fingerprinting이 가능해지고 만약 공격자가 악의적인 메시지를 전송하게 되면 해당 ECU도 Fingerprinting 할 수 있다. 이러한 Fingerprinting 기술을 이용하여 자동차 내부 네트워크의 CAN Traffic의 정상 또는 비정상 여부를 판단하는 기술을 개발하였다.

V. 결 론

본고에서는 자동차 사이버보안 위협과 그에 대한 대응방안으로 차량용 침입탐지 기술인 Automotive IDS 기술 개발 연구 동향에 대하여 알아보았다. 자동차 사이버보안 취약점 연구의 경우에는 학계의 연구 결과만을 다루었다. 산업계에서는 내부적으로 취약점 연구를 수행하기는 하지만, 해당 내용을 외부에 공 개하지 않는 것이 일반적이기 때문에 학계의 연구 결과만을 확인할 수 있었다. Automotive IDS 기술 개 발의 경우에는 학계뿐만 아니라 산업계에서도 활발한 연구를 진행하고 있다. 이는 UNECE에서 자동차 사 이버 보안 요구사항에 관한 내용을 법규로 지정하고, 2022년 7월 유럽에서 생산되는 모든 차량에 자동 차 사이버 보안을 위한 기술적 조치가 의무화되었기 때문에 차량 제조회사와 관련 산업계에서 발 빠르게 대처하고 있는 것이 한 가지 이유이다. 게다가, 다른 보안 분야에서 쉽게 발견되는 산업계와 학계의 연구 차별성과 달리, 자동차 사이버보안 분야에서는 보안기술 개발의 시급성으로 인하여 산업계와 학계의 연구 목표가 매우 유사하고 학계에서도 바로 차량에 탑재 가능한 기술 연구를 수행하고 있다는 사실을 알 수 있었다. 자율주행자동차와 같이 자동차와 관련된 기술개발은 향후에도 계속 발전할 것이 분명하기 때문에 이에 대한 보안 위협 분석과 보안기술 개발이 반드시 함께 연구되어야 할 것이다.

<자료 출처 : 한국인터넷 진흥원 KISA Library 최원석/ 한성대학교 교수 >

이 전 다 음
목록