본문으로 건너뛰기
피드

GrapheneOS, 최근 리눅스 커널 메모리 취약점 3종 영향 안 받는다고 밝힘

security 약 7분

GrapheneOS 쪽은 최근 공개된 리눅스 커널 취약점 Copy Fail, Copy Fail 2, Dirty Frag 3종이 GrapheneOS에 적용되지 않는다고 설명했어. 핵심은 GrapheneOS만의 추가 방어 이전에, 현대적인 안드로이드 오픈소스 프로젝트(AOSP)의 SELinux 정책과 GKI 커널 설정만으로도 공격 표면이 꽤 줄어든다는 점이야.

  • 1

    AOSP SELinux 정책이 취약점 3종의 악용 경로를 차단함

  • 2

    표준 AOSP GKI 커널 설정은 취약한 기능 3개 중 2개를 비활성화함

  • 3

    GrapheneOS는 SELinux, seccomp-bpf, 커널 기능 제거로 공격 표면을 줄임

  • 4

    리눅스 커널 취약점의 대부분은 메모리 관련 로직 오류보다 메모리 손상 버그임

  • 5

    장기적으로는 가상화와 메모리 안전 언어가 커널 보안 개선의 핵심 방향으로 언급됨

  • GrapheneOS는 최근 공개된 리눅스 커널 취약점 3종, Copy Fail, Copy Fail 2, Dirty Frag에 취약하지 않다고 밝힘
    • 이유는 단순히 GrapheneOS가 별도 패치를 빨리 넣어서가 아니라, 현재 안드로이드 오픈소스 프로젝트(AOSP)의 SELinux 정책이 3개 버그의 악용을 모두 막고 있기 때문임
    • 표준 AOSP GKI 커널 설정도 취약한 기능 3개 중 2개를 기본적으로 꺼둔 상태라고 함

중요

> 이번 건은 “GrapheneOS가 특수해서만 안전하다”가 아니라, 현대적인 AOSP의 SELinux 정책과 GKI 커널 설정만으로도 특정 커널 취약점 악용 경로를 막을 수 있다는 사례에 가까움.

  • 핵심 방어 전략은 공격 표면 축소임

    • GrapheneOS는 사용하지 않는 커널 기능을 설정에서 제거하고, SELinux 정책으로 앱과 시스템 프로세스가 접근 가능한 기능을 아주 세밀하게 제한함
    • seccomp-bpf도 여러 표준 샌드박스에서 쓰이지만, 이 글에서는 대부분의 공격 표면 축소가 SELinux를 통해 이뤄진다고 설명함
  • AOSP의 SELinux 정책은 생각보다 꽤 촘촘하게 동작함

    • 드라이버에 보내는 ioctl 명령, 허용되는 소켓 타입 같은 것들을 allowlist 방식으로 제한함
    • 취약점이 자주 나오는 기능인 user namespaces와 io_uring도 앱이나 거의 모든 기본 운영체제 프로세스에서 사용할 수 없게 막아둠
  • GrapheneOS는 이번 3개 취약점에 대해서는 “추가 방어까지 가지 않아도 충분했다”는 입장임

    • GrapheneOS 자체도 커널 공격 표면을 더 줄이는 작업을 하고 있음
    • 다만 이번 사례에서는 최신 AOSP GKI 커널과 SELinux 정책만으로도 방어가 성립했다고 봄
  • 리눅스 커널의 로컬 권한 상승 취약점은 흔하지만, 이번처럼 메모리 관련 로직 오류인 경우는 상대적으로 드묾

    • 대부분의 심각한 커널 취약점은 전통적인 메모리 손상 버그라고 함
    • GrapheneOS는 이런 메모리 손상 버그에 대해 하드웨어 메모리 태깅, zero-on-free 같은 일반화된 exploit 방어를 강화하고 있음
  • 글쓴이는 리눅스 커널 구조 자체에 꽤 날카롭게 문제를 제기함

    • 리눅스는 코어 커널과 하드웨어 드라이버 코드가 엄청나게 크고, 이 코드들이 대부분 격리 없이 전체 권한으로 실행된다는 점을 지적함
    • 마이크로커널 구조였다면 이번 3개 취약점도 격리된 프로세스 안에 갇혔을 거라고 봄
  • 장기적인 해법으로는 스마트폰의 하드웨어 기반 가상화가 중요하다고 봄

    • GrapheneOS 쪽은 스마트폰 가상화 성능과 기능이 계속 좋아지고 있고, 커널 보안 문제를 줄이는 데 큰 역할을 할 수 있다고 말함
    • 커널을 계속 보강하는 것만으로는 한계가 있고, 결국 더 강한 격리 모델이 필요하다는 얘기임
  • 메모리 안전 언어도 도움이 된다고 인정함

    • 이번 취약점들이 전형적인 메모리 손상 버그는 아니지만, 더 나은 타입 시스템과 안전한 추상화는 여전히 효과가 있다고 설명함
    • 네트워킹, 디바이스 드라이버 같은 저수준 메모리 처리를 커널 전체가 아니라 훨씬 작은 영역으로 줄이는 방향이 필요하다는 주장임
  • 상업용·정부용 exploit 체인에서도 리눅스 커널 메모리 손상 버그가 거의 빠지지 않는다고 함

    • 다만 이런 버그는 다양한 기기와 커널 버전에서 안정적으로 동작하는 exploit을 만들기 어렵다는 특징도 있음
    • 그래서 GrapheneOS는 공격 표면 축소와 범용 exploit 방어를 동시에 밀고 가는 쪽에 무게를 둠

기술 맥락

  • 이번 사례에서 중요한 선택은 “취약한 기능을 패치할 때까지 기다리는 것”보다 “애초에 앱이 그 기능에 닿지 못하게 막는 것”이에요. 커널 취약점은 계속 나오기 때문에, 모든 버그를 사전에 없애겠다는 접근만으로는 방어가 힘들거든요.

  • SELinux가 중심에 있는 이유는 정책 단위가 꽤 구체적이기 때문이에요. 앱이 어떤 ioctl을 호출할 수 있는지, 어떤 소켓 타입을 쓸 수 있는지, user namespaces나 io_uring 같은 위험한 기능에 접근 가능한지까지 제한할 수 있어요.

  • AOSP GKI 설정도 의미가 있어요. 제조사나 운영체제별 추가 보안 기능이 없어도 표준 커널 설정에서 취약 기능 3개 중 2개가 꺼져 있었다는 건, 기본값이 보안 결과를 크게 바꿀 수 있다는 뜻이에요.

  • GrapheneOS가 가상화를 강조하는 이유는 리눅스 커널과 드라이버 코드가 너무 넓은 권한을 갖고 실행되기 때문이에요. 커널 안에서 터지는 버그를 완전히 없애기 어렵다면, 기능을 더 잘게 격리해서 터져도 피해 범위를 줄이는 쪽이 현실적인 방향이에요.

  • 메모리 안전 언어 이야기도 같은 맥락이에요. 모든 커널 코드를 당장 바꾸자는 얘기가 아니라, 위험한 저수준 메모리 처리를 좁은 영역에 가두고 나머지는 안전한 추상화로 다루자는 쪽에 가까워요.

이 글의 포인트는 특정 취약점 3개를 피했다는 자랑보다, 모바일 운영체제에서 공격 표면 축소가 얼마나 실전적인 방어인지 보여준다는 데 있어. 커널 버그를 모두 없애는 건 현실적으로 어렵고, 결국 노출되는 기능 자체를 줄이는 설계가 중요하다는 얘기야.

댓글

댓글

댓글을 불러오는 중...

security

윈도우 11 BitLocker 우회 취약점 ‘YellowKey’ 공개, WinRE 경로가 문제로 지목됨

YellowKey라는 BitLocker 우회 취약점 공개 글이 올라왔고, 작성자는 Windows Recovery Environment에만 있는 특정 구성요소가 보호된 볼륨 접근을 허용한다고 주장한다. 공개 내용은 Windows 11과 Windows Server 2022/2025가 영향권이고 Windows 10은 제외된다고 설명하며, Microsoft 보안 조직과의 공개 조율도 언급한다.

security

해고 직후 정부 DB 96개 삭제 혐의, 내부자 접근권 회수의 무서운 사례

미국 정부 고객을 상대하던 IT 업체에서 해고된 쌍둥이 형제가 몇 분 뒤 정부 정보가 담긴 데이터베이스 96개를 삭제한 혐의를 받고 있다. 기사에는 이들이 이전에도 컴퓨터 범죄 전력이 있었고, 회사 네트워크에서 5,400개 계정 정보를 모아 Python 스크립트로 외부 서비스 로그인을 시도했다는 정황도 나온다.

security

EFF, 국경 전자기기 수색에도 영장이 필요하다고 제4순회항소법원에 주장

EFF와 ACLU 등은 미국 제4순회항소법원에 국경에서 휴대폰·노트북 같은 전자기기를 수색하려면 영장이 필요하다는 의견서를 냄. 사건은 Dulles 공항에서 미국 시민의 휴대폰이 영장 없이 수색된 뒤 형사 사건으로 이어진 사례이며, EFF는 수동 수색과 포렌식 수색 모두 같은 높은 기준을 적용해야 한다고 주장함.

security

안드로이드 17, 내 폰 OS가 진짜인지 직접 보여준다

구글이 안드로이드 17에 OS 검증 기능을 넣는다. 사용자는 기기가 공식 안드로이드 빌드를 돌리고 있는지, 부트로더 상태와 빌드 정보까지 확인할 수 있고, 구글 앱과 API의 정식 배포 여부를 검증하는 공개 원장도 제공된다.

security

마이크로소프트 취약점 공개전이 또 터짐, 이번엔 2건

익명의 공개자가 마이크로소프트 관련 취약점 2건을 추가로 공개했다고 주장했어. 구체적인 기술 분석은 본문에 거의 없지만, 패치 튜즈데이를 앞두고 더 큰 공개를 예고해 윈도우 보안 운영팀 입장에선 신경 써야 할 신호야.