🔍 CVE-2026-90129

0.0
CVSS Score
UNKNOWN
2026-09-17
2026-10-21 13:20
✅ 완료

🇰🇷 한글 설명

Linux 커널의 virtio_balloon 드라이버에서 장치 종료 시 비동기 작업이 적절히 중단되지 않아 발생하는 취약점입니다. 장치가 종료되기 전에 작업이 완료되지 않으면 커널 경고(WARN_ON_ONCE)가 발생하며, panic_on_warn 설정이 활성화된 시스템에서는 재부팅이나 kexec 과정 중 커널 패닉이 발생하여 시스템이 정상적으로 새 커널로 전환되지 못할 수 있습니다.

💡 쉬운 설명

컴퓨터를 재부팅하거나 업데이트할 때, 메모리를 관리하는 특정 기능이 제대로 꺼지지 않아 시스템이 멈춰버리는 문제입니다. 이로 인해 컴퓨터가 정상적으로 다시 켜지지 않고 오류 상태에 빠질 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: virtio_balloon: quiesce balloon work before device shutdown Commit 8bd2fa086a04 ("virtio: break and reset virtio devices on device_shutdown()") added a generic virtio bus .shutdown handler that breaks and resets every virtio device during device_shutdown(), i.e. on reboot and kexec. virtio_balloon provides no .shutdown of its own, so that generic path runs while the balloon's asynchronous work is still armed. Once the device has been broken, virtqueue_add_inbuf() in virtballoon_free_page_report() returns -EIO and trips its WARN_ON_ONCE(). On a kernel booted with panic_on_warn that turns an ordinary reboot, for example a kexec based upgrade, into a fatal panic in the middle of device_shutdown(), so the machine never reaches the new kernel. Relaxing that single WARN_ON_ONCE() would only hide the symptom: the inflate/deflate and OOM paths do not warn, they call wait_event(vb->acked, ...) and would instead block forever on a broken queue that can no longer complete. The device has to be quiesced, not just kept quiet. Add a .shutdown handler that quiesces the balloon via the shared virtballoon_quiesce() helper while the device is still alive, and only then breaks and resets it via virtio_device_shutdown(). Unlike virtballoon_remove() the balloon workqueue is not destroyed, as shutdown does not free the device and cancel_work_sync() together with stop_update already prevent any further work from being queued.

📍 영향받는 시스템

virtio_balloon 드라이버를 사용하는 Linux 커널 (해당 패치가 적용되지 않은 버전)

⚔️ 공격 벡터

직접적인 외부 공격보다는 시스템 재부팅(reboot) 또는 kexec를 통한 커널 업그레이드 과정에서 발생함

🛡️ 대응 방법

virtio_balloon에 .shutdown 핸들러가 포함된 최신 Linux 커널로 업데이트하십시오.

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.

Shell / Script
uname -r

💻 영향받는 소프트웨어

Linux Kernel