리눅스 커널에서 15년 동안 존재해 온 심각한 보안 취약점 '고스트록(GhostLock, CVE-2026-43499)'이 최근 발견되어 IT 업계에 비상이 걸렸습니다. 이 취약점은 리눅스 2.6.39 버전부터 7.1 버전까지의 모든 배포판에 영향을 미치며, 특별한 권한이 없는 로컬 공격자가 일반적인 스레딩 시스템 호출만으로 시스템의 최고 권한인 루트(root) 권한을 획득하고 컨테이너 환경에서 탈출할 수 있도록 합니다. 이는 클라우드 환경의 컨테이너 보안에도 심각한 위협이 될 수 있음을 의미합니다.
고스트록은 'VEGA' 연구팀이 발견했으며, 'Requeue-PI' 프록시 경로의 'remove_waiter()' 함수에서 발생하는 스택 UAF(Use-After-Free) 오류가 핵심 원인입니다. 이 함수가 실제 대기 중인 태스크가 아닌 다른 태스크의 'pi_blocked_on'을 잘못 정리하면서, 사용자 공간으로 복귀한 태스크에 해제된 스택 프레임을 가리키는 포인터가 남게 됩니다. 공격자는 세 개의 futex와 세 개의 스레드를 이용해 PI 의존성 순환을 만들어 이 오류를 유도하고, 'PR_SET_MM_MAP'을 통해 제어 가능한 스택 버퍼에 가짜 'rt_mutex_waiter'를 구성하여 제한적인 포인터 쓰기 권한을 확보합니다. 이후 'prefetch'를 이용해 KASLR(커널 주소 공간 배치 무작위화) 및 물리 메모리 기준 주소를 찾아내고, CPU 엔트리 영역(CEA)에 가짜 구조체와 ROP(Return-Oriented Programming) 스택을 배치한 뒤, 'inet6_protos[IPPROTO_UDP]'를 덮어쓰는 방식으로 제어 흐름을 탈취하여 루트 권한을 얻습니다. 연구진은 이 익스플로잇(exploit)의 안정성이 97%에 달하며, 구글 커널CTF에서 $92,337의 보상금을 받았습니다.
이번 고스트록 취약점의 발견은 리눅스 기반 시스템을 운영하는 모든 기업과 사용자에게 즉각적인 조치를 요구합니다. 특히, 클라우드 환경에서 컨테이너 기술을 활용하는 경우, 컨테이너 탈출 공격은 전체 클라우드 인프라의 보안을 위협할 수 있는 치명적인 문제입니다. 따라서 패치되지 않은 모든 리눅스 배포판은 지체 없이 최신 LTS(장기 지원) 버전으로 업그레이드해야 합니다. 이번 사례는 오랜 기간 잠재해 있던 커널 수준의 취약점이 얼마나 광범위하고 심각한 영향을 미칠 수 있는지 다시 한번 상기시켜 주며, 지속적인 보안 업데이트와 취약점 점검의 중요성을 강조합니다.