TrustZone 기반 OP-TEE 환경에서 메모리 손상 버그 탐지를 위한 AddressSanitizer 적용 가능성 분석
Analyzing the Applicability of AddressSanitizer for Memory Corruption Detection in TrustZone-based OP-TEE Environments
0
조회
0
다운로드
0
인용
0
참고문헌
키워드
초록
본 연구는 ARM TrustZone 기반 Trusted Execution Environment(TEE)에서 메모리 오류 탐지 기법의 적용 가능성을 분석한다. 기존의 메모리손상 탐지 기법인 AddressSanitizer(ASAN)와 Kernel AddressSanitizer(KASAN)는 일반 운영체제 및 커널 환경에서 효과적으로 사용되어 왔으나,제한된 실행 환경인 TEE에서는 그 적용이 충분히 검증되지 않았다. 본 연구는 OP-TEE 환경에서 Trusted Application(TA) 및 Trusted Kernel(TK)을대상으로 ASAN의 동작 여부를 실험적으로 검증하였으며, TA에서는 ASAN이 정상적으로 동작하지 않음을 확인하였다. 또한 스택 카나리(StackCanary) 기법은 TA와 TK 모두에서 안정적으로 지원됨을 확인하였다. 이를 위해 버퍼 오버플로우, use-after-free 등 다양한 메모리 손상 버그를주입하여 검증 실험을 수행하였다. 아울러 ASAN이 TA에서 동작하지 않는 원인을 실행 구조, 메모리 매핑, 로딩 과정 등의 관점에서 분석하였다. 이러한 결과는 TEE 환경에서의 런타임 버그 탐지 한계를 보여주며, 메모리 버그 탐지 대체 기법의 필요성을 시사한다.
Abstract
This paper investigates the applicability of memory error detection techniques within ARM TrustZone-based Trusted ExecutionEnvironments (TEEs). While AddressSanitizer (ASAN) and Kernel AddressSanitizer (KASAN) have proven effective in general-purposeoperating systems and kernels, their feasibility in restricted execution environments such as TEEs remains insufficiently explored. Weexperimentally evaluated ASan in the OP-TEE environment on both Trusted Applications (TAs) and the Trusted Kernel (TK), and confirmedthat ASAN does not operate properly within TAs. In contrast, the stack canary mechanism was verified to function reliably in both TAand TK. To validate these findings, we performed bug injection tests targeting various memory corruption vulnerabilities, including bufferoverflows, use-after-free. Furthermore, we analyzed the causes of ASAN's failure in TAs from the perspectives of execution structure,memory mapping, and loading processes. These results highlight the limitations of applying sanitizer-based runtime detection in TEEsand emphasize the need for alternative memory bug detection approaches.
