BAC 데이터 그룹: 보안 위험 및 부정 사용 가능성 (KO)
e-여권의 BAC(Basic Access Control) 데이터 그룹 구조를 살펴보고 잠재적 취약점 및 데이터 유출 위험을 분석합니다. Icao9303 및 유사 난수 생성 방식의 공격 활용 사례를 알아봅니다.

BAC 데이터 그룹: 보안 위험 및 부정 사용 가능성
ICAO 9303 표준을 사용하는 e-여권은 현대 국제 여행의 초석이 되었습니다. 그러나 이러한 문서의 보안은 완벽하지 않습니다. 중요한 구성 요소는 칩에 저장된 민감한 데이터에 대한 액세스를 관리하는 BAC(Basic Access Control) 시스템입니다. BAC 데이터 그룹의 복잡성, 잠재적 약점, 악용 방법을 이해하는 것은 강력한 신원 확인 및 사기 방지에 매우 중요합니다. 이 글에서는 BAC의 기술적 측면을 심층적으로 살펴보고 잠재적인 취약점과 칩 손상 사기의 증가하는 위협을 살펴봅니다.
핵심 내용 1: BAC은 유사 난수 생성에 의존합니다. 이 프로세스의 약점은 예측 가능한 키와 무단 데이터 액세스로 이어질 수 있습니다.
핵심 내용 2: Icao9303 BAC 데이터 그룹 구조는 키 분산 및 액세스 제어 정책과 관련하여 취약점을 발생시킵니다.
핵심 내용 3: 공격자는 유사 난수 생성의 예측 가능한 패턴을 악용하여 칩의 데이터를 해독하고 조작할 수 있습니다.
핵심 내용 4: 강력한 신원 확인 시스템은 기본 칩 읽기 이상으로 데이터 유출 시도 감지를 위한 고급 보안 조치를 통합해야 합니다.
BAC 및 데이터 그룹 이해
Icao9303 표준은 e-여권 칩 내 데이터 구조 방식을 정의합니다. BAC 시스템은 이 데이터에 대한 액세스를 제어하고, 이를 서로 다른 '데이터 그룹'으로 나눕니다. 각 데이터 그룹에는 개인 정보, 생체 데이터 또는 보안 정보와 같은 특정 정보가 포함되어 있습니다. 이러한 그룹에 대한 액세스는 Document Security Object(SOD)에서 파생된 키로 제어됩니다. SOD에는 데이터를 암호화하고 인증하는 데 사용되는 키가 포함되어 있습니다. 중요한 점은 이러한 키가 데이터를 직접 액세스하는 데 사용되지 않고 세션 키를 생성하는 데 사용된다는 것입니다.
BAC은 계층적 키 파생 함수를 사용합니다. SOD에는 Country Signing Certification Authority(CSCA) 키와 Document Signing(DS) 키가 포함되어 있습니다. 이러한 키는 각 데이터 그룹에 대한 'BAC 키'를 생성하는 데 사용됩니다. 이 프로세스는 유사 난수 생성에 크게 의존합니다. 바로 여기서 취약점 발생 가능성이 나타납니다. 유사 난수 생성기가 예측 가능하면 공격자는 BAC 키를 재구성하여 여권 데이터에 무단으로 액세스할 수 있습니다.
유사 난수 생성의 역할
BAC 보안은 BAC 키를 파생하는 데 사용되는 유사 난수 생성기(PRNG)의 품질에 달려 있습니다. 성능 제약으로 인해 이 응용 프로그램에 진정한 난수 생성기를 사용하는 것은 비현실적입니다. 대신 SOD에서 파생된 고유한 값으로 시드된 결정적 알고리즘이 사용됩니다. 이 시드의 품질과 PRNG 알고리즘의 강도가 가장 중요합니다. 불행히도 Icao9303의 초기 구현에서는 종종 약한 PRNG를 사용했습니다.
공격자가 시드 또는 PRNG의 출력을 예측할 수 있으면 BAC 키를 파생시키고 액세스 제어 메커니즘을 우회할 수 있습니다. 이는 이론적인 문제가 아닙니다. 여러 공격에서 PRNG 구현의 알려진 약점을 기반으로 BAC 키를 예측하는 것이 가능하다는 것이 입증되었습니다. 이러한 키의 예측 가능성은 많은 여권 발급 당국이 유사하거나 동일한 PRNG 알고리즘 및 시드 방법을 사용한다는 사실로 인해 더욱 심화됩니다.
BAC 데이터 그룹 구조의 약점
PRNG 외에도 BAC 데이터 구조 자체의 구조도 취약점을 나타낼 수 있습니다. 특히 각 데이터 그룹에 대해 다른 키를 생성하는 데 사용되는 키 분산 체계는 충분히 강력하지 않을 수 있습니다. 일부 구현에서는 분산 프로세스가 비교적 간단하여 키 간에 예측 가능한 관계가 발생합니다. 공격자가 BAC 키 하나를 결정하면 다른 키를 외삽할 수 있습니다.
또한 액세스 제어 정책 자체에 결함이 있을 수 있습니다. 예를 들어 일부 여권은 특정 데이터 그룹에 필요한 것보다 더 광범위한 액세스 권한을 부여하여 공격 표면을 늘릴 수 있습니다. 잘못 구성된 액세스 제어 정책을 통해 공격자는 적절한 인증 없이 민감한 데이터를 읽을 수 있습니다. Icao9303 표준은 액세스 제어에 유연성을 허용하지만 이 유연성은 취약점을 도입하지 않도록 신중하게 구현해야 합니다.
악용 및 실제 공격
연구자들은 BAC 구현의 약점을 악용하는 공격을 시연했습니다. 이러한 공격에는 일반적으로 칩에서 SOD를 추출하는 과정(여권에 대한 물리적 액세스가 필요)과 PRNG 또는 키 분산 체계의 약점을 사용하여 BAC 키를 파생시키는 과정이 포함됩니다. BAC 키를 얻으면 공격자는 칩에 저장된 데이터를 읽고 수정할 수도 있으므로 위조된 문서를 만들거나 신원 정보를 변경할 수 있습니다.
이러한 공격은 칩의 전력 소비 또는 전자기 방출을 모니터링하여 키 및 사용된 알고리즘에 대한 정보를 추론하는 것과 같은 고급 기술인 측면 채널 분석을 활용하여 점점 더 정교해지고 있습니다. 특수 도구 및 쉽게 사용할 수 있는 악용 코드의 출현으로 공격자의 진입 장벽이 낮아져 이러한 공격이 더욱 보편화되고 있습니다. 이러한 기술이 널리 퍼짐에 따라 데이터 유출의 위험이 중요합니다.
Didit의 도움
Didit의 신원 확인 플랫폼은 BAC 취약점과 관련된 위험을 완화하기 위해 기본 칩 읽기 이상의 기능을 제공합니다:
- 고급 칩 읽기: 암호화 칩 읽기(NFC 확인)를 활용하여 칩의 디지털 서명을 확인하고 데이터 무결성을 보장합니다.
- 이상 감지: 당사 플랫폼은 칩에서 읽은 데이터의 의심스러운 패턴을 식별하여 잠재적인 변조 또는 사기를 나타내는 정교한 이상 감지 알고리즘을 사용합니다.
- 데이터 유효성 검사: 칩에서 추출한 데이터를 외부 데이터베이스 및 공식 정부 소스와 교차 참조하여 진위 여부를 확인합니다.
- 실시간 생체 인식: 통합된 생체 인식은 스푸핑 공격의 사용을 방지하여 여권을 제시하는 사람이 합법적인 소유자인지 확인합니다.
- 실시간 위협 인텔리전스: Didit은 새로운 공격 벡터 및 취약점에 앞서 나가기 위해 위협 인텔리전스 피드를 지속적으로 업데이트합니다.
시작할 준비가 되셨습니까?
Didit의 강력한 신원 확인 솔루션을 통해 비즈니스 및 고객을 여권 사기로부터 보호하세요. 오늘 데모를 요청하여 당사가 운영을 보호하는 데 어떻게 도움이 되는지 알아보세요. 기술 문서를 탐색하여 기능에 대해 자세히 알아보세요.