CVE-2026-90055
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
W jądrze Linuksa usunięto następującą lukę:
usb: atm: usbatm: napraw nieprawidłową inicjalizację ci_range
syzbot zgłosił przesunięcie poza zakres w __vcc_connect():
UBSAN: przesunięcie poza granicami w net/atm/common.c:382:32
wykładnik przesunięcia -1 jest liczbą ujemną
Procesor: 0 UID: 0 PID: 5987 Comm: syz.0.18 Nieskażony syzkaller #0 PREEMPT (pełny)
Nazwa sprzętu: Google Compute Engine/Google Compute Engine, BIOS Google 08.05.2026
Zadzwoń do śledzenia:
<ZADANIE>
dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
ubsan_epilogue+0xa/0x30 lib/ubsan.c:233
__ubsan_handle_shift_out_of_bounds+0x36d/0x400 lib/ubsan.c:494
__vcc_connect+0x14b4/0x19c0 net/atm/common.c:382
vcc_connect+0x328/0x8f0 net/atm/common.c:498
pvc_bind+0x272/0x380 netto/atm/pvc.c:52
__sys_bind+0x2e3/0x410 net/socket.c:1976
__x64_sys_bind+0x7a/0x90 net/socket.c:1979
...
Pola ci_range urządzenia ATM (vpi_bits i vci_bits) reprezentują
liczba bitów obsługiwana przez adresowanie VPI i VCI w urządzeniu.
net/atm/common.c bezpośrednio używa tych pól do zliczania przesunięć bitowych:
vpi >> dev->ci_range.vpi_bits
vci >> dev->ci_range.vci_bits
1 << vcc->dev->ci_range.vpi_bits
1 << vcc->dev->ci_range.vci_bits
usbatm_atm_init() ustawia ci_range.vpi_bits i ci_range.vci_bits na
ATM_CI_MAX (-1), który jest zdefiniowany w <uapi/linux/atmdev.h> jako
wartość wartownicza dla żądań ATM_SETCIRANGE przestrzeni użytkownika, a nie prawidłowy bit
liczyć. Przesunięcie o -1 jest zachowaniem niezdefiniowanym i wyzwala UBSAN
ostrzeżenia.
Nagłówki komórek ATM UNI pozwalają na maksymalnie 8 bitów dla VPI (0..255) i 16 bitów
dla VCI (0..65535). Zainicjuj vpi_bits na 8 i vci_bits na 16, as
zrobione przez solos-pci.
>_ Referencje
- https://git.kernel.org/stable/c/1e964d414bfd9f8dfe9948d08e4b9dda4ed2e422
- https://git.kernel.org/stable/c/561cbd6d49022c9a383e22a39c87a165a4d39f9c
- https://git.kernel.org/stable/c/75667703115154a4fd9cf259d4f826d8729cbcda
- https://git.kernel.org/stable/c/76bc7c3a44856744b64aa91d9afe6d9522a78c42
- https://git.kernel.org/stable/c/7baa0c92be39eb3da755ed6f200497a57078c47b
- https://git.kernel.org/stable/c/8442586526c406527bf31206e538c0ce6bc672e6
- https://git.kernel.org/stable/c/a60fd8c6dbaa76da4163cf225ed2b9e982540f39
- https://git.kernel.org/stable/c/ff7f77a234f7b74e5955a6e34fa74eca4c9ca44c
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