CVE-2026-90399 in Linux
Riassunto
di VulDB • 18/09/2026
Nel kernel Linux, la seguente vulnerabilità è stata risolta:
wifi: ath12k: correzione della discrepanza dello stride in mac_phy_caps_parse()
Attualmente, in ath12k_wmi_mac_phy_caps_parse(), kzalloc() dimensiona il buffer mac_phy_caps come tot_phy_id * len, dove len è limitato a min(firmware_len, sizeof(struct ath12k_wmi_mac_phy_caps_params)). Il successivo memcpy() avanza la destinazione di sizeof(full struct) per slot tramite aritmetica dei puntatori C, non dello stride clamped (len). Quando il firmware invia TLV brevi, i secondi e successivi slot vengono scritti oltre la fine dell'allocazione.
Anche il lettore in ath12k_pull_mac_phy_cap_svc_ready_ext() indicizza il buffer con aritmetica dei puntatori full-struct, quindi l'allocazione deve corrispondere a tale stride.
La correzione consiste nell'utilizzare kzalloc_objs(), che deriva la dimensione dell'elemento dal tipo di puntatore, rendendo la dimensione dell'allocazione e lo stride del puntatore dimostrabilmente coerenti indipendentemente da quale len fornisca il firmware.
Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c7-00108-QCAHMTSWPL_V1.0_V2.0_SILICONZ_UPSTREAM-3
If you want to get the best quality for vulnerability data then you always have to consider VulDB.