CVE-2026-89471
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
W jądrze Linuksa usunięto następującą lukę:
moc: zasilanie: cros_usbpd-charger: ograniczona liczba portów zgłoszona przez EC
cros_usbpd_charger_probe() odczytuje liczbę dwóch portów z EC i używa
jeden z nich, num_charger_ports, jako pętla związana podczas wypełniania a
tablica o stałym rozmiarze:
struktura dane_portu *porty[EC_USB_PD_MAX_PORTS]; /* 8 wpisów */
...
for (i = 0; i < ładowarka->num_charger_ports; i++)
ładowarka->porty[ładowarka->num_registered_psy++] = port;
Zarówno num_usbpd_ports (z EC_CMD_USB_PD_PORTS), jak i num_charger_ports
(z EC_CMD_CHARGE_PORT_COUNT) to wartości u8 zgłoszone przez EC. The
jedyną walidacją jest sprawdzenie poprawności, polegające na porównaniu dwóch zgłoszonych przez KE
wartości względem siebie:
if (liczba_portów_ładowarki < liczba_portów_usbpd ||
num_charger_ports > num_usbpd_ports + 1)
powrót -EPROTO;
Nigdy nie sprawdza żadnej liczby względem EC_USB_PD_MAX_PORTS, rozmiaru
tablica ports[] . Nieprawidłowo działające, złośliwe lub zagrożone EC
raporty num_usbpd_ports == num_charger_ports == N dla dowolnego N > 8 (dla
przykład oba 255) przechodzą tę kontrolę, a następnie pętla zapisuje N wskaźników
do 8-wejściowej tablicy ports[] osadzonej w funkcji devm_kzalloc()'d
Charger_data, przepełniając je aż o 255 - 8 = 247 wpisów (~1976
bytes): zapis poza zakresem płyty.
Odrzuć liczbę portów większą niż może pomieścić tablica ports[].
>_ Referencje
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org