0xNews - 리눅스 커널에서 StackRot 라는 이름의 취약점으로 권한 상승 취약점 발견

0xNews - 리눅스 커널에서 StackRot 라는 이름의 취약점으로 권한 상승 취약점 발견


Openwall 통해 정보 공개 

https://www.openwall.com/lists/oss-security/2023/07/05/1


StackRot 로 명명

CVE-2023-3269 지정

CVSS 7.8

리눅스 Linux 커널 버전 6.1에서 6.4 대상에게 영향을 미침

현재까지 악용된 증거는 발견되지 않음


StackRot는 메모리 관리 하위 시스템에서 발견된 리눅스 커널 취약점

거의 모든 커널 구성에 영향을 미치며 트리거 하는데 최소한의 기능이 필요

그러나 RCU Read-Copy Update 콜백을 사용하여 메이플 노드가 해제되어 RCU 유예 기간 이후까지 실제 메모리 할당 해제가 지연된다는 점에서 유의

결과적으로 이 취약점을 악용하는 것은 난이도가 매우 높음


23년 6월 15일 리누스 토발즈 Linus Torvalds 해당 문제 인지와 정보 공개

kernel.org 에서 해당 문제 정보 공개

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9471f1f2f50282b9e8f59198ec6bb738b4ccc009




23년 7월 1일 리눅스 커널 6.1.37, 6.3.11, 6.4.1 등으로 안정화 업데이트를 통해 문제 해결

StackRot 해결 업데이트 정보 공개

https://github.com/lrh2000/StackRot


PoC 익스플로잇과 버그에 대한 기술 세부 사항에 대한 내용은 정리 후 공개 예정


이번 취약점은 본질적으로 메이플 트리라는 데이터 구조에 근본적인 문제를 가지고 있음

메이플 트리는 Red-Black rbtree 를 대체하여 가상 메모리 영역 VMA 를 관리하고 저장하기 위해 리눅스 커널 6.1에 도입

디스크에 있는 파일의 내용이나 실행 중에 있는 프로그램이 사용하는 메모리


특히 메이플 트리가 MM 쓰기 잠금을 제대로 획득하지 않고 노드 교체를 겪을 수 있다는 사실을 이용

커널을 손상시키고 권한 상승시키기 위해 로컬 사용자가 악용할 수 있는 use-after-free 버그로 이번 취약점 설명이 가능


리누즈 토발즈는 패치에 대해 다음과 같이 추가 설명

모든 스택 확장 코드를 mm/mmap.c 와 mm/memory.c 사이에 분할하는 대신 실제로 자체의 완전 새로운 파일로 옮기는게 좋다고 판단

초기 메이플 트리 VMA 소개로 백포팅했지만 _fairly_ minimal 에 대한 패치를 최소한으로 유지하려고 했음


댓글

이 블로그의 인기 게시물

0xNews - 안드로이드 폰 890만대 이상 사전 감염 확인

0xNews - 미군을 주제로 하여 한국인을 노리는 피싱 공격 캠페인 경고