UNECE UNR.155 차량 사이버 보안 규제 대응을 위한 공격 시나리오 도출
Copyright Ⓒ 2021 KSAE / 189-03
This is an Open-Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License(http://creativecommons.org/licenses/by-nc/3.0) which permits unrestricted non-commercial use, distribution, and reproduction in any medium provided the original work is properly cited.
Abstract
As the global automotive market is expected to grow more rapidly, concerns for security attacks or vulnerabilities are increasing as well. In order to prevent these risks, UNECE UNR 155 has been discussed, which is one of the influential automotive cyber security regulations. However, many global OEMs and parts suppliers are having difficulty understanding the concerned automotive attack surfaces and threats or vulnerabilities to satisfy the requirements of UNR 155. In this paper, we classified major automotive attack surfaces into four categories according to communication range and purpose. Furthermore, we derived the possible attack scenarios with the attack surface, precondition, impact, and feasibility based on UNR 155 Annex 5 - Part A.
Keywords:
Cybersecurity, Automotive cybersecurity regulation, UNECE UNR.155, Threat, Vulnerability, Attack scenario키워드:
사이버보안, 차량 사이버보안 규제, 유엔 유럽 경제 위원회의 자동차 사이버보안 국제기준, 위협, 취약점, 공격 시나리오1. 서 론
자율주행 차량 판매시장은 핵심기술인 LiDAR, 초음파 센서 및 AI컴퓨팅 기술 발전에 힘입어 점차 확대되고 있다. 글로벌 시장조사기관 IDTechEx에 따르면, 2040년 글로벌 자율주행 모빌리티 시장규모는 2조 5천억 달러에 이른다. 자율주행 시스템의 주요 부품시장 규모 또한 1,730억 달러로 대폭 성장할 것으로 예상된다.1) 한편, 이러한 빠른 성장 속도와 함께, 운전자의 주행 안전 및 프라이버시에 대한 우려도 커지고 있다. 자율주행을 위해 더 많은 전자 제어시스템이 탑재되고, 다양한 외부 디바이스들과 실시간 네트워크를 형성할수록, 차량 내∙외부 위협 범위는 확대되기 때문이다.
이에 주요 국제기구 및 국가들은 자율주행 보안 규제 및 가이드라인을 논의하고 있다. 그중 UNECE UNR.155는 56개 회원국을 대상으로 하는 국제 차량 사이버 보안 규제이다. 규제를 어길 시 실질적인 무역 장벽으로 작용할 수 있는 만큼, 철저한 대비가 필요하다. 하지만 제시된 위협 범위와 내용이 구체적이지 않아, 글로벌 OEM 및 부품사는 자율주행 보안 위협 분석 및 국제 규제 대비에 어려움을 느끼고 있다. 이러한 어려움을 해소하고자, 본 논문은 UNECE UNR.155 규제에 명시되어 있는 차량 위협 범위를 기반으로 위협을 분류하고 공격 시나리오를 도출 및 분석하고자 한다.
본 논문의 구성은 다음과 같다. 제2장에서는 차량 사이버 보안 규제 및 표준 동향을 살펴보고, 제3장에서는 차량 사이버 보안 연구 동향과 Automotive attack surface를 분류한다. 제4장에서는 UNECE UNR.155에 정의된 위협에 대한 공격 시나리오를 도출하고 실현 가능성을 분석한 뒤, 제5장에서 공격 시나리오에 대한 시사점을 논의한다.
2. 차량 사이버 보안 규제 및 표준 동향
2.1 UNECE UNR.155 차량 사이버 보안 규제
WP.29(자동차 국제기준조화기구)는 2020년 6월 Revised 버전의 Cyber security regulation을 발표하였다. 이 규제는 차량 사이버보안 위협 관리를 위해 CSMS(Cyber Security Management System) 인증 체계를 제시하고 있다. CSMS의 주요 내용은 조직 내 보안 거버넌스 체계화와 차량 라이프 사이클 별 사이버보안 요소 추가이다.2) 규제에 첨부된 Annex 5에선 자율주행 차량에 대한 위협과 대응방안을 설명하고 있다.
2.2 ISO/SAE 21434
ISO(국제 표준화 기구)와 SAE(미국 자동차공학회)는 2020년 2월 Draft 버전의 ISO/SAE 21434: Road Vehicles - Cybersecurity Engineering을 발표하였다. UNECE UNR.155의 Cyber security regulation에서 이 표준 문서를 참조하고 있으며, 2021년에 최종 버전이 나올 예정이다. 이 문서는 도로 차량의 사이버보안 문화를 조성하고 차량 라이프 사이클 전반에 걸친 사이버 보안 위험을 관리하는 것을 목적으로 한다.3)
2.3 SAE J3061 Cybersecurity Guidebook for Cyber-Physical Vehicle Systems
SAE(미국 자동차 기술자 협회)는 2016년 1월 J3061 Cybersecurity Best Practices for Modern Vehicles를 발표하였다. 내용에 따르면, 자동차 개발 라이프 사이클의 주요 4단계는 컨셉 및 디자인, 개발 및 검증, 사고 대응, 폐차로 나누어진다. 각 단계별로 특성에 맞는 사이버보안 관리 프로세스가 지속적으로 운영되어야 한다. 이 프로세스는 사내 사이버보안 문화 육성, 컴플라이언스 메커니즘 형성, 내·외부 통신 채널 및 공급체인 보안, 엔지니어 보안 교육 등을 포함한다. 또한, Appendices를 통해 잠재적 위협 분석을 위한 Attack tree 활용 방법론을 설명하고 있다.4)
3. Automotive Attack Surface
3.1 차량 사이버 보안 연구
차량 사이버 보안에 대한 연구 활동은 차량에 탑재되는 ECU 및 센서, 소프트웨어의 발전에 따라 활발히 이루어지고 있다. 최근 Elsevier에 실린 Kyunggon Kim et al.의 “Cybersecurity for autonomous vehicles: Review of attacks and defense”에 따르면, 2008년부터 2019년까지 출판된 관련 논문들이 151개에 이른다. 해당 논문 분야는 자율제어 및 자율주행시스템, 보안 아키텍처, 침입탐지시스템부터 V2X(Vehicle to Everyting) 통신, 빅데이터를 활용한 AI기술 접목까지 점차 확대되고 있다.5)
이렇게 차량 사이버 보안 영역이 넓어지면서, 차량에 존재하는 Attack surface 또한 크게 증가하고 있다. 이에 따라 3.2에서는 차량 내·외부에 존재하는 Attack surface를 전체적으로 분석한 뒤, 통신 범위와 목적에 따라 분류하고자 한다. 이후 4장에서는 3.2에서 분류된 Attack surface를 바탕으로, UNECE UNR.155에서 명시하고 있는 위협을 분석한 뒤 관련된 공격시나리오를 도출하고자 한다.
3.2 Automotive Attack Surface 분류
차량 사이버 보안 위협 인터페이스는 통신 범위와 목적에 따라 Table 1과 같이 분류될 수 있다.
먼저, 내부 통신 인터페이스 중에는 CAN 통신이 가장 활용도가 높고 최근 자율주행 및 엔터테인먼트 기능이 고도화됨에 따라 고속 Ethernet 사용률이 증가하고 있다.
외부 통신 인터페이스 중에는 RKE(Remote Keyless Entry System)을 위한 LF/RF 통신과 RFID가 있다. 또한 차량 외부 정보를 수집하는 인지 센서로 Radar, Ultrasonic Sensor, Camera, LiDAR가 있다. 이들은 실시간으로 수집한 정보를 차량 내 융합 센서에 전달하여 최종 주행 판단에 영향을 준다. 이외에 V2V, V2X, V2I 통신을 위해 UWB, WAVE, DSRC, RADIO/RDS, VANETs가 사용된다.
데이터 전송 메소드에는 Mirror link, Android auto, Car play, Car life 기능이 활용되며, 진단기 등을 위한 OBD-II 포트가 있다.
디버그 포트에는 디버깅 용도로 사용되는 ADB, UART, JTAG 등이 있다.
4. 차량 위협에 따른 공격 시나리오 제안
UNR.155의 Annex 5 Part A에 명시되어 있다. High level descriptions of vulnerability/threat 관점에서 총 7개로 나누어져 있다. 본 논문에서는 Table 2의 4.3.1과 4.3.4를 제외한 5개의 High level descriptions of vulnerability/threat을 다룬다. 또한, Sub-level에 대한 유사한 항목을 재분류한 뒤 세부 공격 시나리오를 도출하였다.
4.1 통신 채널을 이용한 차량공격
차량에 존재하는 통신 채널은 대표적으로 현재 위치를 파악하기 위한 GNSS가 존재한다. 따라서 해당되는 Attack surface는 Table 1의 Internal communication interface와 External communication interface이다. 해당 Attack surface를 기준으로 UNR.155에 명시되어 있는 위협에 대한 세부 공격 시나리오를 도출하였다.
블루투스 및 무선통신 메시지 스푸핑은 블루투스 계층에 암호화 및 인증기능이 미적용되었을 때, 또는 기페어링된 디바이스의 리커넥션시 인증이 선택사항일 때6) 가능한 공격이다. 공격자는 정상 디바이스로 위장하여 인증기능을 우회한 뒤, 차량과 송∙수신하는 각종 정보를 도청할 수 있다. 이 정보에는 사용자의 주소록 또는 차량 내 대화 및 통화 기록 등 사생활 정보가 포함된다. 도청된 데이터를 기반으로 통신 패킷을 위∙변조하여 차량 제어나 오동작을 일으킬 수 있다.7)
GNSS 메시지 스푸핑의 공격 가능 조건으로는 먼저 TCU(Telematics Control Unit) 내 GNSS 수신기에 가짜 GNSS 송신기를 인증하는 기능이 없어야 한다. 또한 수신한 GNSS 정보의 오차 범위를 검증하지 않아야 한다. 이때 공격자는 실제 위성 수와 동일한 개수의 가짜 위성 송신기를 만들어 실제와 동일한 PRN(Pseudo Random Noise) 코드 시퀀스 및 신호 주기를 가진 가짜 신호를 송신할 수 있다. 이를 통해 해당 차량의 현재 위치 및 시간 정보를 조작할 수 있다. 이러한 가짜 정보는 ADAS(Advanced Driver Assistance Systems)의 자율주행 판단의 근거가 되어, 주행 안전을 위협할 수 있다. 특히, GNSS 스푸핑은 탐지가 어려워 위협의 정도가 커질 수 있다.8)
시빌 공격은 LTE와 같은 V2V 통신 프로토콜에 인증 및 디지털 서명이 미적용되어 있을 때 가능한 공격이다. 공격자는 거짓 노드를 대량 생성한 후, 주변 차량 센서들에 실제 도로상황과 다른 가짜 데이터를 전송할 수 있다. 이는 ADAS의 잘못된 주행판단으로 이어져 안전을 위협할 수 있다.
각 공격 시나리오별 실현 가능성을 살펴보자면, BLE 계층은 SSP(Secure Simple Pairing) 암호화 및 공개키 교환 인증강도가 낮아 중간자 공격의 개입 가능성이 크다. 이는 차량 편의성을 위해 페어링시간을 단축시키고자 한데 따른 리스크로 볼 수 있다.9) GNSS 메시지 스푸핑은 차량 GNSS 수신기의 무결성 검증 수준이 낮으므로 실현 가능성이 크다. 다만, 정확한 실시간 위치를 모를 경우엔 비동기 스푸핑 공격만 가능하다.10) 시빌 공격은 다음의 관점에서 실현 가능성이 높다. 먼저 다수의 차량 네트워크에 디지털 서명이 미적용되었고, 타임스탬프 방어 기법을 가능케 할 RSU 인프라가 갖추어 지지 않았으며, 저전력 저사양 센서 노드에서 인증 암호화 구현이 어렵다는 점 때문이다.11)
코드 주입 공격은 블루투스, Wi-Fi, LTE 등 외부 통신 프로토콜의 취약점을 통해 이루어진다. 예를 들어 블루투스 연결 시, 인풋 데이터에 대한 유효성 검증이 불충분할 경우 Out-of-bound heap memory read 또는 Heap buffer overflow 취약점을 활용할 수 있다. 이를 통해 DCU(Domain Control Unit)를 해킹하여 공격자의 와이파이 핫스팟으로 연결시킨 후, Root shell을 만들어 악성 코드를 시스템 내부로 보낼 수 있다. 이때 공격 대상이 된 ECU와 통신하는 백엔드 서버 간 통신 보안이 미적용되었을 경우, 서버까지 공격 대상이 확대될 수 있다.12) 이 공격이 실현되면 공격자는 악성 코멘드를 보내며 원격으로 차량을 제어할 수 있다.
데이터 및 코드 조작, 삭제, 작성 공격 또한 외부 통신 프로토콜을 통해 이루어질 수 있다. 이는 데이터 및 네트워크 트래픽에 대한 무결성 검증이 불충분할 때 가능하다. 예를 들어 Ethernet 통신을 통해 LiDAR 센서가 가진 데이터를 조작하거나 삭제할 수 있다. 포트 스캐닝을 통해 Ethernet 오픈 포트 및 통신 트래픽을 찾아낸 뒤, 송신되는 Raw 데이터 내 Object identification number와 같은 Object 관련 정보를 찾아내 허위로 작성하거나 삭제할 수 있다.
이 공격을 통해 LiDAR의 Depth map이 잘못 작성되면, 차량 앞의 물체에 대한 정확한 인지 및 트래킹 알고리즘이 오작동할 수 있다.13) 이를 통해 ADAS ECU가 잘못된 주행 판단을 내릴 경우, 돌진하는 외부 물체와 차량이 충돌할 수도 있다. 또는 주행 중 차량의 급발진이나 브레이크 무력화 상태도 발생할 수 있다.
또한 위에서 말한 블루투스 취약점을 활용한 데이터 조작 공격도 가능하다. 먼저 블루투스 또는 와이파이가 연결된 상태에서 Android auto, Car play 등을 이용해 On-board application platform을 연동한다. 이후 Root shell을 획득한 뒤 해당 ECU의 데이터 조작이 가능하다. 추가적으로 ECU와 연결된 CAN 통신 내에 데이터를 삽입하거나 조작하는 악성 코드를 삽입할 수 있다.
각 공격 시나리오별 실현 가능성을 살펴보자면, 먼저 블루투스 취약점을 활용한 코드 주입은 작년 Tencent Keen Security Lab의 실험에 의해 실현된 바 있어 가능성이 높은 편이다. 해당 실험에서 우버투스 원을 통해 MAC주소를 스니핑한 뒤, DCU시스템에 루트 권한으로 원격 코드 주입 및 실행이 가능했다.14) 또한 LiDAR 센서는 현재 데이터 및 트래픽에 대한 암호화, 토큰화 등의 무결성 검증 기능이 충분히 적용되어 있지 않아 실현 가능성이 높다. 다만, 데이터 조작 대상에 있어 ADAS는 포함되지 않을 가능성이 높다. 그 이유는 공격자가 차량 내 융합센서들간 정확한 작동원리를 파악하기가 현실적으로 어렵기 때문이다. 블루투스 취약점을 활용한 데이터 조작의 경우 실현가능성이 낮다. ECU별로 연동되는 On-board application platform에 대해 데이터 해쉬, 서명, 검증데이터를 검사하기 때문이다.15,16) 하지만 ECU의 내부에 침투한 이후라면 CAN통신은 Hard writing 기능이 미적용되어 통신 스트림 내 데이터 삽입 및 조작 실현 가능성이 존재한다.12)
신뢰할 수 없는 메시지 수신 공격은 V2V, V2I 네트워크에 인증서 기반 보안 통신이 미적용되어 있을 경우 가능하다. 가짜 OBU나 DAB, DBM 기지국으로부터 잘못된 정보나 악성 데이터를 전달받더라도 정보 출처에 대한 인증, 식별과정이 없어 위협에 그대로 노출될 수 있다.
신호 재밍 공격은 각 레이더 센서의 암호화 RF서명이 비활성화되고, 복합 신호처리 알고리즘 및 파형생성 기법이 미적용된 경우 가능하다. 차량 인포테인먼트 통신에 사용되는 GPS, DMB, RSU와의 통신 주파수대역 내 RF신호를 모니터링한 뒤, 악의적인 모사신호를 재전송할 수 있다.17,18)
악성 펌웨어 재생공격은 DCU(Display Control Unit)에 시큐어 부팅 기능이 없고, 블루투스 페어링이 이루어진 스마트 디바이스가 있을 때 가능하다. 먼저 맥주소 검색 장비인 우버투스 원을 활용하여 OTA방식으로 스니핑해야 한다. 이후 블루투스로 악성코드를 배포해 DCU와의 Interactive root shell을 만들어 악성 CAN 메시지 전송을 통한 악성 펌웨어 재생공격을 실행할 수 있다.14) 이를 통해 잘못된 주변 차량 및 교통 상황 데이터를 전달받아 주행판단에 착오가 생길 수 있다.
각 시나리오별 실현 가능성을 살펴보자면, 신뢰할 수 없는 메시지 수신 공격은 가능성이 높다. 실제로 V2V, V2I 네트워크에는 아직 인증서 기반 보안기술이 미적용되어 있기 때문이다. 이때 익명의 차량 OBU나 노변 RSU에 의해 신뢰할 수 없는 메시지를 수신할 확률이 높다. 또한 악성 펌웨어 재생공격 취약점은 발견 후 소프트웨어 업데이트를 통한 조치가 어려워 위험성이 높다. 이는 CAN 데이터 페이로드 크기가 제한되고 엔진, 브레이크 등의 성능을 떨어뜨릴 수 있기 때문이다.
정보 유출에 대한 공격은 3rd party 인포테인먼트 디바이스의 부품을 악의적으로 교체할 수 있을 때 가능하다. 이 상태에서 모든 ID값 수신이 가능한 디바이스를 연결한 후, 내부 통신을 모니터링하거나 메시지를 인터셉션할 수 있다.
이를 통해 차량 내 대화, 통화기록, 개인 연락처 등의 정보 노출이 가능해진다. 단, 보안 게이트웨이가 장착되면 스니핑이 불가하다.
서비스 거부 공격은 명의 도용을 통해 무선통신제품, GNSS, RSU 등에 접근하여 세션을 가로챈 후 가능하다. 이후 차량 내 CAN, Ethernet, Flexray, LIN 통신 메시지나 브로드캐스트 방식의 EWM(차량 간 긴급상황 경고메시지), BSM(비콘메시지), 모바일기기 APP의 송∙수신 메시지를 분석한다. 분석된 프레임에 맞추어 악성메시지 또는 대량의 가비지 데이터를 생성하면 공격 대상 시스템에 전송하거나, 송신 경로를 조작해 블랙홀 어택 통신을 만들 수 있다.
이를 통해 차량 주행 관련 ECU나 센서가 오동작할 경우, 주행 안전성이 심각하게 위협받을 수 있다. 특히, CAN 메시지 수신방식이 Interrupt 단일 방식일 경우, CAN DoS공격에 따른 ECU 비정상 동작 가능성이 높다.19)
권한 상승 공격은 On-board application platform의 Security layer 취약점이 존재할 때 가능하다. 공격자가 멀웨어에 감염된 모바일 어플리케이션을 통해 해당 플랫폼에 접근하여 차량 데이터 접근 및 애플리케이션 실행권한을 획득한다. 그리고 C&C서버를 통해 악성 명령을 내려 차량 내 OS환경을 제어한다. 이때 OS 내 보안 로직을 바이패스하고, 자체 권한상승을 통해 루트 권한을 획득할 수 있다.
CAN통신은 Hard writing 기능이 미적용되어 통신 스트림 내 데이터 삽입 및 조작 실현가능성이 존재한다.12) 다만, ECU별로 연동되는 On-board application platform에 대해 데이터 해쉬, 서명, 검증데이터를 검사하기 때문에 실현가능성이 낮다.16)
통신매체를 통한 공격은 모바일 USB 포트, 블루투스, 와이파이를 통해 악성바이러스가 감염된 통신매체를 연결하여 이루어진다. 멀웨어, 랜섬웨어 등의 바이러스가 통신매체의 애플리케이션 형태 등으로 변조되어 차량 내 인포테인먼트 OS에 악성코드가 주입될 수 있다.
이를 통해 모바일 디바이스를 활용한 블루투스 통화, 문자 송수신, 음악 재생 등 인포테인먼트 기능을 공격자 마음대로 제어할 수 있다. 실제로 게이트웨이에선 멀웨어 등 행위 기반 바이러스를 미리 차단할만한 보안성을 갖추지 못해 실현가능성이 높다.20)
악성 콘텐츠를 통한 공격은 통신 대상 및 내용에 따라 내부 CAN 메시지, V2V/V2I를 포함하는 V2X 메시지, 진단메시지, OEM 등 독점메시지로 나누어진다.
먼저 내부 CAN 메시지 송수신 공격은 외부 디바이스를 연결한 후, 악성프로그램을 통해 주요 ECU를 해킹하여 스푸핑된 악성 메시지를 송∙수신하여 이루어진다.
V2X 메시지 송∙수신 공격은 VANETs(Vehicular Ad Hoc Networks)의 인증 취약점을 활용한다. 이때 가짜 RSU를 만들어 악성 콘텐츠를 포함한 메시지를 송∙수신할 수 있다. 메시지의 변경 가능한 필드에 전자서명이 미적용되어 있으면, 메시지 위∙변조 공격도 가능하다.
진단 및 OEM 메시지 송∙수신 공격은 블루투스 또는 와이파이를 통해 OBD-Ⅱ 동글에 악성 메시지 또는 코멘드를 송신함으로써 가능하다. 해당 악성 메시지는 OBD-Ⅱ를 통해 차량 내 CAN 메시지로 전달되어 주행 기능에 영향을 줄 수 있다.
이를 통해 중요 개인정보를 탈취하여 각종 범죄에 활용할 수 있다. 또한 주행 변수를 조작하여 자동차의 자율주행 판단기능을 상실시키거나 시스템 과부하를 통한 서비스 장애를 일으킬 수 있다. 특히 VANETs 내 악성메시지 공격은 주행 위치, 사용자 아이덴티티 및 금융정보 등으로 탈취 범위가 더욱 크다.
각 시나리오별 실현 가능성을 살펴보면, CAN 메시지 공격은 가능성이 높다. 공격을 막기 위해선 실시간으로 CAN 메시지의 MAC을 모니터링하며 스푸핑된 메시지에는 에러 프레임을 덮어씌울 CAN 컨트롤러가 필요하다. 하지만 CAN버스에 과다한 통신로드를 발생시킬 수 있어 실제 구축은 어려운 상황이다.
VANETs 역시 빠른 주행 정보 공유를 위해 백엔드 인증서버(AS)를 필두로 한 인증서 기반 보안 통신이 아직 갖추어지지 않아 공격가능성이 높다. 또한 차량 게이트웨이 내 IDS가 탑재되지 않아 아직 실효성 있는 프레임워크 및 알고리즘이 갖추어지지 않은 상태다.20)
진단 메시지 송∙수신 공격 또한 실현 가능성이 높다. 그 이유는 OBD-Ⅱ 동글은 브로드캐스트 메시지를 보내므로 물리적으로 가까운 거리에 있다면 신호를 잡아내기가 쉽기 때문이다. 또한 동글을 통해 연결되는 와이파이는 CVE-2018-11476, 11477, 11478에서도 주요 취약점이 입증된 바 있다. 이때 연결되는 와이파이 LAN은 암호화 및 패스워드 설정이 없어 인증과정 없이 네트워크 접근이 가능하고, 송∙수신되는 정보 또한 암호화되어 있지 않다.
4.2 차량 공격 수단으로 사용되는 업데이트 절차
차량에 존재하는 업데이트 방식은 대표적으로 USB, OTA, UDS 등이 존재한다. 따라서 해당되는 Attack surface는 Table 1의 Data transferring method 중 DISC, SD card, USB, UDS 등이다. Interface 관점에서는 UDS를 지원하는 Internal communication interface가 해당되며, External communication 중 OTA를 위한 GSM, UMTS, LTE, 5 G가 해당된다. 해당 Attack surface를 기준으로 UNR.155에 명시되어 있는 위협에 대한 세부 공격 시나리오를 도출하였다.
OTA 업데이트 프로시저 손상은 차량 내 ECU에서 펌웨어의 데이터 검증 기능이 불충분할 때 가능하다. 다운로드한 펌웨어의 출처를 증명하고 무결성을 검증하는 HMAC이나 시그니처 값이 사용되지 않는다면, 해당 ECU는 악성 펌웨어로 리프로그래밍될 수 있다. 또한 변조된 펌웨어로 CAN 통신을 통해 엔진, 브레이크, 센서 등에 명령을 내리며 제어할 수 있다.21)
로컬, 물리적 소프트웨어 업데이트 프로시저 손상은 공격자가 CD 혹은 USB 포트에 물리적 접근이 가능하고 차량 내 ECU에서 펌웨어 무결성 체크가 불충분할 때 가능하다. 먼저 소프트웨어 파일 전송시 업데이트 프로시저를 조종할 악성 프로그램을 함께 설치한다. 이는 차량 헤드유닛의 펌웨어에 대한 루트 실행 및 재작성 권한을 공격자에게 부여할 수 있다. 단, 펌웨어 이미지 조작을 위해 공격자는 헤드유닛의 특정 암호화 및 복호화 코드에 접근이 가능해야 한다.
업데이트 소프트웨어 조작은 파일이 저장된 클라우드 서버의 SW 업데이트 매니저가 데이터 무결성 체크를 하지 않을 때 가능하다. 공격자는 먼저 차량이 서버로부터 서버 내 업데이트 파일 경로를 전달받는 내용을 스니핑해야 한다. 이후 재전송공격을 통해 서버에 접근하여 해당 파일을 변경할 수 있다. 차량이 파일을 다운로드 받은 뒤에도, 게이트웨이 ECU의 데이터 무결성 체크가 없다면 파일 조작이 가능하다.
소프트웨어 제공자의 암호키 손상을 통한 업데이트 무효화 공격은 차량 게이트웨이에 HSM 등의 보안 기능이 미적용되어 있을 때 가능하다. 이때 공격자는 미리 제공자로부터 전달받은 공개키를 조작하고, 업데이트 소프트웨어 이미지의 페이로드 해시값을 조작된 키로 복호화한다. 그러면 실제 페이로드에서 도출한 MD(Message Digest)값과 다르게 나타나고 게이트웨이는 해당 업데이트 요청 메시지를 리젝하게 된다.
이를 통해 차제 제어나 네비게이션, 인포테인먼트 시스템의 최신 업데이트가 이루어지지 않으면, 주행 안전 및 서비스 가용성이 침해받을 수 있다. 또한 ECU 리프로그래밍, 악성코드 감염, 차량의 원격 조작을 통해 심각한 보안 위협에 노출될 수 있다.22) 또한 업데이트 프로시저 실행 시 악성코드, 안티바이러스 시그니처 파일 등이 실행되면, 통신 채널에서 전송되는 데이터를 불법 수정하거나 거짓 데이터스트림을 생성할 수 있다.23) 나아가 공격자는 영구적으로 악성 헤드유닛 펌웨어를 설치하거나, 루트 권한상승 공격을 통해 임의 코드를 실행할 수 있다.
아울러 조작한 업데이트 파일의 설치 대상 또는 암호키 손상에 따른 업데이트 무효화 대상이 엔진, 브레이크, 자율주행 등의 ECU일 경우, 악성 버그가 제때 조치되지 않아 주행 안전에 심각한 위협이 될 수 있다.
각 시나리오별 실현 가능성을 살펴보자면, OTA 업데이트 프로시저와 로컬, 물리적 소프트웨어 업데이트 손상 공격은 가능성이 높다. 차량의 잦은 이동성에 따른 메모리 오버헤드와 안전한 키 공유 및 관리의 복잡성 문제 등으로 데이터 무결성 검사에 대한 한계가 있기 때문이다. 더욱이, 서버와의 최초 연결부터 다운로드, 설치, SW 교체까지 모든 송∙수신 및 릴레이 지점마다 무결성을 체크하며 스푸핑, 멀웨어 공격 등을 차단하기 어렵다.24) 실제로 Subaru StarLink Harman Head Unit의 취약점은 최근 2019년까지도 확인되어 업데이트 프로시저 조작 공격이 가능했다.
단, 이러한 공격을 최소화하기 위해 현재 많은 OTA 가능 차량들이 HMAC, CMAC, 시그니처값을 펌웨어에 붙인 뒤 암호화하고 있다. 또한 고성능 ECU의 경우 HSM, TZ(Trust Zone)의 Secret world 등 안전한 공간에, 업데이트 실패시 복구할 기존 펌웨어 백업 이미지를 저장하고 있다.
업데이트 소프트웨어 조작 공격은 실현 가능성이 낮다. 차량과 서버 간 통신구간에 TLS 또는 OpenVPN이 적용되어 스니핑 공격이 쉽지 않기 때문이다. 또한 OTA 클라우드 서버에 대한 접근 제어 정책도 강화되고 있다.
소프트웨어 제공자의 암호키 손상을 통한 업데이트 무효화 공격은 대상 ECU의 성능에 따라 다를 수 있다. 고성능 ECU에선 업데이트 파일 및 공개키 보관을 위해 다양한 보안 기능을 추가하고 있다. 여기에는 HSM의 대칭키를 사용한 무결성 체크, WUR의 TZ 내 비인가 접근 차단, TPM의 Secure OS 접근 제한 등이 포함된다. 반면 주행 안전, 인포테인먼트 기능과 관련되지 않은 저성능 ECU는 이러한 보안성을 갖추고 있지 않아 조작 가능성이 높다.
업데이트 서버 또는 네트워크에 대한 DoS(Denial of Service) 공격은 대상 차량의 명의 도용 및 서버와 차량간 업데이트 관련 메시지 스니핑을 통해 가능하다. 해당 메시지를 분석해 공격대상의 네트워크 주소를 파악한 뒤, 악성메시지나 대량의 가비지 데이터를 전송할 수 있다. SYN Flooding, 재밍 공격도 가할 수 있다.
이는 서버의 SW 업데이트 매니저가 중요 업데이트 롤아웃 기능을 할 수 없게 만들어 주행을 위협할 버그를 실시간으로 조치할 수 없게 만든다. 또한 소프트웨어 다운로드 중에 DoS 공격이 이루어지면, 다운로드가 끊김과 재시작을 반복하면서 비정상 소프트웨어가 설치될 수 있다. 메시지 내용에는 차량과 서버 간 업데이트 요청부터 업데이트 준비상태 알림, 대상 ECU의 최종 파일 버전 및 부품번호 확인 등이 포함되어, 공격 성공시 프라이버시 유출 가능성이 높다.
하지만 현재 많은 차량들이 OTA 서버와의 통신 구간에 TLS, OpenVPN 등 암호화 기능을 갖추고 있어 메시지 스니핑 및 분석이 어려울 수 있다. 또한 업데이트 소프트웨어를 설치하는 중에 해당 파일에 대한 문제가 확인될 경우, 기존 소프트웨어를 복구하여 비정상 업데이트를 막을 수 있다.
4.3 외부 연결 및 연결과 관련된 차량 위협
차량과 관련된 외부 연결은 대표적으로 스마트폰APP을 통해 차량을 원격 제어하는 Remote link type application이 존재한다. 따라서 해당되는 Attack surface로는 Table 1의 차량 제어 기능을 지원하는 External communication interface와 3rd party 소프트웨어 설치를 지원하는 External communication interface가 있다. 이외에도 외부 인터페이스 관점에서 Data transferring method가 해당된다. 해당 Attack surface를 기준으로 UNR.155에 명시되어 있는 위협에 대한 세부 공격 시나리오를 도출하였다.
차량 기능의 원격 조작 공격은 디지털 키(Digital key), Key fob, Remote link type application에 인증 취약점이 존재할 때 가능하다. 이를 통해 차량의 도어, 트렁크, 경적 등에 대한 원격 명령 제어가 가능하고, 이는 차량의 물리적 탈취로 이어질 수 있다. 위 3가지 Attack surface는 공격자의 원격 접근 반경이 각각 근거리, 중거리, 장거리인지에 따라 나누어진다.
먼저 근거리 원격 조작 공격은 디지털 키의 인증 취약점을 활용한 공격이다. 디지털 키 서버에서 디지털 키의 사용자 정보에 대한 주기적 인증이 없을 때, 공격자는 디지털 키가 구동되는 BLE, NFC, UWB 등의 통신 내용을 스푸핑할 수 있다. 이후 사용자에 대한 중요 정보를 탈취하거나 재생 공격을 실행할 수 있다.
중거리 원격 조작 공격은 Key fob의 인증 취약점을 활용한 공격이다. Key fob와 Immobilizer 간 통신 내용을 스니핑한 뒤, 인증 우회 및 재생 공격을 실행할 수 있다.
장거리 원격 조작 공격은 Remote link type application을 활용한 공격이다. APP에 인증 취약점이 있을 때, APP에서 공격자가 내린 명령은 차량 내 TCU(Telematics Control Unit)와 모바일 네트워크를 거쳐 목표한 ECU를 제어할 수 있다. 나아가 해당 APP과 Telematics 서버 간 통신에 TLS 1.2가 미적용되었을 경우, APP 뿐만 아니라 서버에 대한 탈취 시도도 진행될 수 있다.
각 Attack surface를 활용한 시나리오별 실현 가능성을 살펴보면, 디지털 키 공격은 가능성이 낮다. 서버와의 주기적 인증이 이루어지고, 사용자에 대한 정보 또한 TEE 등의 별도 공간에 저장되어 접근이 어렵기 때문이다. Key fob 공격도 가능성이 낮다. Immobilizer와 주로 Challenge-response 인증 방식이 활용되고 있으며, 이때 한번 사용된 넌스 값은 재사용이 불가하기 때문이다. Remote link type application 공격도 가능성이 낮다. 기존에 인증 취약점을 통해 차량 정보의 탈취가 가능하다는 발표가 나온 뒤, OEM사들의 인증 부분에 대한 강화가 이루어졌기 때문이다. 인증에 대한 추가적인 보안 홀이 생기지 않으면 실제 공격하기는 어려워 보인다.
3rd party 소프트웨어에 대한 위협은 차량에 3rd party 소프트웨어 설치가 가능한 부분을 살펴봐야 한다. 일부 OEM사들의 경우 인포테인먼트 시스템에 마켓을 두어 사용자가 APP을 설치할 수 있게 함으로써 3rd party 소프트웨어 설치가 가능하다.
마켓 상에 악성 행위가 포함된 APP이 존재할 경우 인포테인먼트 시스템이 공격받을 수 있다. 이외에도 안드로이드 플랫폼의 경우 악의적인 APK를 생성하고 USB를 통해 인포테인먼트 시스템에 설치할 수 있다. 이러한 악의적인 APP을 통해 정보 유출 문제뿐 아니라 인포테인먼트 시스템과 연결된 타 ECU까지 공격받을 수 있다. 따라서 차량 전체에 영향을 끼칠 수 있다.
하지만 현재 OEM사가 출시하고 있는 인포테인먼트 시스템은 자체적으로 관리하는 APP만 설치 가능하며, 사용자가 원하는 임의의 APP을 설치하지 못하도록 막아 놓았다. 따라서 해당 시나리오가 성공하기 위해서는 인포테인먼트 시스템에 악의적인 APP이 설치 가능해야 하므로 현실적으로는 어려워 보인다.
차량에 연결 가능한 인터페이스 중 USB는 사용자 편의를 위한 Car play와 Android auto, Mirror link, Car life를 지원한다. 이런 기능은 인포테인먼트 시스템에 존재하는 기능이며, 방화벽 설정이 제대로 되어 있지 않으면 내부 침투에 이용될 수 있다. 예를 들면 Mirror link를 지원하는 인포테인먼트 시스템에서 SSH가 열려있다면 공격자는 Mirror link를 통해 인포테인먼트 시스템에 접근할 수 있다.
USB 인터페이스는 미디어 파일에 대한 재생을 지원한다. 따라서 미디어 파일에 대한 검증이 제대로 이뤄지지 않으면, 퍼징 테스트를 통한 공격이나 악의적인 파일 재생을 통한 공격이 가능하다. 이를 통해 Buffer-over-flow 등 시스템 취약점이 발견되어 공격자가 내부를 침투하는 데 이용할 수 있다. 이는 인포테인먼트 시스템 장애 발생까지 이어질 수 있다.
OBD-II의 인증과정이 미흡하여 우회가 가능한 경우가 있다. 이 경우에는 진단 액세스를 함으로써 변수 값이나 상태 정보를 읽어올 수 있다. 이를 통해 차량의 ECU에 대한 내부 침투가 가능할 수 있다. 내부 침투에 성공한 공격자는 원하는 행위를 할 수 있다. 예를 들면 중요 정보에 대한 유출을 시도하거나 원격에서 차량을 조정할 수 있게 하는 등의 악의적인 행위를 할 수 있다.
이러한 ECU 내부 침투를 막기 위해 OEM사에서도 인터페이스별 방화벽 설정을 하고 있다. 또한, 공격에 활용될 수 있는 불필요한 포트에 대해 제거하고 있다. 따라서 방화벽 설정과 불필요한 포트가 제거되어 있다면, 실현 가능성은 낮아 보인다. 또한 OEM사는 인터페이스에 대한 퍼징 테스트를 진행 및 양산하고 있다. 따라서 ECU의 OS에 영향을 끼칠 수 있는 유효한 Crash가 발생하긴 어려워 보인다. 하지만 알려지지 않은 신규 취약점을 통해 USB포트에 악의적인 미디어 파일을 삽입 및 실행하는 공격이 성공할 수도 있다. 마지막으로 OBD-II에는 진단 액세스에 대한 인증 과정이 존재하기 때문에 실제 데이터를 읽어오는 시나리오가 수행되기는 어려워 보인다.
4.4 차량 데이터/코드에 대한 위협
차량에서 데이터 및 코드를 추출하기 위한 방법으로 디버깅 용도의 JTAG포트 활용이 있다. 따라서 해당되는 Attack surface는 Table 1의 Debug port, Data transferring method의 UDS와 KWP2000을 지원하는 Internal communication interface이다. 해당 Attack surface를 기준으로 UNR.155에 명시되어 있는 위협에 대해 세부 공격 시나리오를 도출하였다.
데이터 및 코드 추출 위협에는 다양한 Attack surface가 사용될 수 있다. 대표적으로 JTAG, UART, ADB, Flash memory, UDS가 있다. 각각의 특성에 맞는 공격 조건이 갖추어 졌을 때 추출 공격이 가능하다.
먼저, ECU의 데이터 및 코드 추출을 하기 위해서는 JTAG과 같은 하드웨어 디버깅 PIN이 활성화되어 있어야 한다. 이후 JTAG 디버깅 툴을 이용하여 데이터 및 코드를 추출할 수 있다. 또한 UART와 같은 통신을 통해 임베디드 리눅스나 QNX 운영체제, 안드로이드 등을 사용하는 ECU에 물리적으로 접근이 가능해야 한다. 이후 Magic key를 통해 부트로더에 접근해서 데이터 및 코드를 추출하거나, Root shell을 획득한 후 DD 같은 명령어를 통해 데이터 및 코드를 추출할 수 있다. ADB와 같은 통신을 통해 임베디드 리눅스나 안드로이드 등을 사용하는 ECU에 물리적으로 접근이 가능해야 한다. Root shell 획득 후, DD 같은 명령어를 통해 데이터 및 코드를 추출할 수 있다. Flash memory를 활용하기 위해선, 먼저 메모리 덤프를 위해 PCB 기반에 물리적으로 접근이 가능하여야 한다. 이후 NAND Flash, SOP와 같은 Flash memory의 데이터 시트를 통해 Read operation을 구현하여 데이터 및 코드를 추출할 수 있다. CAN, Flexray, Ethernet, K-line, LIN 등이 UDS나 KWP2000을 지원하는 경우 이 서비스를 통해 데이터 및 코드를 추출할 수 있다.
이를 통해 저작권을 가진 소프트웨어 및 독점 소프트웨어를 추출해 향후 분석 작업에 이용하거나 제품의 불법 복제에 이용할 수 있다. 또한 추출된 데이터 내 개인의 신원, 지불 계정, 주소록, 차량 위치, 차량 VIN 등의 개인 정보에 공격자가 무단으로 액세스할 수 있다. 아울러, 추출한 펌웨어 내 암호화 키가 존재한다면 또 다른 공격을 야기할 수 있다. 하지만 현실적으로 JTAG, UART, ADB와 같은 디버깅과 관련된 기능은 양산시 제거되는 추세이다. 따라서 실행되기 어려운 시나리오이다. 메모리 덤프의 경우 실장된 정보가 안 보일 경우와 데이터 시트가 공개되어 있지 않는 경우, 정보가 없어 펌웨어 추출이 어렵다. 또한, UDS와 KWP2000도 ECU의 펌웨어를 가져올 수 있는 Readbymemory address의 경우에는 인증 과정을 통과해야 하며, 지원하는 서비스 목록에 없는 경우가 대다수이다. 따라서 해당 방법으로 펌웨어를 추출할 수 있는 가능성도 희박하다.
데이터 및 코드 조작 위협은 공격자가 4.4.1에서 언급한 전제 조건과 같아야 한다. JTAG과 같은 하드웨어 디버깅 PIN이 활성화되어 있어야 한다. 이후 JTAG 디버깅 툴을 이용하여 데이터 및 코드를 추출할 수 있다. 또한 UART와 같은 통신을 활용하기 위해선, 임베디드 리눅스나 QNX 운영체제, 안드로이드 등을 사용하는 ECU에 물리적으로 접근이 가능해야 한다. 이후 Magic key를 통해 부트로더에 접근해서 데이터 및 코드를 추출하거나, Root shell을 획득한 후 바이너리 변조, conf 파일 변조, db 파일 변조 등과 같은 방법을 통해 데이터 및 코드를 변조할 수 있다. ADB와 같은 통신을 통해 임베디드 리눅스나 안드로이드 등을 사용하는 ECU에 물리적으로 접근이 가능해야 한다. Root shell 획득 후, 바이너리 변조, conf 파일 변조, db 파일 변조 등과 같은 방법을 통해 데이터 및 코드를 변조할 수 있다. Flash memory를 활용하기 위해선, 먼저 메모리 덤프를 위해 PCB 기반에 물리적으로 접근이 가능하여야 한다. 이후 NAND flash, SOP와 같은 Flash memory의 데이터 시트를 통해 Read operation을 구현하여 데이터 및 코드를 추출한다. 이때 원하는 부분을 변조하여 Write operation을 구현하여 데이터 및 코드를 변조할 수 있다. CAN, Flexray, Ethernet, K-line, LIN 등이 UDS나 KWP2000을 지원하는 경우 서비스를 통해 데이터 및 코드를 변조할 수 있다.
이를 통해 차량의 VIN 정보에 대한 불법/무단 변경이 가능하다. 또한 신원 사기에도 이용될 수 있다. 예를 들면, 전기차 EVCC 계통의 ECU에서 사용되는 eMAID의 변조를 통해 타 차량의 요금 징수 기준으로 전기차의 충전 요금이 부과될 수 있으며, 결제정보도 타인의 결제정보로 결제될 수 있다. 차량 상태 정보에 대한 모니터링을 하는 별도의 제어기가 존재하는 경우 모니터링되는 제어기의 상태정보를 조작할 수 있다. 중고차 거래 시 중요한 주행 데이터에 대한 조작도 가능하다.
하지만 현실적으로 실현 가능성은 낮다. 4.4.1 데이터 및 코드 추출에서 언급한 것과 마찬가지로, 양산시 디버그 포트를 제거하며, UDS, KWP2000에 인증과정이 존재하기 때문이다.
데이터 및 코드 삭제 위협은 공격자가 4.4.1에서 언급한 전제 조건과 같아야 한다. JTAG과 같은 하드웨어 디버깅 PIN이 활성화되어 있어야 한다. 이후 JTAG 디버깅 툴을 이용하여 데이터 및 코드를 추출할 수 있다. 또한 UART와 같은 통신을 활용하기 위해선, 임베디드 리눅스나 QNX 운영체제, 안드로이드 등을 사용하는 ECU에 물리적으로 접근이 가능해야 한다. 이후 Magic key를 통해 부트로더에 접근해서 데이터 및 코드를 추출하거나, Root shell을 획득한 후 rm -rf와 같은 명령어를 통해 데이터 및 코드를 삭제할 수 있다. ADB와 같은 통신을 통해 임베디드 리눅스나 안드로이드 등을 사용하는 ECU에 물리적으로 접근이 가능해야 한다. 쉘 획득을 통해 rm -rf 같은 명령어를 통해 데이터 및 코드를 추출할 수 있다. 메모리의 데이터를 삭제하기 위해 PCB 기반에 물리적으로 접근이 가능하여야 하며, NAND flash, SOP와 같은 Flash memory의 데이터 시트를 통해 Erase operation을 구현하여 데이터 및 코드를 삭제할 수 있다. CAN, Flexray, Ethernet, K-line, LIN 등이 UDS나 KWP2000을 지원하는 경우 서비스를 통해 데이터 및 코드를 삭제할 수 있다.
이를 통해 ECU의 데이터 및 코드를 삭제하여 정상동작을 하지 못하게 할 수 있다. 공격자가 공격 행위를 숨기기 위해 전체 코드 및 데이터 영역이 아닌 시스템 이벤트 로그와 같은 정보를 삭제할 경우에도 데이터 및 코드 추출 공격이 실행될 수 있다.
하지만 현실적으로 4.4.1 데이터 및 코드 추출에서 언급한 것과 마찬가지로 양산시 디버그 포트를 제거한다. 또한, UDS, KWP2000 인증과정이 존재하여 실현 가능성은 낮다.
4.5 충분히 보호되거나 강화되지 않은 경우 악용될 수 있는 잠재적 취약점
현재 보안적 기술 미적용 및 안전하게 적용되지 않아 의도치 않은 취약점이 발생하는 부분에 대한 공격 시나리오이다. 따라서 설계 단계에서 부터 존재하는 취약점, 안전하게 적용되지 않은 보안 기술에 따른 취약점, HW와 SW가 개발되면서 생긴 취약점 등을 다루고 있다. 이에 해당하는 Attack surface는 Table 1 전체라고 볼 수 있다.
Brute Force 공격은 암호화에 사용되는 키 길이가 짧고 유효기간이 길 때, 대입해 보아야할 문자 조합이 줄어들어 복호화 가능성이 높아진다.
도청, 복제 및 재전송 공격은 암호화 알고리즘의 적용 수준이 낮을수록 공격 가능성이 높아진다. 예를 들어 RKE(Remote Keyless Entry) 시스템은 PRNG를 통해 Rolling code를 생성하는 알고리즘을 기반으로 한다. 이때 PRNG의 키 생성 범위가 적을 경우 재전송 공격에 취약해진다.10)
RFID 시스템 역시 PKI를 통해 타임스탬프를 생성하는 알고리즘을 가진다. 이 타임스탬프 인증 메시지를 교환하는 과정에 보안 기능이 고려되지 않으면 인터셉션 및 비동기화 공격에 노출되기 쉽다.25)
또한 더 이상 사용하지 않거나 향후 사양 될 암호화 알고리즘을 사용할수록, 암호 해독 공격에 취약해진다. 예를 들어 2018년 이후 NIST가 사용을 지양한 3TDEA에 대해 Sweet32 공격이 가능하다. 이 공격은 대상 세션의 평문이 3TDEA(Triple Data Encryption Algorithm)를 기반으로 대량 암호화되고, 평문 일부가 노출될 때 가능하다. 이를 통해 코드 인젝션 및 명의 도용이 가능해진다.
위 공격은 차량 문, 엔진, 도난방지기능을 제어하는 RKE 시스템이나 VANETs에 사용되는 주요 무선 시스템인 RFID 시스템을 대상으로 할 경우 주행 안전을 위협할 수 있다.
이를 극복하기 위해 키 길이 증대 및 랜덤 범위 확대, 타임스탬프 세션 별 업데이트 방식 등이 연구되고 있다. 단, 알고리즘의 강도와 복잡성이 증가할수록 오버헤드도 함께 커지기 때문에 실제 적용을 위해선 알고리즘의 경량성을 충분히 고려해야 한다. 또한 향후에는 키 길이를 늘리더라도 연산 능력이 고도화된 퀀텀 컴퓨터에 의해 키가 노출될 위험이 더욱 커질 수 있다.
차량의 하드웨어 부품이나 소프트웨어 프로그램이 공격에 취약하거나 공격 발생시 중지할 수 없도록 설계되었다면, 각종 해킹 공격에 노출될 수 있다.
예를 들어 차량 도난방지장치(Immobilizer)는 인증 우회 취약점으로 인해 릴레이 공격 또는 키 복제 공격이 가능하다. 공격자가 공격 대상 키(Key-fob)와 물리적으로 매우 근접해 있을 때, 먼저 RFID 리더기로 통신 스캐닝을 한다. 이후 키에 삽입된 Transponder 칩과 차량 내 Receiver 간의 인증을 우회하여 점화 플러그를 작동하면 공격이 이루어진다.
이를 통해 차량 엔진을 마음대로 조종하거나 키를 복제할 수 있다. 특히, Immobilizer 해킹은 공격 중지 기능이 없어, 최초 인증만 통과하면 계속해서 해당 차량을 제어할 수 있다.
실제로 Texas Instruments Immobilizer 제품에서 RFID 리더기로 스캔 시 암호화 키의 시리얼 넘버 확인이 가능했다. 시리얼 넘버 생성 비트수가 작아 암호화 키 추측 가능성이 높았기 때문이다.26)
차량 소프트웨어 프로그램은 충분한 검증 과정을 거치지 않았을 경우, 기존에 알려졌거나 새로운 형태의 불량 코드, 버그가 발견되어 공격 대상이 될 수 있다. 예를 들어 입력값 길이에 대한 유효성 검사 코드가 없을 때, 버퍼오버플로우 공격이 가능하다. 공격자는 임의의 악성코드를 리다이렉션하거나, 사용자의 관리자 여부를 묻는 플래그를 덮어씌워 권한 상승 공격을 실행할 수 있다.
소프트웨어 개발이 완료된 뒤에도, 개발 잔여물들을 백도어로 활용하여 장비에 무단 접근 및 공격이 가능하다. 예를 들어 ECU에 대한 무단접근 및 조작은 다음의 조건이 성립할 때 가능하다. 먼저 디버그 포트나 JTAG 포트가 오픈되어 있고 물리적 접근이 가능해야 하며, 인증 및 암호화기능이 미적용 되어 있어야 한다. 여기서 JTAG을 통한 코드 조작은 OpenOCD와 같은 디버깅 소프트웨어를 통해 가능하다.
실제로 공격대상 칩의 내부 아키텍트 분석 및 JTAG TAP 컨트롤러 입∙출력 언어와 프로그래밍 코드 간 전환과 같은 힘든 작업과정을 거치지 않아도 된다. 하드웨어를 컨트롤하는 소프트웨어 메모리상에 바이트를 직접 쓰거나 프로세싱 메모리에 악성코드를 주입할 수 있고, 권한 상승 공격을 할 수 있다. 이외에도 개발인증서나 개발자 암호 등이 폐기되지 않고 노출된 경우 무단 침입 및 조작 루트로 활용될 수 있다.
이를 통해 차량 엔진의 원격 제어가 가능하고 악성프로그램을 감염시킬 수 있다. 특히, 버퍼오버플로우는 이미 잘 알려진 취약점이지만 차량 임베디드 시스템의 복잡한 소프트웨어 모듈 구조로 인해 여전히 가장 큰 취약점으로 꼽히고 있다.
단, JTAG 포트를 통한 공격을 방지하기 위해 포트 제거 또는 차단기(Fuse) 끊기, 암호화 및 인증 적용 등 다양한 대책이 적용되고 있어 실현 가능성은 낮다. 실제로 한 실험에선, 테슬라 S 모델을 대상으로 Brute force 방식의 JTAG 테스팅을 시도하였으나 CID 및 IC의 VCM은 해당 악성 명령에 반응을 보이지 않았다.27)
불필요한 네트워크 포트가 열려 있을 경우, 공격 대상이 될 수 있다. Nmap 등의 포트스캐너를 활용해 오픈 포트를 파악한 뒤, 해당 포트로 오고 가는 네트워크 트래픽을 스니핑하거나 다른 포트로 프레임을 전송할 수 있다.
차량 내부 네트워크는 VLAN 파티셔닝 또는 CAN이나 이더넷 스위치의 ACL정책을 통해 분리되어 운용된다. 그런데 차량 네트워크 IDS가 미적용되어 있다면, 이 분리체계의 보안기능을 우회할 수 있다. 또는 다른 네트워크 세그먼트에 접근해 무작위 CAN버스 메시지를 보내는 등의 악성행위가 가능하다. 예를 들어 VLAN에서 Transmission 기능을 담당하는 라우터를 스니핑하여 CAN flooding 공격을 한 뒤 Transmission 기능을 무력화시킬 수 있다.
이후 해당 메시지의 VLAN 태그 값을 조작하여 덮어쓰기하면 관련되지 않은 VLAN 내 ECU들로 잘못 송신할 수 있다. 또는 수신측 VLAN 라우터의 인증 기능을 바이패스시키고 악성메시지를 보내 차량 시스템을 마비시킬 수 있다.28)
이를 통해 해당 포트와 연결된 서비스를 스캐닝하여 알아낸 뒤 DoS공격을 가할 수 있다. 또한 중요도가 덜하고 상대적으로 보안이 취약한 인포테인먼트 ECU가 속한 VLAN의 라우터를 공격한 뒤, 기타 주요 ECU에 2차 공격을 가할 수 있다. 주요 ECU로는 주행안전 및 차체 제어 또는 무선, 진단, KES시스템 관련 ECU가 있다.29)
실제로 유명 차량모델은 텔넷 서비스 포트가 오픈된 채 서비스되기도 했다. BroadR-Reach 기술이 적용된 차량에서도 다수의 포트들이 오픈되어 있음이 확인된 바 있다.30,31) 또한 VLAN, 스위치에 대한 Flooding 공격을 미리 감지하고 차단할 수 있는 차량 IDS가 부재해 실현가능성이 높다. 더욱이 ECU 생성, 수정 및 폐기가 증가하면서 VLAN 복잡도가 커지고 있다. 이는 VLAN 라우터들의 Partitioning, Transmission, 메시지 암호화 기능에 부하를 일으켜 메시지 Flooding 공격의 실현가능성을 높일 수 있다.
의도하지 않은 개인정보 노출 위협은 차량 매매나 대여 시, 기존 사용자의 데이터 및 사용 기록이 남아있을 경우 발생할 수 있다. 예를 들어 인포테인먼트시스템의 설정 리셋이 안 이루어지면, 사용자가 페어링했던 블루투스 기기의 정보나 연동된 연락처에 접근할 수 있다.
이는 프라이버시 침해 또는 심한 경우 해당 정보를 통해 사용자 신변을 위협하는 범죄로 이어질 수 있다.
실제로 렌트카 대여시 대여 업체에서 기존 사용자 연동 정보를 리셋하지 않는 경우가 많아, 보안 사고 위험성이 크다.
시스템 물리적 조작에 따른 공격은 전자 하드웨어에 대한 무결성 체크 및 인증 기능이 미적용되어 있을 때 가능하다. 이때 미승인된 하드웨어로 무단 교체하거나 추가할 수 있다. 또는 해당 하드웨어에 미리 악성코드를 감염시켜 놓거나 외부 네트워크에서 데이터 스니핑이 가능하도록 설정을 바꾸어 중간자공격에 활용할 수 있다.
또한 센서가 수집하는 물리적 데이터의 특성을 파악한 뒤, 그 특성에 맞는 외부 디바이스를 통해 수집정보를 조작할 수 있다. 예를 들어 카메라 필터의 주파수 대역이 넓고 카메라의 새로고침 간격(Refresh rate)이 길수록, LED나 가시광 레이저, 적외선 LED를 카메라 가까이서 직접 쏘아 조작할 수 있다. 이때 데이터의 색조를 높여 대상 이미지의 인식을 어렵게 하거나, 아예 인식을 못 하게 할 수 있다. 빛에 의존해 데이터를 인식하는 LiDAR 역시 비슷한 공격이 가능하다.32) 이외에도 차량의 각종 센서에 접근하여 전자기파 측정, 신호 분석 등을 부채널 분석한 뒤 센서 데이터를 변조할 수 있다.
이를 통해 ADAS 또는 TPMS 센서의 수집 데이터를 조작하여 주행안전 기능의 오작동을 유발할 수 있다. 최근에는 드론을 활용해 주행 차량에 접근할 수 있어, 센서 데이터 조작의 위험성이 더 커지고 있다.
하지만 다양한 조작 감지 기능이 개발되어 위 공격의 실현가능성은 낮아질 것으로 기대된다. 센서 교정시스템(Sensor calibration system)에서 LiDAR, 레이더, 카메라, IMU(Inertial Measurement Units)가 수집한 데이터를 검사하기 때문에 공격 효과가 제한될 수 있다. 데이터의 왜곡현상이 감지되면 본래 센서 데이터를 복구하거나, 센서 무단교체 여부 등을 감지해 이슈 조치에 나설 수 있기 때문이다.33) OBD-Ⅱ에서도 수집되는 신호가 정상 범위에 미치지 못 하거나 아예 없을 경우, 엔진 확인 요청 라이트를 켜서 사용자에게 인지시킬 수 있다.34)
5. 결 론
세계적으로 자율주행 자동차 시장이 빠르게 성장함에 따라 차량에 대해 다양한 사이버 공격 및 취약점이 발생하고 있다. 이러한 위험을 방지하기 위해 UNECE에서는 2020년 6월 UNR.155 차량 사이버 보안 규제를 발표하였다. 하지만 해당 규제의 Annex 5. Part A에는 Attack surface 및 위협이 상세히 명시되어 있지 않다.
이에 따라 국가별 차량 사이버 보안 규제를 도출해야 하는 정부 부처에서 어려움이 존재할 수도 있다. 또한 글로벌 OEM사도 각 국가별 규제에 따른 TARA(Threat Analysis and Risk Assessment) 활동의 증적 자료와 보안성 검토 보고서 제출 의무가 있어 고민이 많아지고 있다. 본 논문은 이러한 어려움을 극복하기위해 공격자의 관점에서 Attack surface를 분류한 뒤, 위협에 대한 공격 시나리오를 도출하였다.
본 논문에서는 차량 사이버 보안 규제 및 표준 동향 소개, 차량 사이버 보안 연구 동향, Automotive attack surface에 대해 간략하게 살펴보았다. 이를 기반으로 UNECE UNR.155 차량 사이버 보안 규제 위협에 맞춰 공격 시나리오의 전제 조건, 공격 시나리오, 실현성 가능성 관점에서 공격 시나리오를 도출하였다. 이를 통해 국가별로 차량 사이버 보안 규제 도출 시 도움이 되길 바라며, 실제 UNECE 차량 사이버 보안 규제 대응이 필요한 OEM사와 부품사에 도움이 되길 바란다. 향후 심화 연구로써 본 논문에 제시한 공격 시나리오에 따른 대응 방안에 대한 연구를 진행할 예정이다.
References
- N. Jiao, K. Ghaffarzadeh and L. Jiang, Autonomous Cars and Robotaxis 2020-2040: Players, Technologies and Market Forecast, IDTechEx Research, https://www.idtechex.com/en/research-report/autonomouscars-and-robotaxis-2020-2040-players-technologiesand-market-forecast/701, , 2020.
- Economic and Social Council, Draft Cyber Security Regulation, World Forum for the Harmonization of Vehicle Regulations, United Nations, 2020.
- ISO/SAE International, Surface Vehicle Standard, ISO/SAE DIS 21434, 2020.
- SAE J3061 Vehicle Cybersecurity Systems Engineering Committee, Cybersecurity Guidebook for Cyber-Physical Vehicle Systems, SAE International, 2016.
- K. Kim, J. S. Kim, S. Jeong, J. H. Park and H. K. Kim, “Cybersecurity for Autonomous Vehicles: Review of Attacks and Defense,” Computers & Security, Vol.103, Paper No.102150, 2021. [https://doi.org/10.1016/j.cose.2020.102150]
- J. Wu, Y. Nan, V. Kumar, D. J. Tian, A. Bianchi, M. Payer and D. Xu, “BLESA: Spoofing Attacks Against Reconnections in Bluetooth Low Energy,” WOOT’20, USENIX, 2020.
- M. Y. Lee and J. P. Park, “An Analysis on Invasion Threat and a Study on Countermeasures for Smart Car,” Journal of the Korea Academia-Industrial Cooperation Society, Vol.18, No.3, pp.374-380, 2017.
- Y. Liu, S. Li, Q. Fu and Z. Liu, “Impact Assessment of GNSS Spoofing Attacks on INS/GNSS Integrated Navigation System,” Sensors, Vol.18, No.5, Paper No.1433, 2018. [https://doi.org/10.3390/s18051433]
- S. Gajbhiye, S. Karmakar, M. Sharma and S. Sharma, “Bluetooth Secure Simple Pairing with Enhanced Security Level,” Journal of Information Security and Applications, Vol.44, pp.170-183, 2018. [https://doi.org/10.1016/j.jisa.2018.11.009]
- Z. El-Rewini, K. Sadatsharan, D. F. Selvaraj, S. J. Plathottam and P. Ranganathan, “Cybersecurity Challenges in Vehicular Communications,” Vehicular Communications, Vol.23, 2019. [https://doi.org/10.1016/j.vehcom.2019.100214]
- J. Heo, “Sybil Attack Detection with Energy Efficiency in Wireless Sensor Networks,” The Journal of the Institute of Internet, Broadcasting and Communication, Vol.13, No.1, pp.115-120, 2013. [https://doi.org/10.7236/JIIBC.2013.13.1.115]
- M. McCarthy, M. Seidl, S. Mohan, J. Hopkin, A. Stevens and F. Ognissanto, Access to In-vehicle Data and Resources, European Commission, Vol.1.0, Final Report, 2017.
- S. I. Kim and A. R. Joe, “An Odometer Protection Protocol for Prevention to forge on Mileage,” KSAE Spring Conference Proceedings, pp.891-896, 2018.
- Tencent Keen Security Lab: Experimental Security Assessment on Lexus Cars, https://keenlab.tencent.com/en/2020/03/30/Tencent-Keen-Security-Lab-Experimental-Security-Assessment-on-Lexus-Cars/, , 2020.
- E. Seo and H. K. Kim, “Security of Self-Driving Car from the Point of View of In-Vehicle System,” Transactions of KSAE, Vol.26, No.2, pp.240-253, 2018. [https://doi.org/10.7467/KSAE.2018.26.2.240]
- J. Jung and J. Cho, “KHU-TEE: A Security Platform for IoT Devices Based on ARM PSA,” KIISE Transactions on Computing Practices, Vol.26, No.5, pp.244-249, 2020. [https://doi.org/10.5626/KTCP.2020.26.5.244]
- S. Tanis, “Automotive Radar and Congested Spectrum: Potential Urban Electronic Battlefield,” Microwave Journal, Vol.62, No.1, pp.48-58, 2019.
- S. K. Jeong, T. H. Kim, C. S. Sin and S. U. Lee, “Technical Trends of Smart Jamming for GPS Signal,” Electronics and Telecommunications Trends, Vol.27, No.6, pp.75-82, 2012.
- O. Avatefipour and H. Malik, “State-of-the-art survey on In-Vehicle Network Communication (CAN-Bus) Security and Vulnerabilities,” arXiv preprint arXiv:1802.01725, , 2018.
- S. Park and J. Y. Choi, “Malware Detection in Self-driving Vehicles Using Machine Learning Algorithms,” Journal of Advanced Transportation, Vol.2020, 2020. [https://doi.org/10.1155/2020/3035741]
- C. Miller and C. Valasek, Remote Exploitation of an Unaltered Passenger Vehicle, Black Hat, USA, 2015.
- S. Halder, A. Ghosal and M. Conti, “Secure OTA Software Updates in Connected Vehicles: A Survey,” arXiv preprint arXiv:1904.00685, , 2019. [https://doi.org/10.1016/j.comnet.2020.107343]
- D. Lee, “Threats according to the Type of Software Updates and White-List Construction Scheme of Advanced Security,” Journal of the Korea Institute of Information and Communication Engineering, Vol.18, No.6, pp.1369-1374, 2014. [https://doi.org/10.6109/jkiice.2014.18.6.1369]
- G. Kim and I. Y. Jung, “Integrity Assurance of OTA Software Update in Smart Vehicles,” International Journal on Smart Sensing and Intelligent Systems, Vol.12, No.1, pp.1-8, 2019. [https://doi.org/10.21307/ijssis-2019-011]
- K. Mansoor, A. Ghani, S. A. Chaudhry, S. Shamshirband, S. A. K. Ghayyur and A. Mosavi, “Securing IoT-Based RFID Systems: A Robust Authentication Protocol Using Symmetric Cryptography,” Sensors, Vol.19, No.21, Paper No.4752, 2019. [https://doi.org/10.3390/s19214752]
- L. Wouters, J. Van den Herrewegen, F. D. Garcia, D. Oswald, B. Gierlichs and B. Preneel, “Dismantling DST80-based Immobiliser Systems,” IACR Transactions on Cryptographic Hardware and Embedded Systems, Vol.2020, No.2, pp.99-127, 2020. [https://doi.org/10.46586/tches.v2020.i2.99-127]
- A. Tierney, Reverse Engineering Tesla Hardware, Pen Test Partners, https://www.pentestpartners.com/security-blog/reverse-engineering-tesla-hardware, , 2020.
- F. Smirnov, F. Reimann, J. Teich and M. Glaß, “Automatic Optimization of the VLAN Partitioning in Automotive Communication Networks,” ACM Transactions on Design Automation of Electronic Systems, Vol.24, No.1, pp.1-23, 2019. [https://doi.org/10.1145/3278120]
- E. K. Caberto, Securing Controller Area Networks in Vehicles Via Packet Switched Network Segregation, M. S. Thesis, Air Force Institute of Technology, Ohio, 2017.
- S. Nie, L. Liu and Y. Du, Free-fall: Hacking Tesla from Wireless to CAN Bus, Briefing, Black Hat, USA, 2017.
- Bc. F. Machala, Tesla Model 3 Internal Network Security Analysis, Ph. D. Dissertation, Czech Technical University in Prague, Czech Republic, 2020.
- C. Yan, W. Xu and J. Liu, “Can You Trust Autonomous Vehicles: Contactless Attacks against Sensors of Self-driving Vehicle,” Def Con, Vol.24, No.8, Paper No.109, 2016.
- A. Jain, L. Zhang and L. Jiang, High-Fidelity Sensor Calibration for Autonomous Vehicles, Lyft Self-Driving, https://medium.com/lyftself-driving/high-fidelity-sensor-calibration-for-autonomous-vehicles-6af06eba4c26#:~:text=This%20allows%20the%20AV%20to,into%20a%20common%20coordinate%20frame, , 2019.
- D. Nassi, R. Ben-Netanel, Y. Elovici and B. Nassi, “MobilBye: Attacking ADAS with Camera Spoofing,” arXiv preprint arXiv:1906.09765, , 2019.