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

mm/ksm: fix flag-dropping behavior in ksm_madvise

In the Linux kernel, the following vulnerability has been resolved: mm/ksm: fix flag-dropping behavior in ksm_madvise syzkaller discovered the following crash: (kernel BUG) [ 44.607039] ------------[ cut here ]------------ [ 44.607422] kernel BUG at mm/userfaultfd.c:2067! [ 44.608148] Oops: invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN NOPTI [ 44.608814] CPU: 1 UID: 0 PID: 2475 Comm: reproducer Not tainted 6.16.0-rc6 #1 PREEMPT(none) [ 44.609635] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 44.610695] RIP: 0010:userfaultfd_release_all+0x3a8/0x460 <snip other registers, drop unreliable trace> [ 44.617726] Call Trace: [ 44.617926] <TASK> [ 44.619284] userfaultfd_release+0xef/0x1b0 [ 44.620976] __fput+0x3f9/0xb60 [ 44.621240] fput_close_sync+0x110/0x210 [ 44.622222] __x64_sys_close+0x8f/0x120 [ 44.622530] do_syscall_64+0x5b/0x2f0 [ 44.622840] entry_SYSCALL_64_after_hwframe+0x76/0x7e [ 44.623244] RIP: 0033:0x7f365bb3f227 Kernel panics because it detects UFFD inconsistency during userfaultfd_release_all(). Specifically, a VMA which has a valid pointer to vma->vm_userfaultfd_ctx, but no UFFD flags in vma->vm_flags. The inconsistency is caused in ksm_madvise(): when user calls madvise() with MADV_UNMEARGEABLE on a VMA that is registered for UFFD in MINOR mode, it accidentally clears all flags stored in the upper 32 bits of vma->vm_flags. Assuming x86_64 kernel build, unsigned long is 64-bit and unsigned int and int are 32-bit wide. This setup causes the following mishap during the &= ~VM_MERGEABLE assignment. VM_MERGEABLE is a 32-bit constant of type unsigned int, 0x8000'0000. After ~ is applied, it becomes 0x7fff'ffff unsigned int, which is then promoted to unsigned long before the & operation. This promotion fills upper 32 bits with leading 0s, as we're doing unsigned conversion (and even for a signed conversion, this wouldn't help as the leading bit is 0). & operation thus ends up AND-ing vm_flags with 0x0000'0000'7fff'ffff instead of intended 0xffff'ffff'7fff'ffff and hence accidentally clears the upper 32-bits of its value. Fix it by changing `VM_MERGEABLE` constant to unsigned long, using the BIT() macro. Note: other VM_* flags are not affected: This only happens to the VM_MERGEABLE flag, as the other VM_* flags are all constants of type int and after ~ operation, they end up with leading 1 and are thus converted to unsigned long with leading 1s. Note 2: After commit 31defc3b01d9 ("userfaultfd: remove (VM_)BUG_ON()s"), this is no longer a kernel BUG, but a WARNING at the same place: [ 45.595973] WARNING: CPU: 1 PID: 2474 at mm/userfaultfd.c:2067 but the root-cause (flag-drop) remains the same. [akpm@linux-foundation.org: rust bindgen wasn't able to handle BIT(), from Miguel]

OrtaCVSS 5.5 · v3.1—Kavram kanıtı Düzeltme var
Yayın
28 Eki 2025
Güncelleme
5 Ağu 2026
EPSS
%0,4 · 29. yüzdelik
CWE
—
Bu CVE’yi takip et

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ı

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

CNA ile NVD puanı

NVD
5,5
CNA · Linux
7,8
2,3 puan fark

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Kaydı açan otoritenin puanı ile NVD’nin bağımsız puanı. İki puan arasındaki fark ciddiyetin tartışmalı olduğunu gösterir.

Etkilenen sistemler

ÜreticiÜrün
linuxlinux kernel

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.

  • linux linux kernel4.6 ve sonrası · 5.4.302 öncesi
  • linux linux kernel5.5 ve sonrası · 5.10.247 öncesi
  • linux linux kernel5.11 ve sonrası · 5.15.197 öncesi
  • linux linux kernel5.16 ve sonrası · 6.1.158 öncesi
  • linux linux kernel6.2 ve sonrası · 6.6.114 öncesi
  • linux linux kernel6.7 ve sonrası · 6.12.55 öncesi
  • linux linux kernel6.13 ve sonrası · 6.17.3 öncesi

Ü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

    • 4.6etkilenir
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · 850f1ea245bdc0ce6a3fd36bfb80d8cf9647cb71 öncesietkilenir · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · 788e5385d0ff69cdba1cabccb9dab8d9647b9239 öncesietkilenir · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · b69f19244c2b6475c8a6eb72f0fb0d53509e48cd öncesietkilenir · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · 41cb9fd904fe0c39d52e82dd84dc3c96b7aa9693 öncesietkilenir · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · 92b82e232b8d8b116ac6e57aeae7a6033db92c60 öncesietkilenir · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · ac50c6e0a8f91a02b681af81abb2362fbb67cc18 öncesietkilenir · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · 76385629f45740b7888f8fcd83bde955b10f61fe öncesietkilenir · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 ve sonrası · f04aad36a07cc17b7a5d5b9a2d386ce6fae63e93 öncesietkilenir · git
    • 4.6 öncesietkilenmez · semver

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:12linux6.1.158-1 öncesi6.1.158-1
Debian:13linux6.12.57-1 öncesi6.12.57-1
Debian:14linux6.17.6-1 öncesi6.17.6-1
openSUSE:Leap 15.6dtb-aarch646.4.0-150600.23.81.1 öncesi6.4.0-150600.23.81.1
openSUSE:Leap 15.6kernel-debug6.4.0-150600.23.81.3 öncesi6.4.0-150600.23.81.3
openSUSE:Leap 15.6kernel-kvmsmall6.4.0-150600.23.81.3 öncesi6.4.0-150600.23.81.3
openSUSE:Leap 15.6kernel-obs-qa6.4.0-150600.23.81.1 öncesi6.4.0-150600.23.81.1
openSUSE:Tumbleweedkernel-source6.17.7-1.1 öncesi6.17.7-1.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-64kb5.3.18-150300.59.229.3 öncesi5.3.18-150300.59.229.3
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-default-base5.3.18-150300.59.229.3.150300.18.136.3 öncesi5.3.18-150300.59.229.3.150300.18.136.3
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-docs5.3.18-150300.59.229.2 öncesi5.3.18-150300.59.229.2
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-obs-build5.3.18-150300.59.229.3 öncesi5.3.18-150300.59.229.3
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-preempt5.3.18-150300.59.229.3 öncesi5.3.18-150300.59.229.3
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-source5.3.18-150300.59.229.3 öncesi5.3.18-150300.59.229.3
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-syms5.3.18-150300.59.229.1 öncesi5.3.18-150300.59.229.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-64kb5.14.21-150400.24.187.3 öncesi5.14.21-150400.24.187.3
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-docs5.14.21-150400.24.187.1 öncesi5.14.21-150400.24.187.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-obs-build5.14.21-150400.24.187.3 öncesi5.14.21-150400.24.187.3
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-source5.14.21-150400.24.187.3 öncesi5.14.21-150400.24.187.3
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-syms5.14.21-150400.24.187.1 öncesi5.14.21-150400.24.187.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOSkernel-64kb5.14.21-150500.55.130.3 öncesi5.14.21-150500.55.130.3
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOSkernel-docs5.14.21-150500.55.130.1 öncesi5.14.21-150500.55.130.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOSkernel-obs-build5.14.21-150500.55.130.3 öncesi5.14.21-150500.55.130.3
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOSkernel-syms5.14.21-150500.55.130.1 öncesi5.14.21-150500.55.130.1

+74

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
  • 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 creKEV
    77Bu 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 addKEV
    77Bu 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 loKEV
    77Bu 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 / paketDüzeltilmiş sürümKaynak
Linux Linux41cb9fd904fe0c39d52e82dd84dc3c96b7aa9693Üretici (CNA)
Linux Linux76385629f45740b7888f8fcd83bde955b10f61feÜretici (CNA)
Linux Linux788e5385d0ff69cdba1cabccb9dab8d9647b9239Üretici (CNA)
Linux Linux850f1ea245bdc0ce6a3fd36bfb80d8cf9647cb71Üretici (CNA)
Linux Linux92b82e232b8d8b116ac6e57aeae7a6033db92c60Üretici (CNA)
Linux Linuxac50c6e0a8f91a02b681af81abb2362fbb67cc18Üretici (CNA)
Linux Linuxb69f19244c2b6475c8a6eb72f0fb0d53509e48cdÜretici (CNA)
Linux Linuxf04aad36a07cc17b7a5d5b9a2d386ce6fae63e93Üretici (CNA)
azl3 kernel 6.6.112.1-2 on Azure Linux 3.06.6.117.1-1 · CBL-Mariner ReleasesMicrosoft (MSRC)
cbl2 kernel 5.15.186.1-1 on CBL Mariner 2.05.15.200.1-1 · CBL-Mariner ReleasesMicrosoft (MSRC)
debian:linux6.1.158-1 · Debian:12Paket deposu (OSV)
opensuse:dtb-aarch646.4.0-150600.23.81.1 · openSUSE:Leap 15.6Paket deposu (OSV)
opensuse:kernel-64kb6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Paket deposu (OSV)
opensuse:kernel-debug6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Paket deposu (OSV)
suse:kernel-64kb6.4.0-150600.23.81.3 · SUSE:Linux Enterprise Module for Basesystem 15 SP6Paket deposu (OSV)
suse:kernel-64kb6.4.0-150700.53.25.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP7Paket deposu (OSV)
suse:kernel-default6.4.0-150600.23.81.3 · SUSE:Linux Enterprise Module for Basesystem 15 SP6Paket deposu (OSV)
suse:kernel-default6.4.0-150700.53.25.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP7Paket deposu (OSV)
suse:kernel-default-base6.4.0-150600.23.81.3.150600.12.36.3 · SUSE:Linux Enterprise Module for Basesystem 15 SP6Paket deposu (OSV)
suse:kernel-default-base6.4.0-150700.53.25.1.150700.17.17.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP7Paket deposu (OSV)
suse:kernel-docs6.4.0-150600.23.81.1 · SUSE:Linux Enterprise Module for Development Tools 15 SP6Paket deposu (OSV)
suse:kernel-docs6.4.0-150700.53.25.2 · SUSE:Linux Enterprise Module for Development Tools 15 SP7Paket deposu (OSV)
suse:kernel-livepatch-SLE15-SP6_Update_181-150600.13.3.3 · SUSE:Linux Enterprise Live Patching 15 SP6Paket deposu (OSV)
suse:kernel-livepatch-SLE15-SP7_Update_71-150700.15.3.1 · SUSE:Linux Enterprise Live Patching 15 SP7Paket deposu (OSV)
suse:kernel-obs-build6.4.0-150600.23.81.3 · SUSE:Linux Enterprise Module for Development Tools 15 SP6Paket deposu (OSV)
suse:kernel-obs-build6.4.0-150700.53.25.1 · SUSE:Linux Enterprise Module for Development Tools 15 SP7Paket deposu (OSV)
suse:kernel-source6.4.0-150600.23.81.2 · SUSE:Linux Enterprise Module for Basesystem 15 SP6Paket deposu (OSV)
suse:kernel-source6.4.0-150700.53.25.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP7Paket deposu (OSV)
suse:kernel-syms6.4.0-150600.23.81.1 · SUSE:Linux Enterprise Module for Development Tools 15 SP6Paket deposu (OSV)
suse:kernel-syms6.4.0-150700.53.25.1 · SUSE:Linux Enterprise Module for Development Tools 15 SP7Paket deposu (OSV)

+2

İstismar durumu

Kavram kanıtı mevcut

Kamuya açık bir kavram kanıtı ya da tespit imzası var. İstismar bilgisi dışarıda; yamayı geciktirmeyin.

Kanıt

  • GitHub’da kavram kanıtı deposu ×1

Noroxi istismar kodu barındırmaz ve istismar bağlantısı vermez. Metasploit modül adı ve Nuclei şablon kimliği gösterilir (kod değil, ad); Exploit-DB kayıtları ve PoC depoları yalnızca sayı olarak verilir.

Kamuya açık istismar kanıtı
KaynakTürTarih
GitHub’da kavram kanıtı deposustars:122025-12-01

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.

  1. Yayın
  2. İlk kavram kanıtı+34 gün
  3. Bugün30 Eyl 2026+337 gün
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ı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.

Noroxi analizi

Bu kayıt için henüz Noroxi analizi yok

385 binden fazla 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 isteyin

Değişiklik günlüğü

  1. Düzeltme✗ → ✓

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

Referanslar

Tüm kayıtlar