CVE-2026-64378UNKNOWNMITRENVD대응게시일: 2026. 07. 25.수정일: 2026. 07. 25.CNA: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Received
In the Linux kernel, the following vulnerability has been resolved: writeback: fix race between cgroup_writeback_umount() and inode_switch_
위협 신호 · CVSS · EPSS · KEV
정기 패치· 높은 악용 신호 없음
CVSS
—unknown
이론적 심각도 점수
EPSS
0.2%상위 88.0%
30일 내 악용 확률 예측
KEV
미등재실측 악용 기록 없음
권장 대응 기한60일 이내CISA SSVC 기준
계획된 패치 주기 내 조치(60일 이내)
외부 노출· KEV 미등재 · 자동화 어려움 · 부분 영향 · 외부 노출
CVSS 벡터 · 메트릭
CVSS 벡터 정보 없음
상세 설명
In the Linux kernel, the following vulnerability has been resolved:
writeback: fix race between cgroup_writeback_umount() and inode_switch_wbs()
When a container exits, the following BUG_ON() is occasionally triggered:
==================================================================
VFS: Busy inodes after unmount of sdb (ext4)
------------[ cut here ]------------
kernel BUG at fs/super.c:695!
CPU: 3 PID: 6 Comm: containerd-shim Tainted: G OE K 6.6 #1
pstate: 63400009 (nZCv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--)
pc : generic_shutdown_super+0xf0/0x100
lr : generic_shutdown_super+0xf0/0x100
Call trace:
generic_shutdown_super+0xf0/0x100
kill_block_super+0x20/0x48
ext4_kill_sb+0x28/0x60
deactivate_locked_super+0x54/0x130
deactivate_super+0x84/0xa0
cleanup_mnt+0xa4/0x140
__cleanup_mnt+0x18/0x28
task_work_run+0x78/0xe0
do_notify_resume+0x204/0x240
The root cause is a race between cgroup_writeback_umount() and
inode_switch_wbs()/cleanup_offline_cgwb(). There is a window between
inode_prepare_wbs_switch() returning true and the subsequent
wb_queue_isw() call. Following is the process that triggers the issue:
text
1 CPU A (umount) | CPU B (writeback)text
1 inode_switch_wbs/cleanup_offline_cgwb 2 atomic_inc(&isw_nr_in_flight) 3 inode_prepare_wbs_switch 4 -> passes SB_ACTIVE check 5 __iget(inode) 6 generic_shutdown_super 7 sb->s_flags &= ~SB_ACTIVE 8 cgroup_writeback_umount(sb) 9 smp_mb()10 atomic_read(&isw_nr_in_flight)11 rcu_barrier()12 -> no pending RCU callbacks13 flush_workqueue(isw_wq)14 -> nothing queued, returns15 evict_inodes(sb)16 -> Inode skipped as isw still holds a ref.17 sop->put_super(sb)18 /* destroys percpu counters */19 -> VFS: Busy inodes after unmount!20 wb_queue_isw()21 queue_work(isw_wq, ...)22 /* later in work function */23 inode_switch_wbs_work_fn24 process_inode_switch_wbs25 iput() -> evict26 percpu_counter_dec() // UAF!27 28Fix this by extending the RCU read-side critical section in29inode_switch_wbs() and cleanup_offline_cgwb() to cover from30inode_prepare_wbs_switch() through wb_queue_isw(). Since there is31no sleep in this window, rcu_read_lock() can be used. Then add a32synchronize_rcu() in cgroup_writeback_umount() before the existing33rcu_barrier(), so that all in-flight switchers that have passed the34SB_ACTIVE check have completed queue_work() before flush_workqueue()35is called.36 37The existing rcu_barrier() is intentionally retained so this fix can38be backported unchanged to stable kernels (5.10.y, 6.6.y, ...) that39still queue switches via queue_rcu_work(). It is a no-op on current40mainline (since commit e1b849cfa6b6 ("writeback: Avoid contention on41wb->list_lock when switching inodes")) and is removed in a follow-up42patch.AI 심층 분석
공격 시나리오 · 재현 가능한 PoC 페이로드 · 즉시 적용 가능한 차단 패치를 한 번에 받아 보세요. 보안 운영팀이 그대로 점검·티켓팅에 쓸 수 있는 형태로 정리해 드립니다.
참고 자료 7
링크 내용 불러오는 중…