본문 바로가기
자동차 사이버보안/스마트 카 기술

스마트 키 기술 : PKES(Passive and Keyless Entry System) - 3. Tesla PKES 원리 및 취약점

by HYS Blog 2023. 3. 27.

안녕하세요 ^^
 
이번 포스팅은 저번에 이어 ’스마트 키 기술‘ 및 Tesla의 PKES 원리 그리고 취약점에 대해 설명할 예정인데요 !
 
관심있게 봤던 논문을 위주로 작성할 예정입니다~
 
해당 논문은 무려 NDSS(정보보안쪽 세계 3대 저널..?)에 실린 논문이며
 
2023.03.에 게제된 따끈따근한 논문입니다!

 

1. Tesla PKES의 BLE기술

 

기존 PKES는 RF(Radie Frequency), LF(Low Frequency)등의 방식을 썻지만 Tesla의 PKES는 BLE(Blutoot Low Energy) 기술을 적용하였습니다.
 
BLE는 적은 전력을 소모하며 무선으로 통신할 수 있는 기술로, 스마트폰 등 모바일 기기와 통신할 때 많이 사용됩니다.
 
PKES에 BLE를 적용하면 스마트폰을 통해 에너지 저장 장치의 상태를 모니터링하고 제어할 수 있어서 사용자의 편의성이 크게 향상됩니다.
 
또한, BLE는 무선 통신 거리가 짧아서 보안성이 높아지는 장점이 있습니다. 이는 PKES가 에너지 저장 장치로서 매우 중요한 역할을 하고 있기 때문에, 사용자의 개인 정보와 데이터 보호에 큰 도움이 됩니다.
 
TESLA의 PKES는 BLE를 통해 사용자 친화적이고 보안성이 높은 솔루션을 제공하며, 미래 지속 가능한 에너지 시스템에 대한 기대감을 높이고 있습니다.
 

 기존 PKESTesla PKES
통신 방식RF(Radio Frequency)RF, BLE
암호화 방식AES(Advanced Encryption Standard) 등공개키 암호, DST80사용
연동성타 제조사 간 연동 가능Tesla만 연동
스마트폰 연동 여부일부 지원 EX)Telematics스마트폰과 연동하여 잠금해제, 시동, 차량 위치 확인 기능 포함

2. Tesla PKES의 취약점
(논문 참조 : Access Your Tesla without your Awareness: Compromising Keyless Entry System of Model 3)

 
다음 논문을 참조하여 Tesla의 취약점이 무엇이며 어떤 방식의 실험을 통해 취약점을 찾았는지 설명하도록 하겠습니다
 
먼저 Telsa의 Keyless System은 아래와 같이 차량과 스마트폰 간 BLE로 연결되어 있습니다.

그리고 아래와 같이 총 2개의 Key가 있으며 Key Card는 주로 RF 연결, Phone Key는 스마트폰에 저장된 Key라고 생각하시면 됩니다
 

1) Key Card Threats

 
Tesla의 Key Card는 다음과 같은 사양으로 이루어져있습니다
 

  • NIST P-256기반 Public-Private Key pair 생성 프로세스
  • ECDH(비밀 키 생성)
  • AES(AES0GCM 알고리즘) --> 메시지 암호 및 인증
  • ISO 14443이 RFID 통신 프로토콜

 
이처럼 같은 사양으로 이루어져있기에 논문의 연구팀은 "같은 사양만 맞춘다면 열 수 있지 않을까..?" 라고 생각하게 됩니다
 
또한 Key Card 등록과정은 인증서 정보가 필요 없기때문에 Key Card의 고유 ID값만 들고오면 열수있다는 이론이 성립됩니다
 
1) RFID 리더기로 Tesla에 RFID 에 저장되어있는 Key Card 정보 복사
2) Java Card로 New Key Card 준비
3) NFC relay attack 을 이용해 기존 Key Card --> New Key Card 정보 이동
4) 차량 제어
 
결론을 말씀드리자면, 실험은 대 성공이었습니다
 

이로써 동일 사양 + Key ID만 들고온다면 테슬라를 제어할수있음을 증명하게 됩니다

2) Phone Key Threat

다음은 Phone Key 위협에 관한 내용입니다.
 
논문 실험팀은 총 2개의 Device (Google Pixel 5A, Samsung Galaxy S9)을 준비하였습니다.
 
Google 폰의 용도는 1) 차량과 BLE 연결 유지용 2) 인증 프로세스 수행용 입니다

Samsung 폰의 용도는 1) Phone Key와 BLE 연결 유지 2) 차량 제어용 입니다
 
이처럼 2개의 폰을 사용한 이유는 만약 1개의 폰을 사용하게 된다면, 
차량과 연결하고, 또 다시 Phone Key와 연결해야 하는 대참사..?가 일어나기 떄문입니다..
 
이들은 실험을 위한 App인 TESmLA을 만들어 2개 폰에 설치하였으며,
이는 BLE 송수신 제어, 무단 액세스 권한 획득의 기능이 탑재된 APP입니다.

 

1. MAC Spoofing

Mac을 위조하는 방법이며 프로세스는 다음과 같습니다
 

  1. 차주가 차량 잠금 해제를 위해 스마트폰으로 인증 및 잠금 해제를 합니다
  2. Google 폰은 데이터 송 수신간 MITM 공격으로 신호(advertisement packat)를 캡쳐합니다
    해당 신호 안에는 차주 스마트폰의 Mac주소 정보등이 있습니다

  3. Google 폰은 자신의 MAC을 위조합니다.
    --> 이게 가능한 이유는 Android 폰에 BLE MAC Address Rotation이란 기능이 있기 떄문입니다

 

2. Preparation : Attestations Capture

다음은 Attestation이란 Package를 캡쳐해 인증정보 가로채는 과정입니다. 이를 통해 차량 접근 권한을 획득하는데 이는 다음 단계에 이어집니다
 

  1. 차주와 차량간 Device 연결이 유지된 상태입니다
  2. Google폰은 Attestation Package를 캡쳐합니다
    --> Package 내부엔 차주의 인증정보, Key값들에 대한 정보가 포함되어있습니다.
  3. Google폰은 차량과 BLE 연결을 형성합니다
    --> 이는 Smart Summon이라고해서, Tesla 원격 제어할 수 있는 기능을 가지고있으며, 이를 이용하기 위해 BLE 연결한다.

 

3. Attack: Unlock and Access

이번 단계에선 Samsung 폰이 차량 액세스 권한을 획득 후 차량을 제어합니다
 

  1. Samsung 폰은 수신한 Attestation Package에 포함된 인증정보를 이용하여 Phoen Key와 BLE연결을 합니다
  2. 전송 - 검증 - Token 반환 과정을 거치며 이는 Challenge-Response 과정과 같다 생각하시면 됩니다
  3. 인증 후, 차량 액세스 권한을 획득합니다.
  4. Samsung 폰은 Google 폰의 블루투스 중계 채널을 거쳐 멀리서 Tesla를 제어하게 됩니다

 
위와같이 Tesla의 취약점이 발견되었으며 이를 해결하기 위한 연구들이 계속 이어지고있습니다.
 
취약점 발견 전, 많은 OEM(자동차 제조사)들이 BLE기반 PKES를 사용하려 했으나 취약점 발견으로 중단된 상태입니다
 
논문 내용에 따르면 IEEE 802.15.4z에서 정의된 UWB에 많은 관심을 두고있다고 합니다.
 
다음 포스팅에선 UWB에 대한 설명을 하도록 하겠습니다
 
긴 글 읽어주셔서 감사합니다 ^^
 
 

참조문헌

[1] Xinyi Xie, Kun Jiang, Rui Dai (Shanghai Fudan Microeletronics Group Co. Ltd) . "Access Your Tesla without Your Awareness: Compromising Keyless Entry System of Model 3". Network and Distributed System Security (NDSS), 2023. 03