위키득계정 ↗
기술

Scudo

Scudo기술
분류
보안 강화 메모리 할당기
소속
LLVM
구성 예
기본 할당기와 보조 할당기
보호 예
메타데이터 일관성 검사
Scudo는 힙 기반 취약점의 영향을 줄이도록 설계된 사용자 공간 메모리 할당기다. 보안 강화와 성능의 균형을 목표로 할당 구조와 메타데이터 검사를 구성한다.

크기에 따른 할당

작은 요청을 빠르게 처리하는 구성과 큰 요청을 운영체제 메모리 매핑으로 처리하는 구성을 나눈다. 큰 할당에는 가드 페이지가 사용될 수 있다. 스레드 캐시의 관리 방식과 세부 매개변수는 실제 구성에 따라 달라진다.

손상과 재사용 대응

할당 헤더의 체크섬 등으로 일부 메타데이터 손상을 감지한다. 손상된 헤더를 실제로 읽는 시점과 검사 범위가 중요하다. 해제한 블록의 재사용을 늦추는 격리 기능도 있지만 비용이 있으며 기본 활성 상태와 설정을 확인해야 한다.

방어와 오류 탐지

Scudo는 힙 공격의 악용을 어렵게 하는 할당기이며 모든 잘못된 접근을 보고하는 범용 검사와는 목적이 다르다. 보안 설정은 메모리와 처리 비용에 영향을 준다. 실제 작업 부하와 위협 모델에 맞춰 다른 검사 및 방어와 함께 평가한다.

관련 문서

AddressSanitizer / GWP-ASan / Hardened Malloc / mimalloc