🔍 CVE-2025-21744

5.5
CVSS Score
MEDIUM
2025-02-27
2026-11-05 21:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 Broadcom WiFi 드라이버(brcmfmac)에서 NULL 포인터 역참조 취약점이 발생합니다. 장치 제거 또는 커널 모듈 언로드 시 brcmf_txfinalize() 함수에서 유효하지 않은 메모리에 접근하여 커널 패닉을 초래할 수 있습니다.

💡 쉬운 설명

Broadcom WiFi 드라이버를 제거할 때 이미 삭제된 메모리를 참조하려고 시도합니다. 이로 인해 시스템이 예기치 않게 충돌할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: wifi: brcmfmac: fix NULL pointer dereference in brcmf_txfinalize() On removal of the device or unloading of the kernel module a potential NULL pointer dereference occurs. The following sequence deletes the interface: brcmf_detach() brcmf_remove_interface() brcmf_del_if() Inside the brcmf_del_if() function the drvr->if2bss[ifidx] is updated to BRCMF_BSSIDX_INVALID (-1) if the bsscfgidx matches. After brcmf_remove_interface() call the brcmf_proto_detach() function is called providing the following sequence: brcmf_detach() brcmf_proto_detach() brcmf_proto_msgbuf_detach() brcmf_flowring_detach() brcmf_msgbuf_delete_flowring() brcmf_msgbuf_remove_flowring() brcmf_flowring_delete() brcmf_get_ifp() brcmf_txfinalize() Since brcmf_get_ip() can and actually will return NULL in this case the call to brcmf_txfinalize() will result in a NULL pointer dereference inside brcmf_txfinalize() when trying to update ifp->ndev->stats.tx_errors. This will only happen if a flowring still has an skb. Although the NULL pointer dereference has only been seen when trying to update the tx statistic, all other uses of the ifp pointer have been guarded as well with an early return if ifp is NULL.

📍 영향받는 시스템

Linux 커널 brcmfmac 드라이버 (Broadcom WiFi 칩셋 기반 시스템)

⚔️ 공격 벡터

로컬 권한 있는 사용자가 WiFi 장치 제거 또는 커널 모듈 언로드 시 자동 트리거

🛡️ 대응 방법

Linux 커널 패치 적용 또는 안정화된 버전으로 업그레이드 (NULL 포인터 검사 추가)

🔧 검증 코드

CONFIG_BRCMFMAC이 y 또는 m으로 표시되면 드라이버가 포함되어 있으며, 커널 버전 확인 후 패치된 버전으로 업데이트 필요

Shell / Script
grep -i 'BRCMFMAC' /boot/config-$(uname -r) | grep -E '(=y|=m)'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel