메인 콘텐츠로 건너뛰기
ARM /UKARMNASDAQ

ARM, (컴파일러) 스위치 전환으로 보안 강화: 포인터 인증 및 분기 대상 식별 활성화

회사 IRnewsroom.arm.com수정 AI 번역·요약원문 보기 ↗기사 중요도 높음

AI 요약 · 핵심 3줄

  • ARM의 새로운 보안 기술 PACBTI가 탑재된 Renesas의 신형 마이크로컨트롤러 RA8 시리즈가 출시되어 ARM의 기술력이 다시 한번 입증되었습니다.

Arm, 차세대 보안 기술 PAC 및 BTI로 소프트웨어 취약점 공략

기술이 우리 일상생활의 모든 측면에 더욱 깊숙이 자리 잡으면서, 방대한 데이터와 연결성은 삶을 변화시키는 복잡한 디지털 솔루션을 제공하고 있습니다. Arm의 컴퓨팅 아키텍트들에게 이러한 솔루션의 보안 관리는 최우선 과제이며, 이는 업계 전반의 태도에서도 반영됩니다. PSA Certified 2023 Security Report에 따르면, 기술 의사 결정권자의 75%가 보안을 비즈니스 우선순위로 꼽았습니다. Arm은 이러한 보안 모범 사례와 기술을 어떻게 발전시켜 나갈까요?

Arm은 실리콘 및 소프트웨어 파트너들과 함께 보안 모범 사례와 기술을 발전시키기 위한 포괄적인 전략을 추진하고 있습니다. 소프트웨어 보안 측면에서 Arm은 최근 아키텍처 릴리스에서 다양한 메모리 관련 보안 취약점을 겨냥해 왔습니다. 2019년, Armv8.5 명령어 세트의 일부로 Memory Tagging Extension(MTE)을 도입했습니다. 또한 Armv8.3-A에는 Pointer Authentication(PAC)을, Armv8.5-A에는 Branch Target Identification(BTI)을, Armv8.1-M에는 PACBTI 통합 지원을 도입했습니다. 이 모든 기술은 소프트웨어 신뢰성을 향상시키고, 대부분의 심각한 보안 버그를 차지하는 메모리 안전 위반 및 메모리 손상과 같은 특정 유형의 보안 취약점을 완화하는 데 도움을 주기 위해 설계되었습니다.

새로운 Renesas 마이크로컨트롤러, PACBTI로 보안 강화

지난 2023년 10월 31일, Renesas는 Arm의 현재까지 가장 성능이 뛰어나고 안전한 Cortex-M 프로세서인 Cortex-M85를 기반으로 제작된 최초의 마이크로컨트롤러(MCU) 시리즈인 RA8 시리즈를 발표했습니다. RA8 시리즈는 Arm Helium 기술을 탑재하여 DSP 및 ML 성능을 향상시키고, 혁신가들이 보안을 저해하지 않으면서 AI 기회를 활용할 수 있도록 지원합니다.

Renesas의 IoT Platform Division 부사장인 Daryl Khoo는 "우리는 Arm Cortex-M85와 Helium 기술을 RA8 시리즈에 구현하게 되어 기쁘게 생각합니다. 이는 까다로운 AI 구현 및 기타 사용 사례에 필요한 성능 향상을 제공합니다."라며, "또한, PSA Certified Level 3 RoT Component 인증을 목표로 하는 PACBTI와 새로운 RSIP-E51A 통합 보안 엔진은 개발자들에게 낮은 수준의 복잡성으로 변조 방지 기능을 제공하여, 다양한 산업 분야의 제품에서 필수적인 구성 요소가 된 복잡한 애플리케이션을 보호합니다."라고 덧붙였습니다.

Arm 아키텍처와 Renesas의 보안 IP에서 제공하는 성능 및 보안 향상 목록과 더불어, RA8 시리즈는 PACBTI 보안 확장을 도입한 최초의 Cortex-M 기반 실리콘입니다.

PAC 및 BTI가 소프트웨어 개발자에게 제공하는 이점

이 블로그에서는 PAC와 BTI가 소프트웨어 기반의 코드를 전혀 수정하지 않고도 보안 공격을 완화하는 데 어떻게 사용되는지 자세히 살펴봅니다. 이는 개발자들이 애플리케이션의 보안 방어에 유용한 도구가 됩니다. 또한 PAC와 BTI는 센서부터 스마트폰, 슈퍼컴퓨터에 이르기까지 기술 시장의 모든 영역을 아우르는 광범위한 Arm IP에서 사용할 수 있어 생태계 전반의 보안에 필수적입니다.

메모리 손상과 관련된 일반적인 위험은 무엇인가?

실행 중인 프로그램에서 포인터를 손상시키면 공격자의 목표를 지원하는 기능(예: 임의의 파일 또는 메모리 위치 읽기, 소켓 열기, 다른 프로세스 실행, 권한 상승 등)을 수행하는 소프트웨어 조각인 "가젯(gadgets)"으로 실행 흐름을 재지정할 수 있습니다. 공격자는 이러한 기능을 결합하여 기존 소프트웨어를 재사용하여 악의적인 공격을 수행할 수 있습니다. 가젯은 거의 모든 프로그램과 라이브러리에서 찾을 수 있으며, 종종 기계를 더 정교한 원격 공격에 노출시키는 발판으로 사용됩니다.

Return-Oriented Programming(ROP) 및 Jump-Oriented Programming(JOP)이란 무엇인가? 가젯과 어떤 관련이 있는가?

Return-Oriented Programming(ROP)과 Jump-Oriented Programming(JOP)은 메모리 손상을 사용하여 프로그램 실행을 사용 가능한 가젯으로 재지정하는 두 가지 공격 기법입니다. ROP 공격에서는 소프트웨어 스택에서 가젯을 찾아 새로운 프로그램을 형성하도록 연결합니다. 반면 JOP 공격은 함수 포인터나 case 문과 같이 공격자가 가젯을 연결하는 데 사용할 수 있는 다른 형태의 간접(절대) 분기를 끝내는 시퀀스를 대상으로 합니다.

PAC란 무엇인가? 이러한 공격으로부터 어떻게 보호하는가?

PAC는 주소를 사용하기 전에 수정되지 않았는지 확인하여 ROP를 방지하기 위한 방어 메커니즘입니다. Arm 명령어 세트 아키텍처(ISA)에 새로운 명령어가 추가되어 Cortex-A의 64비트 포인터 반환 주소 또는 Cortex-M의 32비트 포인터 반환 주소의 최상위 비트(상위 비트)에 인증 코드를 삽입합니다. 그런 다음 함수에서 반환하기 위해 주소를 사용하기 전에 인증 코드를 확인합니다. 결과적으로 공격자가 인증 코드나 주소를 수정하거나 스택의 반환 주소를 다른 반환 주소로 교체하는 것이 불가능해집니다. 이는 임의 코드 실행으로 이어지는 대신 예외를 트리거하여 프로그램을 중단시키기 때문입니다.

BTI란 무엇인가?

BTI는 JOP를 방지하기 위한 방어 메커니즘입니다. BTI의 전반적인 목표는 분기를 원래 의도된 위치로만 제한함으로써 다양한 "분기"에 걸쳐 더 강력한 보안 보증을 제공하는 것입니다. 이를 통해 공격자가 프로그램의 제어 흐름을 조작하기 어렵게 만듭니다. 분기는 점프 포인터를 수정하여 실행 스레드를 코드의 다른 위치(일반적으로 원하는 가젯)로 강제 점프하게 함으로써 임의 코드 실행에 악용될 수 있습니다. BTI는 Arm ISA에 분기 대상 개념을 추가하여, 분기 대상이 아닌 명령어로 분기하면 예외가 발생합니다. 공격자가 메모리를 손상시켜 분기가 잘못된 위치로 재지정되면 실행이 중단됩니다.

PAC 및 BTI가 제공하는 보호 수준은?

PAC와 BTI는 반환 및 분기 주소에 엄격한 제어를 추가함으로써 사용 가능한 ROP 및 JOP 가젯의 수를 엄청나게 줄입니다. 미국 국가안보국(NSA)은 PAC 및 BTI를 활용하는 Linux 배포판에서 사용 가능한 가젯이 50배 감소했다고 밝혔습니다. 한편, Arm 자체 연구에서는 PAC 및 BTI 활성화 후 glibc(Arm Cortex-A CPU 기준)에서 사용 가능한 가젯 수가 97% 이상 감소했습니다.

PAC 및 BTI 활용 방법

PAC 및 BTI는 최신 Armv9 아키텍처를 포함한 최근 아키텍처 전반에 걸쳐 Arm ISA의 일부로 추가되었습니다. 이러한 명령어는 코드를 컴파일할 때 바이너리에 자동으로 추가되어 사용 가능한 가젯 모음이 되지 않도록 합니다. 개발자가 해야 할 일은 빌드 지침에서 보안 보호 기능을 활성화하는 것뿐입니다.

PAC 및 BTI 명령어를 지원하는 프로세서는?

모든 Armv9-A CPU에는 프로세서에 PAC 및 BTI가 내장되어 있으며, 두 보안 기능에 대한 업데이트와 개선이 정기적으로 이루어지고 있습니다. 예를 들어, 최신 v9 세대 Cortex-A CPU에서 Arm은 Armv9 CPU 설계 전반에 걸쳐 보안 기능을 활성화할 때 성능 향상을 위한 새로운 QARMA3 PAC 알고리즘을 도입했습니다. Cortex-M 프로세서의 경우, Cortex-M85가 PAC 및 BTI 명령어를 지원합니다.

Cortex-A와 Cortex-M의 PAC 및 BTI 차이점은?

Cortex-A 운영 체제 및 애플리케이션은 PAC 및 BTI와 같은 보안 기능을 모든 바이너리에 배포할 때 세심한 주의가 필요한 거대한 생태계의 일부입니다. 올바른 옵션으로 모든 것을 다시 컴파일하는 것만으로는 충분하지 않으며, 다음과 같은 고려 사항이 필요합니다. 운영 체제에 지원이 포함되어야 하며, 수동으로 작성된 어셈블러 루틴과 BTI 지원 코드를 혼합할 때 추가적인 주의가 필요합니다. Cortex-M 프로세서를 기반으로 구축된 장치는 펌웨어가 처음부터 컴파일되는 경우가 많아 PAC 및 BTI와 일관된 전체 소프트웨어 스택을 생성하기 쉽기 때문에 문제가 적은 경향이 있습니다. 최신 Cortex-M 프로세서는 성능 면에서 애플리케이션 CPU와의 격차를 좁히고 있습니다. 따라서 CPU 중심 위협에 대해 동일한 수준의 주의를 기울이는 것은 놀라운 일이 아닐 것입니다.

어떤 컴파일러가 PAC 및 BTI 명령어를 지원하는가?

컴파일러 및 툴체인 기술 세트인 LLVM은 2018년 LLVM 버전 8이 출시된 이후 Cortex-A CPU 설계 전반에 걸쳐 PAC 및 BTI를 지원해 왔습니다. 한편, GNU 프로젝트에서 제작한 최적화 컴파일러인 GCC는 2022년 7월부터 Cortex-A CPU 설계 전반에 걸쳐 PAC 및 BTI를 지원해 왔습니다( -mbranch-protection=standard 사용). GCC 버전 13.1은 2023년 4월 Cortex-M85 프로세서에 대한 PAC 및 BTI 지원을 추가했습니다. Cortex-M 컴퓨팅 플랫폼의 경우, Arm Compiler 6(AC6)은 PACBTI 명령어를 지원하며, IAR Embedded Workbench for Arm은 Arm Cortex-M85에서 PACBTI를 지원합니다. PAC 및 BTI에 대한 하드웨어 지원에 대한 자세한 내용은 이 블로그를 참조하십시오.

어떤 프로그래밍 언어가 PAC 및 BTI를 지원하는가?

이론적으로 LLVM 또는 GCC 백엔드를 가진 모든 컴파일 언어가 지원될 수 있지만, 이는 컴파일러가 컴파일러 인프라에 연결되는 위치에 따라 달라집니다. C 및 C++에 대한 PAC 및 BTI 지원은 두 컴파일러 제품군 모두에 포함되어 있습니다. Rust 및 Go와 같은 언어는 이미 실험적인 기능으로 PAC 및 BTI 지원을 포함하고 있습니다. Rust의 PAC 및 BTI 실험적 지원에 대한 자세한 내용은 여기를 참조하십시오.

PAC 및 BTI 명령어를 이미 사용하고 있는 실제 프로젝트 사례가 있는가?

Google의 Chromium 프로젝트와 Javascript V8 엔진은 이제 PAC 및 BTI 명령어가 컴파일된 Arm64용으로 배포됩니다. Debian 및 RedHat과 같은 일부 Linux 배포판은 이미 PAC 및 BTI를 지원하는 호환 바이너리를 배포했습니다. 한편, 다른 배포판들은 다음 릴리스에서 두 보안 기능을 고려하고 있습니다. 예를 들어, SuSE의 Tumbleweed 프로젝트는 PAC, BTI 및 기타 Arm 특정 기능을 지원합니다.

AI 분석 · 긍정/부정 요인 펼치기

주요 사실

  • ARM의 PACBTI 보안 기술이 Renesas의 신형 마이크로컨트롤러에 탑재되어 출시됨
  • ARM Cortex-M85 프로세서가 Renesas의 신형 마이크로컨트롤러에 사용됨
  • ARM 기술이 소프트웨어 신뢰성 향상 및 보안 취약점 완화에 기여
AI 분석 근거근거 충분성: 충분

이 섹션은 현재 저장된 출처, 요약, 요인, 하이라이트를 기준으로 AI 분석이 무엇에 기대고 있는지 보여줍니다. 정보 제공용이며 정확성 보장, 투자 자문, 매수·매도 추천이 아닙니다. 중요한 판단 전 원문과 최신 공시를 확인하세요.

출처

newsroom.arm.com

원문 확인

확인 필요

AI 요약은 원문·요인 필드 기반의 보조 설명입니다. 원문, 후속 기사, 공시/실적 자료와 함께 확인하세요.

오류 제보하기

사용된 요인

  • •주요 사실 — ARM의 PACBTI 보안 기술이 Renesas의 신형 마이크로컨트롤러에 탑재되어 출시됨
  • •주요 사실 — ARM Cortex-M85 프로세서가 Renesas의 신형 마이크로컨트롤러에 사용됨
  • •주요 사실 — ARM 기술이 소프트웨어 신뢰성 향상 및 보안 취약점 완화에 기여

참고 문맥

Arm, 차세대 보안 기술 PAC 및 BTI로 소프트웨어 취약점 공략 기술이 우리 일상생활의 모든 측면에 더욱 깊숙이 자리 잡으면서, 방대한 데이터와 연결성은 삶을 변화시키는 복잡한 디지털 솔루션을 제공하고 있습니다. Arm의 컴퓨팅 아키텍트들에게 이러한 솔루션의 보안 관리는 최우선 과제이며, 이는 업계 전반의 태도에서도 반영됩니다. PSA Certified 2023 Security Repo…

내용이 원문과 다른가요? 오류 신고정정 정책편집·AI 원칙