🔍 CVE-2026-90313

0.0
CVSS Score
UNKNOWN
2026-09-17
2026-10-19 09:19
✅ 완료

🇰🇷 한글 설명

Linux 커널의 cgroup BPF 프로그램 교체 과정에서 오류가 발생할 경우, 기존 프로그램이 유효하지 않은 저장소 포인터를 참조하게 되는 취약점입니다. 프로그램 교체 작업이 중간에 실패하면 이전 저장소 정보가 복구되지 않아 잘못된 메모리 접근이 발생할 수 있습니다.

💡 쉬운 설명

프로그램을 업데이트하다가 중간에 에러가 나면, 컴퓨터가 예전 데이터가 있어야 할 자리에 엉뚱한 주소를 가리키게 되는 문제입니다. 이로 인해 시스템이 잘못된 메모리를 건드려 오류가 발생하거나 불안정해질 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: bpf, cgroup: Fix invalid storage access after __cgroup_bpf_attach failed A potential invalid storage access issue can occur after replacing a cgroup bpf prog. This occurs in the following scenario: 1. prog1 with storage is attached to a cgroup in multi-attach mode. 2. prog1 is replaced with prog2 using BPF_F_REPLACE in multi-attach mode, but fails midway (e.g. in bpf_trampoline_link_cgroup_shim or update_effective_progs). 3. A new prog3 is attached to the cgroup in multi-attach mode. The reason is that __cgroup_bpf_attach overwrites pl->storage with the new storage prior to attachment completion. When attachment fails midway, the cleanup path calls bpf_cgroup_storages_free(new_storage) to free the newly allocated storage, but fails to restore pl->storage back to old_storage. Consequently, the still-active prog1 holds invalid or dangling storage pointers, leading to an invalid memory access when prog1 executes and calls bpf_get_local_storage. Additionally, original pl->flags and cgrp->bpf.flags[atype] are left unrestored. Fix this by saving old_pl_flags, old_storage, and old_flags prior to the update, and properly restoring all of them in the cleanup path on error.

📍 영향받는 시스템

BPF 및 cgroup 기능을 사용하는 Linux 커널 버전

⚔️ 공격 벡터

멀티 어태치 모드에서 BPF_F_REPLACE를 이용한 프로그램 교체 시도 중 의도적인 실패 유도

🛡️ 대응 방법

해당 취약점이 수정된 최신 Linux 커널 버전으로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 패치된 배포판의 보안 업데이트 버전인지 확인

Shell / Script
uname -r

💻 영향받는 소프트웨어

Linux Kernel