CVE-2026-18418
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
Zaplecze agenta proxy Zbus IPC w subsys/zbus/proxy_agent/zbus_proxy_agent_ipc.c zarejestrowało nazwę kanału odrzuconej ramki międzydomenowej ze zwykłą konwersją %s. Struktura typu ramki zbus_proxy_msg jako ostatni element zawiera tablicę nazwa_kanału[] o stałym rozmiarze i nic w transporcie nie gwarantuje, że tablica zostanie zakończona znakiem NUL. Jedynym kodem weryfikującym zakończenie jest zbus_proxy_agent_receive_cb() w subsys/zbus/proxy_agent/zbus_proxy_agent.c, który odrzuca ramkę dokładnie w tych przypadkach — więc ostrzeżenie wydrukowało niezakończony bufor dokładnie na ścieżkach błędów, w których nazwa została uznana za nieprawidłową (lub, w przypadku nieprawidłowego rozmiaru_wiadomości, w ogóle nie została sprawdzona).
Dowolna domena równorzędna, która może umieścić ramkę o rozmiarze bajtów sizeof(struct zbus_proxy_msg) w powiązanym punkcie końcowym usługi ipc_service, może ją wyzwolić, wysyłając ramkę z rozmiarem komunikatu spoza zakresu lub z nazwą_kanału[] niezawierającą bajtu NUL. Dotarcie do kodu wymaga CONFIG_ZBUS_PROXY_AGENT_IPC i rejestrowania wbudowanego na poziomie ostrzegawczym lub wyższym (domyślnie) oraz wymaga kontroli nad oprogramowaniem sprzętowym domeny równorzędnej — zazwyczaj drugim rdzeniem w tym samym SoC.
Wynikowa funkcja strlen() wewnątrz narzędzia pakującego dziennik przechodzi obok końca obiektu ramki, aż znajdzie bajt zerowy. W przypadku backendu icmsg ramka znajduje się w buforze stosu wątku kolejki roboczej IPC, więc bajty stosu tego wątku są renderowane w komunikacie dziennika; dzięki zapleczu RPMsg skanowanie jest kontynuowane w współdzielonej pamięci vring. Wpływ ogranicza się do ujawnienia niewielkiej ilości sąsiedniej pamięci w ujściu dziennika domeny odbierającej oraz możliwego błędu krytycznego, jeśli skanowanie opuści zamapowany obszar; Własne ograniczenie -ENOSPC programu pakującego dzienniki zapobiega przekształceniu przekroczenia w zapis. Poprawka ogranicza konwersję do %.*s i MIN(msg->nazwa_kanału_len, sizeof(msg->nazwa_kanału)).
>_ Słabości (CWE)
>_ 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