usb: gadget: ncm: Fix handling of zero block length packets
In the Linux kernel, the following vulnerability has been resolved: usb: gadget: ncm: Fix handling of zero block length packets While connecting to a Linux host with CDC_NCM_NTB_DEF_SIZE_TX set to 65536, it has been observed that we receive short packets, which come at interval of 5-10 seconds sometimes and have block length zero but still contain 1-2 valid datagrams present. According to the NCM spec: "If wBlockLength = 0x0000, the block is terminated by a short packet. In this case, the USB transfer must still be shorter than dwNtbInMaxSize or dwNtbOutMaxSize. If exactly dwNtbInMaxSize or dwNtbOutMaxSize bytes are sent, and the size is a multiple of wMaxPacketSize for the given pipe, then no ZLP shall be sent. wBlockLength= 0x0000 must be used with extreme care, because of the possibility that the host and device may get out of sync, and because of test issues. wBlockLength = 0x0000 allows the sender to reduce latency by starting to send a very large NTB, and then shortening it when the sender discovers that there’s not sufficient data to justify sending a large NTB" However, there is a potential issue with the current implementation, as it checks for the occurrence of multiple NTBs in a single giveback by verifying if the leftover bytes to be processed is zero or not. If the block length reads zero, we would process the same NTB infintely because the leftover bytes is never zero and it leads to a crash. Fix this by bailing out if block length reads zero.
- Yayın
- 17 May 2024
- Güncelleme
- 17 Haz 2026
- EPSS
- %0,2 · 13. yüzdelik
- CWE
- —
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
22
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,2
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- hayır
- Teknik etki
- kısmi
Vulnrichment: CISA'nın karar ağacı girdileri.
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
Veritabanındaki yüz binlerce zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyinEtkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
| debian | debian linux | cpe:2.3:o:debian:debian_linux |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- debian debian linux10.0
- linux linux kernel4.19.297 ve sonrası · 4.19.312 öncesi
- linux linux kernel5.4.259 ve sonrası · 5.4.274 öncesi
- linux linux kernel5.10.199 ve sonrası · 5.10.215 öncesi
- linux linux kernel5.15.136 ve sonrası · 5.15.154 öncesi
- linux linux kernel6.1.59 ve sonrası · 6.1.84 öncesi
- linux linux kernel4.14.328 ve sonrası · 4.15 öncesi
- linux linux kernel6.6.1 ve sonrası · 6.6.24 öncesi
- linux linux kernel6.7 ve sonrası · 6.7.12 öncesi
- linux linux kernel6.5.8 ve sonrası · 6.6 öncesi
- linux linux kernel6.6
- linux linux kernel6.8
Üreticinin bildirdiği sürümler
Kaydı açan otorite (Linux) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
Linux Linux
- 5bdf93a2f5459f944b416b188178ca4a92fd206f, 4bf1a9d20c65b9e80ca4b171267103f8d4f2c61f, 6.6etkilenir
- ff3ba016263ee93a1c6209bf5ab1599de7ab1512 ve sonrası · e2dbfea520e60d58e0c498ba41bde10452257779 öncesietkilenir · git
- e7ca00f35d8a17af1ae19d529193ebc21bfda164 ve sonrası · a766761d206e7c36d7526e0ae749949d17ca582c öncesietkilenir · git
- 17c653d4913bbc50d284aa96cf12bfc63e41ee5c ve sonrası · ef846cdbd100f7f9dc045e8bcd7fe4b3a3713c03 öncesietkilenir · git
- 7014807fb7efa169a47a7a0a0a41d2c513925de0 ve sonrası · 92b051b87658df7649ffcdef522593f21a2b296b öncesietkilenir · git
- 49fbc18378ae72a47feabee97fdb86f3cea09765 ve sonrası · 7664ee8bd80309b90d53488b619764f0a057f2b7 öncesietkilenir · git
- 427694cfaafa565a3db5c5ea71df6bc095dca92f ve sonrası · a0f77b5d6067285b8eca0ee3bd1e448a6258026f öncesietkilenir · git
- 427694cfaafa565a3db5c5ea71df6bc095dca92f ve sonrası · 6b2c73111a252263807b7598682663dc33aa4b4c öncesietkilenir · git
- 427694cfaafa565a3db5c5ea71df6bc095dca92f ve sonrası · f90ce1e04cbcc76639d6cba0fdbd820cd80b3c70 öncesietkilenir · git
- 4.19.297 ve sonrası · 4.19.312 öncesietkilenir · semver
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:12 | linux | 6.1.85-1 öncesi | 6.1.85-1 |
| Debian:13 | linux | 6.7.12-1 öncesi | 6.7.12-1 |
Aynı üründe
linux: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe KEV89Hemen
- CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV85Hemen
- CVE-2016-5195Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by leveraging incorrect haKEV83Hemen
- CVE-2019-13272In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles the recording of the credentials of a process that wants to creKEV77Bu hafta
- CVE-2013-6282The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the v6k and v7 ARM platforms do not validate certain addKEV77Bu hafta
- CVE-2013-2094The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, which allows loKEV77Bu hafta
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| Linux Linux | 4.15 | Üretici (CNA) |
| Linux Linux | 4.19.312 | Üretici (CNA) |
| Linux Linux | 5.10.215 | Üretici (CNA) |
| Linux Linux | 5.15.154 | Üretici (CNA) |
| Linux Linux | 5.4.274 | Üretici (CNA) |
| Linux Linux | 6.1.84 | Üretici (CNA) |
| Linux Linux | 6.6 | Üretici (CNA) |
| Linux Linux | 6b2c73111a252263807b7598682663dc33aa4b4c | Üretici (CNA) |
| Linux Linux | 7664ee8bd80309b90d53488b619764f0a057f2b7 | Üretici (CNA) |
| Linux Linux | 92b051b87658df7649ffcdef522593f21a2b296b | Üretici (CNA) |
| Linux Linux | a0f77b5d6067285b8eca0ee3bd1e448a6258026f | Üretici (CNA) |
| Linux Linux | a766761d206e7c36d7526e0ae749949d17ca582c | Üretici (CNA) |
| Linux Linux | e2dbfea520e60d58e0c498ba41bde10452257779 | Üretici (CNA) |
| Linux Linux | ef846cdbd100f7f9dc045e8bcd7fe4b3a3713c03 | Üretici (CNA) |
| Linux Linux | f90ce1e04cbcc76639d6cba0fdbd820cd80b3c70 | Üretici (CNA) |
| debian:linux | 6.1.85-1 · Debian:12 | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
Yayın dışında tarihli olay yok.
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
CNA kaydında kredi yok.
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
Gece hesaplanan ilişki yok.
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- Sisteme yerel erişimi olan biri tetikleyebilir.
- Düşük yetkili bir hesap yeterli.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- yok
- Bütünlük
- yok
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
- Saldırı vektörü
- Yerel
- Karmaşıklık
- Düşük
- Gereken yetki
- Düşük
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişmez
- Gizlilik etkisi
- Yok
- Bütünlük etkisi
- Yok
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
—
CVSS vektörü
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Bu CWE için MITRE'de CAPEC/ATT&CK eşlemesi yok.
Değişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
- git.kernel.org/stable/c/6b2c73111a252263807b7598682663dc33aa4b4c
- git.kernel.org/stable/c/7664ee8bd80309b90d53488b619764f0a057f2b7
- git.kernel.org/stable/c/92b051b87658df7649ffcdef522593f21a2b296b
- git.kernel.org/stable/c/a0f77b5d6067285b8eca0ee3bd1e448a6258026f
- git.kernel.org/stable/c/a766761d206e7c36d7526e0ae749949d17ca582c
- git.kernel.org/stable/c/e2dbfea520e60d58e0c498ba41bde10452257779
- git.kernel.org/stable/c/ef846cdbd100f7f9dc045e8bcd7fe4b3a3713c03
- git.kernel.org/stable/c/f90ce1e04cbcc76639d6cba0fdbd820cd80b3c70
- lists.debian.org/debian-lts-announce/2024/06/msg00017.html
- lists.debian.org/debian-lts-announce/2024/06/msg00020.html
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.