
리눅스 커널 트래픽 제어(TC)의 `pedit` 처리 결함을 실제 로컬 권한 상승으로 연결하는 공개 익스플로잇이 나왔다. Linux CVE 공식 기록에 따르면 CVE-2026-46331은 패킷 데이터를 수정하는 `tcf_pedit_act()`의 copy-on-write(COW) 범위 계산 오류로 페이지 캐시가 손상될 수 있는 취약점이다.
Linux 측은 이 취약점에 CVSS 3.1 기준 7.8점, ‘높음(High)’ 등급을 부여했다. 공격 벡터는 로컬이며 낮은 권한이 필요하지만 사용자 상호작용은 요구되지 않는다. 성공할 경우 기밀성·무결성·가용성에 모두 큰 영향을 줄 수 있는 것으로 평가됐다.
문제는 `skb_ensure_writable()`이 쓰기 가능한 영역을 준비할 때 실제 런타임 헤더 오프셋을 충분히 반영하지 못한 데서 비롯됐다. 일부 쓰기 영역이 COW 처리에서 빠지면, 패킷에 연결된 공유 페이지 캐시가 그대로 수정될 수 있다. 업스트림 수정 커밋은 쓰기 가능 범위 확인을 각 편집 키 처리 안으로 옮기고 오프셋 연산의 오버플로 검사를 추가했다. 음수 오프셋에는 별도 COW 처리도 적용했다.
보안 연구자 Rajat Gupta가 공개한 분석과 코드는 이 결함을 ‘Dirty Pedit’이라고 부른다. 연구자는 사용자 네임스페이스에서 얻은 네트워크 관리 권한과 TC pedit, zero-copy 데이터 경로를 조합해 읽기 가능한 파일의 페이지 캐시를 바꾸고 루트 권한을 얻는 과정을 구현했다고 밝혔다. 공개 자료는 암호화 하위 시스템에 기대지 않고도 공격자가 제어하는 데이터를 쓸 수 있으며, 테스트 환경에서는 1초 이내에 권한 상승이 가능했다고 주장한다. 다만 이 명칭과 성능 수치는 연구자가 제시한 것이며 Linux 프로젝트의 공식 표현은 아니다.
공식 CVE 기록은 주 영향 범위를 리눅스 5.18 이후로 제시하면서, 관련 로직이 백포트된 일부 구형 안정 브랜치도 별도로 열거한다. 수정 버전으로는 5.10.260, 5.15.211, 6.1.177, 6.6.144, 6.12.94, 6.18.36, 7.0.13과 메인라인 7.1이 안내돼 있다. 배포판은 수정 커밋을 자체 커널에 백포트할 수 있어 버전 문자열만으로 판단하기보다 공급자 보안 공지를 확인해야 한다.
공개 익스플로잇이 등장한 만큼 서버와 개발·CI 환경 운영자는 TC pedit과 사용자 네임스페이스 사용 여부를 점검하고, 배포판이 제공하는 보안 커널로 업데이트하는 것이 우선이다. 컨테이너 환경도 호스트 커널을 공유하므로 이미지 패치만으로는 이 커널 결함을 해결할 수 없다. 검증되지 않은 공개 코드는 운영 시스템에서 실행하지 않아야 한다.
출처: Linux CVE 공식 기록 https://cveawg.mitre.org/api/cve/CVE-2026-46331
출처: Linux 커널 업스트림 수정 커밋 https://github.com/torvalds/linux/commit/899ee91156e57784090c5565e4f31bd7dbffbc5a
출처: Rajat Gupta 공개 기술 분석 https://github.com/rjt-gupta/page-cache-corruption-lpes/tree/main/dirty_pedit