🔍 CVE-2026-80693

9.3
CVSS Score
CRITICAL
2026-08-28
2026-10-21 13:19
✅ 완료

🇰🇷 한글 설명

Linux 커널의 idpf 드라이버에서 할당된 배열의 크기를 확인하지 않고 인터럽트 벡터 레지스터 값을 채우는 취약점이 발견되었습니다. 공격자가 조작된 응답을 보내면 할당된 메모리 범위를 벗어나 데이터를 쓰는 힙 기반 버퍼 오버플로우가 발생할 수 있습니다.

💡 쉬운 설명

컴퓨터 메모리에 데이터를 담을 그릇을 준비했는데, 그릇보다 더 많은 양의 데이터를 억지로 밀어넣어 옆에 있는 다른 데이터를 망가뜨릴 수 있는 문제입니다. 이를 통해 시스템을 중단시키거나 해커가 시스템 권한을 탈취할 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: idpf: bound interrupt-vector register fill to the allocated array idpf_get_reg_intr_vecs() fills the caller-allocated reg_vals[] array from the VIRTCHNL2_OP_ALLOC_VECTORS reply in adapter->req_vec_chunks, bounding its inner loop only by the per-chunk num_vectors. The array is sized separately: idpf_intr_reg_init() allocates kzalloc_objs(struct idpf_vec_regs, total_vecs) from caps.num_allocated_vectors and only checks the returned count after the fill. The sum of per-chunk num_vectors is never reconciled against total_vecs, so a reply with a small num_allocated_vectors but chunks summing higher writes past the end of reg_vals[]. Impact: a control plane (a PF or hypervisor device model) that returns a VIRTCHNL2_OP_ALLOC_VECTORS reply whose per-chunk num_vectors sum exceeds num_allocated_vectors writes struct idpf_vec_regs entries past the end of the reg_vals kmalloc allocation (KASAN slab-out-of-bounds write). Bound the fill loop to the array capacity passed in by the callers, mirroring the sibling idpf_vport_get_q_reg(). The existing num_regs < num_vecs check then rejects an undersized reply without the out-of-bounds write happening first.

📍 영향받는 시스템

Linux kernel (idpf driver component)

⚔️ 공격 벡터

제어 평면(PF 또는 하이퍼바이저 장치 모델)이 조작된 VIRTCHNL2_OP_ALLOC_VECTORS 응답을 전송하여 발생

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 idpf 드라이버의 경계 검사 로직을 적용해야 합니다.

🔧 검증 코드

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

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel