İçeriğe atla
Noroxi
CVE-2021-47275· NVD / CVE Programı· CNA Linux

bcache: avoid oversized read request in cache missing code path

Noroxi değerlendirmesi

Öncelik: İzleyin (aksiyon skoru 22/100)

  • İzlediğimiz kaynaklarda (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) herkese açık istismar kodu ya da sahada sömürü kaydı yok.
  • Önümüzdeki 30 günde sömürülme olasılığı %0,19 (FIRST EPSS).
  • 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.
  • Düzeltilmiş sürüm: Linux Linux 41fe8d088e96472f63164e213de44ec77be69478, 555002a840ab88468e252b0eedf0b05e2ce7099c.
  • Ulusal siber güvenlik bildirimlerinde (siberguvenlik.gov.tr) 1 kez anıldı.

Şimdilik düşük öncelik. Linux Linux 41fe8d088e96472f63164e213de44ec77be69478, 555002a840ab88468e252b0eedf0b05e2ce7099c ya da daha yeni sürüme yükseltin.

Kaydın verisinden otomatik üretilir: CVSS (NVD ve CNA), CISA KEV ve SSVC, FIRST EPSS, istismar kaynakları, düzeltme sürümleri. Nasıl hesaplıyoruz

Birincil kaynaklar: NVD · CVE.org · FIRST EPSS

In the Linux kernel, the following vulnerability has been resolved: bcache: avoid oversized read request in cache missing code path In the cache missing code path of cached device, if a proper location from the internal B+ tree is matched for a cache miss range, function cached_dev_cache_miss() will be called in cache_lookup_fn() in the following code block, [code block 1] 526 unsigned int sectors = KEY_INODE(k) == s->iop.inode 527 ? min_t(uint64_t, INT_MAX, 528 KEY_START(k) - bio->bi_iter.bi_sector) 529 : INT_MAX; 530 int ret = s->d->cache_miss(b, s, bio, sectors); Here s->d->cache_miss() is the call backfunction pointer initialized as cached_dev_cache_miss(), the last parameter 'sectors' is an important hint to calculate the size of read request to backing device of the missing cache data. Current calculation in above code block may generate oversized value of 'sectors', which consequently may trigger 2 different potential kernel panics by BUG() or BUG_ON() as listed below, 1) BUG_ON() inside bch_btree_insert_key(), [code block 2] 886 BUG_ON(b->ops->is_extents && !KEY_SIZE(k)); 2) BUG() inside biovec_slab(), [code block 3] 51 default: 52 BUG(); 53 return NULL; All the above panics are original from cached_dev_cache_miss() by the oversized parameter 'sectors'. Inside cached_dev_cache_miss(), parameter 'sectors' is used to calculate the size of data read from backing device for the cache missing. This size is stored in s->insert_bio_sectors by the following lines of code, [code block 4] 909 s->insert_bio_sectors = min(sectors, bio_sectors(bio) + reada); Then the actual key inserting to the internal B+ tree is generated and stored in s->iop.replace_key by the following lines of code, [code block 5] 911 s->iop.replace_key = KEY(s->iop.inode, 912 bio->bi_iter.bi_sector + s->insert_bio_sectors, 913 s->insert_bio_sectors); The oversized parameter 'sectors' may trigger panic 1) by BUG_ON() from the above code block. And the bio sending to backing device for the missing data is allocated with hint from s->insert_bio_sectors by the following lines of code, [code block 6] 926 cache_bio = bio_alloc_bioset(GFP_NOWAIT, 927 DIV_ROUND_UP(s->insert_bio_sectors, PAGE_SECTORS), 928 &dc->disk.bio_split); The oversized parameter 'sectors' may trigger panic 2) by BUG() from the agove code block. Now let me explain how the panics happen with the oversized 'sectors'. In code block 5, replace_key is generated by macro KEY(). From the definition of macro KEY(), [code block 7] 71 #define KEY(inode, offset, size) \ 72 ((struct bkey) { \ 73 .high = (1ULL << 63) | ((__u64) (size) << 20) | (inode), \ 74 .low = (offset) \ 75 }) Here 'size' is 16bits width embedded in 64bits member 'high' of struct bkey. But in code block 1, if "KEY_START(k) - bio->bi_iter.bi_sector" is very probably to be larger than (1<<16) - 1, which makes the bkey size calculation in code block 5 is overflowed. In one bug report the value of parameter 'sectors' is 131072 (= 1 << 17), the overflowed 'sectors' results the overflowed s->insert_bio_sectors in code block 4, then makes size field of s->iop.replace_key to be 0 in code block 5. Then the 0- sized s->iop.replace_key is inserted into the internal B+ tree as cache missing check key (a special key to detect and avoid a racing between normal write request and cache missing read request) as, [code block 8] 915 ret = bch_btree_insert_check_key(b, &s->op, &s->iop.replace_key); Then the 0-sized s->iop.replace_key as 3rd parameter triggers the bkey size check BUG_ON() in code block 2, and causes the kernel panic 1). Another ke ---truncated---

OrtaCVSS 5.5 · v3.1—İstismar yok Düzeltme var
Güncelleme
17 Haz 2026
EPSS
%0,1 · 8. yüzdelik
CWE
—

Rapor araçları

JSON

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,1

CISA SSVC kararı

Sömürü
yok
Otomatikleştirilebilir
hayır
Teknik etki
kısmi

Vulnrichment: CISA'nın karar ağacı girdileri.

Bu kayıt değişirse haber alın

  • KEV'de değil: sahada sömürü kaydı yok
  • Herkese açık istismar kodu kaydı yok
  • Düzeltme yayımlandı

Bunlardan biri değişirse günlük e-posta özetinde haber veririz.

CVE-2021-47275 kaydını takip edin

Ne zaman haber verilir

  • CISA KEV'e girdiğinde
  • istismar kodu ortaya çıktığında ya da silahlaştırıldığında
  • kayıt güncellendiğinde (düzeltme sürümü dahil)
  • EPSS bir haftada 20 puan arttığında

Günde bir e-posta özeti (06:00 UTC); webhook bağlarsanız KEV ve silahlaştırılmış istismar anında.

Ücretsiz hesapla ayrıca

WordPress siteniz mi var? WP Lens ile ücretsiz tarayın

  • Stack uyarıları: kullandığınız ürün ve sürümleri ekleyin, onları etkileyen yeni CVE'ler size gelsin
  • Site izleme: 1 site, kesintide anında e-posta
  • Alan adınızı ekleyin: alt alan adları ve ele geçirme riski her hafta taransın (1 alan adı)
  • Güvenlik araçlarında saatte 10 tarama (hesapsız günde 3), API anahtarı ve MCP
  • Taramalarınız tek panelde: bulgular, son taramada değişenler, alan adı ya da müşteri başına rapor (PDF, paylaşım bağlantısı)
Tüm ücretsiz araçlar

E-postayla kayıt olun · Hesabınız var mı? Giriş yapın

Ücretsiz hesap, kart istenmez. Takibi istediğiniz an bırakırsınız.

WordPress siteniz mi var? WP Lens ile ücretsiz tarayın

Sürümünüz etkileniyor mu? Kontrol edin

Noroxi analizi

Sizin ortamınızda ne anlama geliyor?

Yukarıdaki değerlendirme kaydın verisinden otomatik üretilir; ortamınızı bilmez. Bu açığın sizde gerçekten sömürülebilir olup olmadığını ve hangi önlemin yeteceğini ekibimiz sizin sistemlerinizde doğrular.

Bu ürünü kullanıyoruz, yardım isteyin

Etkilenen sistemler

Sürümünüz etkileniyor mu?

Ürünü seçip kullandığınız sürümü yazın. Bu kaydın sürüm aralıklarıyla tarayıcınızda karşılaştırılır; sürüm hiçbir yere gönderilmez.

ÜreticiÜrün
linuxlinux kernel

Etkilenen sürümler

NVD sürüm aralıkları (katalogdaki ürünler için). Stack’inize sürümle eklerseniz eşleşme bunlarla yapılır.

  • linux linux kernel5.12.11 öncesi
  • linux linux kernel5.13

Ü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

    • 3.10etkilenir
    • cafe563591446cf80bfbc2fe3bc72a2e36cf1060 ve sonrası · 555002a840ab88468e252b0eedf0b05e2ce7099c öncesietkilenir · git
    • cafe563591446cf80bfbc2fe3bc72a2e36cf1060 ve sonrası · 41fe8d088e96472f63164e213de44ec77be69478 öncesietkilenir · git
    • 3.10 öncesietkilenmez · semver
    • 5.12.11 ve sonrası · 5.12.* dahil öncesietkilenmez · semver
    • 5.13 ve sonrasıetkilenmez · original_commit_for_fix

Paket düzeyi etkilenme

OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.

EkosistemPaketEtkilenen aralıkDüzeltme
Debian:12linux5.14.6-1 öncesi5.14.6-1
SUSE:Linux Enterprise High Availability Extension 12 SP5kernel-default4.12.14-122.222.1 öncesi4.12.14-122.222.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_581-8.3.1 öncesi1-8.3.1
SUSE:Linux Enterprise Real Time 12 SP5kernel-rt4.12.14-10.194.1 öncesi4.12.14-10.194.1
SUSE:Linux Enterprise Real Time 12 SP5kernel-rt_debug4.12.14-10.194.1 öncesi4.12.14-10.194.1
SUSE:Linux Enterprise Real Time 12 SP5kernel-source-rt4.12.14-10.194.1 öncesi4.12.14-10.194.1
SUSE:Linux Enterprise Real Time 12 SP5kernel-syms-rt4.12.14-10.194.1 öncesi4.12.14-10.194.1
SUSE:Linux Enterprise Server 12 SP5kernel-azure4.12.14-16.194.1 öncesi4.12.14-16.194.1
SUSE:Linux Enterprise Server 12 SP5kernel-source4.12.14-122.222.1 öncesi4.12.14-122.222.1
SUSE:Linux Enterprise Server 12 SP5kernel-source-azure4.12.14-16.194.1 öncesi4.12.14-16.194.1
SUSE:Linux Enterprise Server 12 SP5kernel-syms4.12.14-122.222.1 öncesi4.12.14-122.222.1
SUSE:Linux Enterprise Server 12 SP5kernel-syms-azure4.12.14-16.194.1 öncesi4.12.14-16.194.1
SUSE:Linux Enterprise Software Development Kit 12 SP5kernel-docs4.12.14-122.222.1 öncesi4.12.14-122.222.1
SUSE:Linux Enterprise Software Development Kit 12 SP5kernel-obs-build4.12.14-122.222.1 öncesi4.12.14-122.222.1

Aynı 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 KEV
    89Hemen
  • CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV
    85Hemen
  • 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 haKEV
    83Hemen

Bu üründe bundan önce ve sonra yayımlananlar

  • ← ÖncekiCVE-2021-4727321 May 2024 · usb: dwc3-meson-g12a: fix usb2 PHY glue init when phy0 is disabled
    22İzleyin
  • ← ÖncekiCVE-2021-4727421 May 2024 · tracing: Correct the length check which causes memory corruption
    31İzleyin
  • Sonraki →CVE-2021-4727621 May 2024 · ftrace: Do not blindly read the ip address in ftrace_bug()
    22İzleyin

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 / paketDüzeltilmiş sürümKaynak
Linux Linux41fe8d088e96472f63164e213de44ec77be69478Üretici (CNA)
Linux Linux555002a840ab88468e252b0eedf0b05e2ce7099cÜretici (CNA)
debian:linux5.14.6-1 · Debian:12Paket deposu (OSV)
suse:kernel-azure4.12.14-16.194.1 · SUSE:Linux Enterprise Server 12 SP5Paket deposu (OSV)
suse:kernel-default4.12.14-122.222.1 · SUSE:Linux Enterprise High Availability Extension 12 SP5Paket deposu (OSV)
suse:kernel-docs4.12.14-122.222.1 · SUSE:Linux Enterprise Software Development Kit 12 SP5Paket deposu (OSV)
suse:kernel-obs-build4.12.14-122.222.1 · SUSE:Linux Enterprise Software Development Kit 12 SP5Paket deposu (OSV)
suse:kernel-rt4.12.14-10.194.1 · SUSE:Linux Enterprise Real Time 12 SP5Paket deposu (OSV)
suse:kernel-rt_debug4.12.14-10.194.1 · SUSE:Linux Enterprise Real Time 12 SP5Paket deposu (OSV)
suse:kernel-source4.12.14-122.222.1 · SUSE:Linux Enterprise Server 12 SP5Paket deposu (OSV)
suse:kernel-source-azure4.12.14-16.194.1 · SUSE:Linux Enterprise Server 12 SP5Paket deposu (OSV)
suse:kernel-source-rt4.12.14-10.194.1 · SUSE:Linux Enterprise Real Time 12 SP5Paket deposu (OSV)
suse:kernel-syms4.12.14-122.222.1 · SUSE:Linux Enterprise Server 12 SP5Paket deposu (OSV)
suse:kernel-syms-rt4.12.14-10.194.1 · SUSE:Linux Enterprise Real Time 12 SP5Paket deposu (OSV)
suse:kgraft-patch-SLE12-SP5_Update_581-8.3.1 · SUSE:Linux Enterprise Live Patching 12 SP5Paket 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.

EPSS son 120 gün

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.

CNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıklayın, aynı araştırmacının diğer kayıtlarını görün.

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).

Ulusal bildirim (Siber Güvenlik Başkanlığı / USOM)

Bu kaydı anan resmi güvenlik bildirimleri; çözüm önerisi kurumun sayfasında.

Tüm ulusal bildirimler →

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üğü

  1. Düzeltme✗ → ✓

Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →

Referanslar

Tüm referansları göster (1 daha)

Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.

Tüm kayıtlar