Odebrany

CVE-2026-98839

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

W jądrze Linuksa usunięto następującą lukę:

vt: selekcja: Napraw niedopełnienie bez znaku i przekroczenie zakresu płyty odczytane w funkcji paste_selection()

W paste_selection() pętla kopiuje min_t(unsigned int,
vc_sel.buf_len - wklejony,tty->receive_room) bajtów na iterację do
tty_ldisc_receive_buf() i wklejono przyrosty += liczba.

Ponieważ muteks wyboru (vc_sel.lock) jest upuszczany wewnątrz pętli
Za każdym razem, gdy bufor dyscypliny linii się zapełnia i paste_selection()
śpi na tty->write_wait, współbieżny ioctl TIOCLINUX (TIOCL_SETSEL)
może zastąpić vc_sel.buffer krótszym wyborem i zmniejszyć
vc_sel.buf_len poniżej wklejony.

Po wznowieniu funkcji paste_selection() vc_sel.buf_len - wklejono niedopełnienia jako
liczbę całkowitą bez znaku do dużej wartości dodatniej, powodując
tty_ldisc_receive_buf(ld, vc_sel.buffer + wklejony, NULL, liczba) do przeczytania
do 4094 bajtów poza nowo przydzielonym buforem vc_sel.buffer.

Napraw to, kończąc pętlę po wklejeniu >= vc_sel.buf_len.

Śledzenie stosu jądra (Linux 7.3.0-rc3):
===================================================================
BŁĄD: KASAN: płyta poza granicami w n_tty_receive_buf_common+0xa01/0x1650
Odczytanie rozmiaru 4094 pod adresem ffff888101c58010 przez zadanie kworker/u17:1/65
Kolejka robocza: Event_unbound Flush_to_ldisc
Zadzwoń do śledzenia:
<ZADANIE>
dump_stack_lvl+0x70/0xa0
print_report+0x153/0x4c6
kasan_report+0xf1/0x120
kasan_check_range+0x11c/0x200
__asan_memcpy+0x29/0x70
n_tty_receive_buf_common+0xa01/0x1650
tty_ldisc_receive_buf+0x66/0x110
tty_port_default_receive_buf+0x6b/0xb0
Flush_to_ldisc+0x1b4/0x410
proces_one_work+0x6ff/0x1110
wątek_pracownika+0x4a8/0xb70
kwątek+0x307/0x3e0
ret_from_fork+0x3ed/0x680
</ZADANIE>
===================================================================

>_ 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