[논문 리뷰] Interleaving Command Sequences: a Threat to Secure Smartcard Interoperability
이 논문은 안정적인 스마트카드 상호운용성에 있어 교차 실행 명령어 시퀀스가 심각한 위협임을 규명하며, 공통 기준(CC) 인증을 받은 디지털 서명 프로세스가 다른 스마트카드 유형의 외부 APDU를 암묵적으로 수락할 수 있음을 입증한다. 이로 인해 오류 메시지 없이 감지되지 않는 손상 또는 영구적인 손상(예: MSE 삭제)이 발생할 수 있다. 연구는 이러한 공격이 인증 검사를 우회하고 오류 없이 보안을 침해할 수 있음을 실험적으로 검증하며, 다중 애플리케이션 환경에서 안정적인 보안을 확보하기 위해 미들웨어 수준의 이질성 탐지 기능을 강화할 것을 촉구한다.
The increasingly widespread use of smartcards for a variety of sensitive applications, including digital signatures, creates the need to ensure and possibly certify the secure interoperability of these devices. Standard certification criteria, in particular the Common Criteria, define security requirements but do not sufficiently address the problem of interoperability. Here we consider the interoperability problem which arises when various applications interact with different smartcards through a middleware. In such a situation it is possible that a smartcard of type S receives commands that were supposed to be executed on a different smartcard of type S'. Such "external commands" can interleave with the commands that were supposed to be executed on S. We experimentally demonstrate this problem with a Common Criteria certified digital signature process on a commercially available smartcard. Importantly, in some of these cases the digital signature processes terminate without generating an error message or warning to the user.
연구 동기 및 목표
- 공유된 미들웨어를 통해 다른 애플리케이션에서 유도된 예기치 않은 APDU를 수신할 경우 스마트카드에 발생할 수 있는 보안 위험을 조사하는 것.
- 동시 다중 애플리케이션 워크로드 상황에서 공통 기준 인증이 안정적인 상호운용성을 보장하지 못할 수 있음을 입증하는 것.
- 정상적인 프로세스 외의 명령어가 오류 없이 수락되어 SEO 삭제와 같은 영구적 손상으로 이어지는 상황을 규명하는 것.
- 기존 CC 인증을 활용하여 유해한 교차 실행 시퀀스를 탐지하고 방지할 수 있는 확장 가능한 모델 체킹 기법을 제안하는 것.
- 다양한 스마트카드 유형과 애플리케이션 간의 상호운용성을 공식적으로 인증하기 위해 공통 기준을 확장할 것을 주장하는 것.
제안 방법
- 저자들은 디지털 서명 프로세스를 명확한 명령어 순서를 가진 직선 프로그램으로 모델링하며, 각 APDU를 특정 스마트카드 유형에서 인증된 실행 경로의 단계로 간주한다.
- 모든 스마트카드 유형에서 원래의 인증된 미들웨어 실행 경로에 포함된 명령어를 '전역적으로 허용되는' 명령어로 정의한다.
- 모델 체커(C-Murphi)를 사용하여 다중 애플리케이션의 교차 실행 명령어 시퀀스를 시뮬레이션하여 이질성을 탐지한다.
- 실제 상용으로 유통되는 공통 기준 인증을 받은 스마트카드를 대상으로, 수정된 또는 외부 APDU의 수용 여부를 실험한다.
- 十六진수 형식으로 표현된 APDU 시퀀스를 분석하여 표준 명령어와 수정된 명령어를 비교함으로써 암묵적 처리 여부를 탐지한다.
- 실시간으로 해로운 교차 실행을 탐지하고 차단하기 위해 경량의 '워치독' 모델 체커를 미들웨어에 통합하는 것을 제안한다.
실험 결과
연구 질문
- RQ1공통 기준 인증을 받은 스마트카드가 디지털 서명 프로세스 중에 외부 또는 수정된 APDU를 오류 없이 암묵적으로 수락할 수 있는가?
- RQ2여러 스마트카드가 동시에 사용될 경우 기존의 공통 기준 인증이 안정적인 상호운용성을 확보하지 못하는 정도는 어느 정도인가?
- RQ3다른 애플리케이션의 명령어가 교차 실행될 경우, 특히 'MSE Erase'와 같은 파괴적 작업을 포함할 경우 어떤 결과가 초래되는가?
- RQ4실제 스마트카드 시스템에서 가능한 모든 교차 실행 명령어 시퀀스를 검증하기 위해 브루트포스 모델 체킹이 실현 가능한가?
- RQ5모델 체킹을 어떻게 최적화하여 포괄적 검색 없이도 효율적으로 해로운 교차 실행을 탐지할 수 있는가?
주요 결과
- 디지털 서명 프로세스 중에 스마트카드는 수정된 인증된 명령어 순서에서 유래된 외부 APDU를 오류나 경고 없이 암묵적으로 수락하였다.
- 정상적인 서명 프로세스 외부의 'MSE Erase' 명령어가 성공적으로 실행되어 보안 환경 객체가 영구적으로 삭제되어 카드를 사용할 수 없게 되었다.
- 실험 결과, 'MSE Erase' 명령어를 실행하기 위해 PIN이나 PUK이 필요하지 않아 대규모 악용에 매우 높은 위험성을 지닌 취약점임을 확인하였다.
- 10단계 프로세스와 16비트 명령어를 간단화한 모델 조차도 교차 실행 가능한 순서의 수가 10^10을 초과하여 브루트포스 테스트는 실현 불가능한 것으로 나타났다.
- 연구는 모델 체킹이 이러한 이질성을 탐지할 수 있음을 확인했지만, 실질적인 미들웨어 환경에서 활용하기 위해서는 기존 CC 인증을 활용한 최적화가 필수적임을 밝혔다.
- 저자들은 경량이며 인증 인식 기반의 모델 체커를 미들웨어에 통합하여 런타임 '워치독'으로서 해로운 교차 실행 시퀀스를 방지할 수 있음을 결론 내렸다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.