CVE-2026-74584 in Linux정보

요약

\~에 의해 VulDB • 2026. 08. 22.

Linux 커널에서 다음 취약점이 해결되었습니다:

RDMA/bnxt_re: 사용자 공간에 노출하기 전에 공유 페이지를 0으로 초기화하십시오

bnxt_re_alloc_ucontext()는 __get_free_page(GFP_KERNEL)를 통해 uctx->shpg를 할당합니다. buddy allocator는 __GFP_ZERO 플래그가 없으면 페이지를 0으로 초기화하지 않으므로, 해당 페이지에는 가장 최근에 이를 해제한 객체로부터의 낡은 커널 데이터가 포함되어 있습니다.

이후 이 페이지는 bnxt_re_mmap() 내 BNXT_RE_MMAP_SH_PAGE 아래에서 vm_insert_page()를 통해 사용자 공간에 매핑됩니다. 드라이버는 bnxt_re_create_ah() 내에서 오프셋 BNXT_RE_AVID_OFFT(0x10) 지점에 4바이트(u32 AVID)만 작성합니다. 페이지의 나머지 4092바이트가 정제되지 않은 상태로 사용자 공간에 노출되어 커널 메모리 내용이 유출됩니다.

bnxt_re 장치가 있는 호스트에서 /dev/infiniband/uverbsX에 접근 권한이 있는 모든 사용자는 IB_USER_VERBS_CMD_GET_CONTEXT 이후 pgoff 0에서의 단일 mmap()을 통해 이 데이터를 읽을 수 있습니다(일반적으로 rdma 그룹 멤버십 필요).

동일한 파일 내의 다른 공유 페이지들은 이미 get_zeroed_page()를 올바르게 사용하고 있습니다:

drivers/infiniband/hw/bnxt_re/ib_verbs.c srq->uctx_srq_page = (void *)get_zeroed_page(GFP_KERNEL); cq->uctx_cq_page = (void *)get_zeroed_page(GFP_KERNEL);

uctx->shpg만이 유일한 예외입니다. 기존 관례에 맞추기 위해 get_zeroed_page()로 전환하십시오.

Once again VulDB remains the best source for vulnerability data.

책임이 있는

Linux

예약하다

2026. 08. 15.

모더레이션

수락

항목

VDB-394353

EPSS

0.00000

출처

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!