차량 NFC 디지털 키 릴레이 공격이 실제로 성공한 사례, 무엇이 문제였나

차량 NFC 디지털 키 릴레이 공격이란, 공격자가 암호를 깨지 않은 채 유효한 APDU 명령을 실제 NFC 카드와 차량 사이에서 중계(릴레이)하여 양쪽이 정당한 상대와 통신한다고 믿게 만드는 기법이다. 이 기법이 특정 CCC Digital Key 기반 NFC 구현에서 실제로 문 개방과 2차 시동 인가 완료까지 이어진 인가 테스트 사례가 보고되어, 인포테인먼트·접근 제어 팀과 IT·보안 운영 담당자가 점검 대상에서 제외할 수 없는 현안이 되었다.

본 글은 2026년 8월 31일 기준 SecurityDesk 리포트와 그 1차 출처인 Medium 공개 글에 기술된 단일 사례를 근거로, 공격 성립 조건·절차·구조적 취약점·운영 대응 항목을 정리한다. 해당 사례는 특정 차량·특정 CCC Digital Key NFC 구현·인가 테스트 환경에 한정되며, 다른 모델이나 플랫폼에 동일하게 적용되는지는 이 자료만으로 확인할 수 없다. 독립적 검증 역시 발견되지 않아 단일 출처에 의존하는 한계가 있다.

NFC 카드키 릴레이 공격, 어떻게 차를 훔치나

상용 차량에서 NFC 카드키가 수행하는 물리적 동작은 명확하다. 기아멤버스 공식 안내에 따르면, 도어 핸들에 장착된 NFC 안테나로 카드 접근 권한을 검증해 도어 잠금·해제를 하고, 차내 무선충전패드에 탑재된 NFC 안테나를 통해 시동 인가를 수행한다. 이 두 지점이 릴레이 공격의 물리적 공격 표면이 된다.

릴레이 공격의 핵심은 “암호를 깨지 않는다”는 점이다. 인증 프로토콜 자체는 카드가 유효한 자격 증명을 지녔는지를 증명할 뿐, 카드의 물리적 근접성까지 확인하지 않는다. 차량이 “이 카드를 소유한 사람이 지금 도어 핸들 앞에 있다”고 전제하는 순간, 그 전제가 거짓이어도 인증 절차는 정상 완료된다. 원문에서는 이를 “Authenticity does not directly mean proximity”라고 표현한다.

공격 조건: 안드로이드 폰 2대와 NFCGate

이번 인가 테스트에서 공격에 사용된 구성은 다음과 같다.

  1. 공격자 2명
  2. NFC 중계 애플리케이션 NFCGate를 실행하는 Android 폰 2대
  3. 공격자 1: 차량 NFC 리더(도어 핸들 또는 무선충전패드) 쪽에서 폰을 대어 중계
  4. 공격자 2: 실제 NFC 카드 쪽에서 폰을 대어 중계

NFCGate는 NFC 중계 통신을 돕는 애플리케이션으로, 두 폰을 연결해 카드와 차량 간 “유주 중계 통신 세션(active relayed communication session)”을 형성한다. NFCGate 외 다른 NFC 중계 도구나 다른 Android/iOS 환경에서의 공격 성립 여부는 이 증거 범위 밖이다.

구성 요소 역할 비고
NFCGate 실행 Android 폰 (공격자 1) 차량 NFC 리더와 카드 간 APDU 중계 (차량 쪽) 도어 핸들·무선충전패드 대응
NFCGate 실행 Android 폰 (공격자 2) 실제 NFC 카드와 차량 간 APDU 중계 (카드 쪽) 2차 인증까지 카드 유지
CCC Digital Key 기반 수동 NFC 카드 유효한 자격 증명 보유 UWB 트랜시버 미탑재
차량 NFC 리더 (도어 핸들) 1차 인증: APDU 명령 수신·응답 물리적 근접성 미검증
차량 무선충전패드 NFC 안테나 2차 인증: 주행 인가 APDU 교환 공격자 1 폰이 패드에 올려짐

해금에서 주행 인가까지: 실제 공격 절차

인가 테스트에서 확인된 순서는 다음과 같다.

  1. 1차 인증 (문 개방): 공격자 1이 차량 NFC 리더 쪽에 폰을, 공격자 2가 NFC 카드 쪽에 폰을 대고 NFCGate로 중계 세션을 형성한다. 1차 인증이 시작되면 유효한 APDU 명령이 중계되고, 인증 성공으로 차량이 해금된다.
  2. 2차 인증 (주행 인가): 공격자 1은 무선충전패드에 Android 폰을 올리고, 공격자 2는 NFC 카드에 폰을 계속 대고 있다. 2차 인증 라운드가 완료되면 주행 인가가 내려온다.
  3. 차량 이동: 2차 인증 완료 후 공격자 1이 차량을 운전하고 이탈하며, 공격자 2는 더 이상 카드에 접근할 필요가 없다.

여기서 주목할 점은 하나다. 차량이 시동을 인가하는 순간 “카드가 도어 핸들 바로 앞에 있어야 한다”는 물리적 조건이 프로토콜 레벨에서 강제되지 않는다.

왜 암호를 깨지 않고도 가능한가

구조적 원인은 CCC Digital Key 기반 NFC 인증 프로토콜의 설계 전제에 있다.

  • 인증은 카드의 자격 증명 유효성을 검증한다. 이 카드가 유효한 자격 증명을 보유하는지를 확인하는 셈이다.
  • 그러나 해당 구현·프로토콜 조건에서는 카드의 물리적 근접성까지 확인하지 않는다.
  • 공격자가 실제 카드와 차량 사이를 중계하면 차량은 “등록된 카드가 바로 앞에 있다”는 전제 하에 인증을 정상 완료한다.

원문 표현을 인용하면, “릴레이 공격은 암호를 깨지 않고, 양쪽 엔드포인트가 정당한 엔드포인트와 대화하고 있다고 믿게 만든다. 실제로는 그렇다—그것은 진짜 카드이고 진짜 차량이기 때문이다”.

UWB·RTT로도 막기 어려운 이유

“그냥 거리만 측정하면 되지 않나”는 질문이 자연스럽게 따라온다. 그러나 이번 사례 범위에서 두 가지 구조적 장애가 확인된다.

UWB time-of-flight 검증의 한계
UWB는 time-of-flight 기반 거리 측정으로 능동 기어(스마트폰)에 적합한 대응책이지만, 해당 공격에 사용된 수동 NFC 카드는 UWB 트랜시버나 UWB 대역 통신 하드웨어를 갖추지 못해 UWB 기반 거리 검증이 구조적으로 불가능하다. UWB가 실제로 어떤 차량·플랫폼에 적용돼 있고 향후 적용 계획이 있는지는 이 증거에 나와 있지 않다.

APDU RTT 기반 거리 측정의 한계
수동 NFC 카드에는 WTX(wait) 명령이 있다. 이 명령은 카드가 대규모 명령을 계산할 시간을 벌기 위해 응답 시간을 늘리는 용도이며, 일반 APDU 왕복 시간(RTT) 기반 거리 측정을 무력화한다. WTX로 인한 RTT 측정 우회의 구체적 시간·거리 경계치는 제시되지 않았다. RTT만으로 카드의 근접 여부를 신뢰성 있게 판별하는 것은 불가능하다.

현실적 대응: PIN to Drive 등 다중인자 인증

자료에서 확인된 실질 완화책은 다중인자 인증 도입이다. PIN to Drive는 차량이 시동 인가를 위해 PIN을 요구하는 방식으로, 공격자가 릴레이 공격만으로 차량을 운전할 수 없게 만든다. 릴레이 공격의 실행 가능성 자체를 제거하는 것은 아니지만, 차량 절도를 방지하는 추가 보안 레이어를 제공한다.

운영 점검 체크리스트

아래 항목은 이번 사례 범위에 기반한 점검 포인트다. 이 사례가 단일 차량·단일 구현·인가 테스트 환경에 한정된 것임을 전제로 한다.

  1. 프로토콜 레벨 근접성 검증 여부: 현재 운영 중인 CCC Digital Key NFC 인증 플로우에서, APDU 세션 완료 후 물리적 근접성 확인 단서가 있는가? 해당 구현·프로토콜 조건에서 근접성이 확인되지 않는다는 점을 재확인할 필요가 있다.
  2. 2차 인증(주행 인가) 물리적 배치 조건: 무선충전패드에서 2차 인증이 완료되는 물리적 배치(차내/차외 허용 범위)의 정확한 거리 조건이 명시되어 있지 않다. 자체 테스트에서 해당 조건을 문서화할 것을 권장한다.
  3. 다중인자 인증(PIN to Drive 등) 적용 여부: 시동 인가 단계에 추가 요인 요구가 활성화되어 있는지, 사용자 설정에서 우회 가능한지 점검한다.
  4. 수동 카드 vs 능동 기어 공격 표면 분리: UWB distance check가 능동 기어(스마트폰)에만 적용 가능한 구조이므로, 수동 NFC 카드를 지원하는 차량에서는 별도 완화 조치가 필요한지 설계 관점에서 검토한다.
  5. 펌웨어·모델 특정 확인: 적용 차량 모델과 키 펌웨어 버전이 본 자료에 제시되지 않아, 자체 운영 차량의 펌웨어 버전과 취약성 적용 가능성을 별도 확인해야 한다.
  6. 중계 도구의 광범위성 가정 금지: 본 사례는 NFCGate·Android 환경에 한정된다. 이를 “모든 NFC 중계 시나리오가 성립한다”로 확대 해석하지 말되, 다른 도구·플랫폼에 대한 별도 평가 계획도 함께 수립한다.

한계와 후속 확인 사항

  • 본 글이 인용하는 모든 사실은 2026년 8월 31일 발행 SecurityDesk 리포트와 그 1차 출처 Medium 글에 기반한다. 해당 자료는 AI 기술로 작성된 분석 리포트를 담고 있으며, 독립적 검증이 발견되지 않았다.
  • 실제 야외 차량 절도 사례(실전 악용)의 존재 여부와 빈도, 공격 성공률·소요 시간 등 정량 수치는 이 자료에 제시되지 않았다.
  • 다른 모델·플랫폼·펌웨어 버전에서의 동일 취약성 존재 여부는 확인되지 않는다.

인포테인먼트·접근 제어 팀에게 남은 과제는 두 가지다. 현재 운영 중인 NFC 디지털 키 인증 플로우에서 “자격 증명 유효성 = 물리적 근접성”으로 전제하는 구간이 남아 있는지 프로토콜 스펙과 펌웨어 로직 단위로 재점검하는 일, 그리고 시동 인가 단계에 다중인자 요건을 추가할지 근접성 검증 메커니즘을 도입할지를 설계 의사결정 사항으로 올리는 일이다.

댓글 남기기