Към съдържанието

CVE-2026-80973: Linux

Няма оценка

CVSS

Няма данни

Вероятност да бъде експлоатирана в следващите 30 дни (EPSS)

Няма потвърждение

Атакува се

Няма данни

Време до експлоатация

    Описание

    Оригинално описание

    In the Linux kernel, the following vulnerability has been resolved: ALSA: 6fire: bound the MIDI event length from the device usb6fire_comm_receiver_handler() forwards a MIDI event using a length byte the device supplies, with no bound and no check that the transfer delivered that many bytes: if (!urb->status) { if (rt->receiver_buffer[0] == 0x10) /* midi in event */ if (midi_rt) midi_rt->in_received(midi_rt, rt->receiver_buffer + 2, rt->receiver_buffer[1]); } receiver_buffer is a 64-byte kzalloc() buffer (COMM_RECEIVER_BUFSIZE), so only 62 bytes follow the two-byte header. receiver_buffer[1] is a u8 the device chooses, so a device that answers with 0x10 and a length of 0xFF makes snd_rawmidi_receive() read 255 bytes starting two bytes into a 64-byte object. The bytes past the buffer are handed to userspace through the rawmidi read path. urb->actual_length is not consulted either, so a short transfer leaves both the type byte and the length byte at their previous values and the handler acts on stale data. The receiver URB is submitted from usb6fire_comm_init() at probe, so the read happens on plug with no user action; forwarding to userspace also needs a MIDI input substream open, since usb6fire_midi_in_received() only calls snd_rawmidi_receive() when rt->in is set. KASAN on 7.2.0-rc5 (arm64), single packet from an emulated device: BUG: KASAN: slab-out-of-bounds in snd_rawmidi_receive Read of size 255 at addr ffff000009f64682 by task bash/183 __asan_memcpy snd_rawmidi_receive usb6fire_midi_in_received [snd_usb_6fire] usb6fire_comm_receiver_handler [snd_usb_6fire] Allocated by task 11: usb6fire_comm_init [snd_usb_6fire] usb6fire_chip_probe [snd_usb_6fire] The buggy address is located 2 bytes inside of allocated 64-byte region [ffff000009f64680, ffff000009f646c0) Reject the event when the length exceeds the bytes that follow the header, and require the transfer to have delivered the header plus that many by

    Засегнати продукти

    • Linux Linux: c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди c9204bc2ed2010e2469dbe5fce598878a37efd04; c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди 2c590d5e1b1595d5c8fa0b72d2897423ce9985ca; c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди 0c8a3c773823cf12abd39c480aed70e25c384630; c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди 00e84a9ff2d43953ae261995cae94d46f4c307a6; c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди 466e911bbbbb779bb06337e35a286e5ca7af16b3; c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди 2a6f6fba3bd31d2e8c957fefa29156e35e5e75d5; c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди 34816e2cfeabafb8eccf54687186ce25699e8363; c6d43ba816d1cf1d125bfbfc938f2a28a87facf9 преди a478893b59e36cfe7d77a76b352f2db55502e879
    • Linux Linux: 2.6.39; преди 2.6.39; 5.10.270 до 5.10.*; 5.15.221 до 5.15.*; 6.1.188 до 6.1.*; 6.6.157 до 6.6.*; 6.12.109 до 6.12.*; 6.18.50 до 6.18.*; 7.2.4 до 7.2.*; от 7.3 нататък

    История

    • 11 септември 2026 Публикувано

    Други уязвимости в Linux Linux

    Първоизточници

    CVE-2026-80973: Linux | freedomonline.bg