[논문 리뷰] PThammer: Cross-User-Kernel-Boundary Rowhammer through Implicit Accesses
이 논문은 소프트웨어 전용 방어를 우회하기 위해 암시적 메모리 접근을 활용하는 크로스 유저-커널 경계 Rowhammer 공격인 PThammer를 제시한다. 최소한의 TLB 및 LLC 실종 집합을 사용하여 번역 검색 버퍼와 최종 레벨 캐시를 플러시함으로써, 페이지 테이블에서 비트 플립을 유도하여 권한 상승을 달성한다. CTA 및 CATT와 같은 방어 조치가 존재하는 다수의 시스템에서도 실제 하드웨어에서 15분 이내에 성공적인 루트 액세스를 보여준다.
Rowhammer is a hardware vulnerability in DRAM memory, where repeated access to memory can induce bit flips in neighboring memory locations. Being a hardware vulnerability, rowhammer bypasses all of the system memory protection, allowing adversaries to compromise the integrity and confidentiality of data. Rowhammer attacks have shown to enable privilege escalation, sandbox escape, and cryptographic key disclosures. Recently, several proposals suggest exploiting the spatial proximity between the accessed memory location and the location of the bit flip for a defense against rowhammer. These all aim to deny the attacker's permission to access memory locations near sensitive data. In this paper, we question the core assumption underlying these defenses. We present PThammer, a confused-deputy attack that causes accesses to memory locations that the attacker is not allowed to access. Specifically, PThammer exploits the address translation process of modern processors, inducing the processor to generate frequent accesses to protected memory locations. We implement PThammer, demonstrating that it is a viable attack, resulting in a system compromise (e.g., kernel privilege escalation). We further evaluate the effectiveness of proposed software-only defenses showing that PThammer can overcome those.
연구 동기 및 목표
- 사용자 및 커널 메모리 경계를 넘는 Rowhammer 기반 권한 상승 기법을 개발한다.
- 커널 데이터를 사용자 영역 공격으로부터 격리하고자 하는 소프트웨어 전용 방어 기법인 CATT, RIP-RH, CTA와 같은 기법을 극복한다.
- TLB 및 LLC에 대한 효율적이고 최소 크기의 실종 집합을 사용하여 공격 표면을 최소화하고 탐지 및 자원 오버헤드를 줄인다.
- 페이지 테이블 워크 중 암시적 접근 패턴을 활용하여 직접 메모리 접근 없이도 커널 데이터 구조에서 비트 플립을 유도할 수 있음을 보여준다.
- 기존 소프트웨어 방어 기법이 이 새로운 간접적 공격 벡터에 대해 얼마나 효과적인지 평가한다.
제안 방법
- 가상 주소와 TLB 세트 간의 역공학적 매핑을 이용하여 오류 없이 정확한 최소 크기의 TLB 실종 집합을 구성한다.
- 접근 지연 측정을 통해 프ofile 기반 알고리즘을 사용하여 LLC 실종 집합을 식별하며, 캐시 연계성보다 큰 집합의 경우 성공률가 94% 이상이다.
- 캐시 연계성보다 한 개 더 큰 엔트리(12-way의 경우 13, 16-way의 경우 17)를 선택하여 실종 성공률를 극대화하면서도 크기를 최소화한다.
- 페이지 테이블 워크를 통한 암시적 접근을 사용하여 선택된 피해자 행을 이중 측면으로 히트링함으로써 커널 페이지 테이블에서 비트 플립을 유도한다.
- 버디 할당자를 활용하여 L1PTE를 메모리에 집중시켜 보호 영역에서의 성공적인 비트 플립 확률을 높인다.
- L1PTE 비트 플립 후 struct cred 구조체를 대상으로 하여 CTA 보호 시스템에 대한 공격을 시뮬레이션하며, 사용자 자격 증명 조작을 통해 권한 상승을 달성한다.
실험 결과
연구 질문
- RQ1암시적 메모리 접근만을 사용하여 사용자 및 커널 메모리 경계를 넘는 Rowhammer 공격가 가능할 수 있는가?
- RQ2최소 크기의 TLB 및 LLC 실종 집합이 공격 목적을 위해 캐시 및 TLB 플러시를 일관되게 달성하는 데 얼마나 효과적인가?
- RQ3페이지 테이블 워크를 악용하는 공격에 대해 CTA, CATT, RIP-RH와 같은 소프트웨어 전용 방어 기법이 얼마나 여전히 효과적인가?
- RQ4다른 메모리 구성(예: 슈퍼페이지 대비 일반 페이지)에서 공격의 성능 오버헤드와 성공률는 어떠한가?
- RQ5L1PTE가 격리되거나 보호되어 있어도 커널 페이지 테이블에서의 비트 플립을 이용해 권한 상승을 달성할 수 있는가?
주요 결과
- 실종 집합 크기가 12 이상일 경우 TLB 미스 비율이 크게 감소하여 효과적인 TLB 플러시가 이루어짐을 나타낸다.
- 실종 집합 크기가 캐시 연계성을 초과할 경우 LLC 미스 비율이 95%를 초과하여 효과적인 캐시 실종이 확인된다.
- PThammer는 테스트된 모든 기계(Lenovo T420, X230, Dell E6420)에서 이중 측면 히트링을 통해 15분 이내로 권한 상승을 달성한다.
- 슈퍼페이지를 사용할 경우 TLB 풀 준비 시간이 10ms 이내, LLC 준비 시간이 0.5분 이내로 줄어들어 낮은 설정 오버헤드를 보여준다.
- L1PTE 비트 플립 후 struct cred 항목을 대상으로 하여 CTA의 두 번째 레이어 방어를 성공적으로 우회하며, 시뮬레이션에서 일곱 번의 비트 플립 후 루트 액세스를 달성한다.
- LLC 실종 집합 선택 알고리즘의 가짜 양성률은 6% 이내로 유지되어 실제 환경에서 높은 신뢰성을 보여준다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.