Odebrany

CVE-2026-98095

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ę:

af_packet: Nie rzutuj tpacket_hdr.tp_len na int w tpacket_parse_header().

syzbot zgłosił BŁĄD() w sock_sendmsg_nosec(). [0]

Problem polega na tym, że tpacket_parse_header() rzutuje dane dostarczone przez użytkownika
tpacket_hdr.tp_len, czyli u32, na int.

Jeśli długość jest większa niż INT_MAX, spełniony jest następujący warunek
w przebiegach tpacket_parse_header(),

if (mało prawdopodobne (tp_len > size_max))

a dowolna wartość ujemna może zostać zwrócona dzwoniącemu, aż do
skarpetka_sendmsg_nosec().

Repro ustawia tpacket_hdr.tp_len na 0xfffffdef, co jest rzutowane
na -EIOCBQUEUED (-529), wyzwalając BŁĄD() w sock_sendmsg_nosec().

*(uint64_t*)0x200000000008 = 0xffffffdef;
...
syscall(__NR_write, /*fd=*/r[0], /*buf=*/0x200000000000ul, /*count=*/1ul);

Zdefiniujmy lokalny tp_len jako u32 w tpacket_parse_header().

[0]:
BŁĄD jądra w net/socket.c:803!
Ups: nieprawidłowy kod operacji: 0000 [#1] SMP KASAN PTI
Procesor: 0 UID: 0 PID: 5628 Comm: syz-executor176 Nieskażony syzkaller #0 PREEMPT (pełny)
Nazwa sprzętu: Google Google Compute Engine/Google Compute Engine, BIOS Google 24.07.2026
RIP: 0010:sock_sendmsg_nosec+0x145/0x180 net/socket.c:803
Kod: 06 67 48 0f b9 3a eb 95 e8 e8 3a 22 f8 48 89 df 4c 89 f6 4c 89 e2 4d 89 fb 2e e8 32 a5 5c 16 e9 51 ff ff ff e8 cc 3a 22 f8 90 <0f> 0b e8 c4 3a 22 f8 48 83 c3 18 48 89 d8 48 c1 e8 03 42 80 3c 28
RSP: 0018:ffffc90003aefb48 EFLAGS: 00010293
RAX: ffffffff89a578d4 RBX: ffff8880764c67c0 RCX: ffff88807fb23e80
RDX: 0000000000000000 RSI: 00000000ffffffdef RDI: 00000000ffffffdef
RBP: 00000000ffffffdef R08: ffffc90003aef747 R09: 1ffff9200075dee8
R10: dffffc0000000000 R11: fffff5200075dee9 R12: 000000000000001
R13: dffffc0000000000 R14: ffffc90003aefbc0 R15: ffffffff8aac4310
FS: 000055559101b400(0000) GS:ffff888124ce0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000000210 CR3: 0000000073dca000 CR4: 00000000003526f0
Zadzwoń do śledzenia:
<ZADANIE>
__sock_sendmsg net/socket.c:815 [w wierszu]
skarpetka_write_iter+0x2de/0x3e0 net/socket.c:1266
new_sync_write fs/read_write.c:595 [w wierszu]
vfs_write+0x612/0xba0 fs/read_write.c:687
ksys_write+0x150/0x270 fs/read_write.c:739
do_syscall_x64 arch/x86/entry/syscall_64.c:61 [w linii]
do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
wpis_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f173130ecb9
Kod: c0 79 93 eb d5 48 8d 7c 1d 00 eb 99 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 d8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffd67e44248 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 0000200000000000 RCX: 00007f173130ecb9
RDX: 0000000000000001 RSI: 0000200000000000 RDI: 0000000000000003
RBP: 0000000000000001 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007ffd67e44388
R13: 0000000000000002 R14: 00002000000000c0 R15: 0000000000000002
</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