CVE-2025-38502
bpf: cgroup लोकल स्टोरेज में oob एक्सेस ठीक करें
- प्रकाशित
- 16 अग॰ 2025
- अद्यतन
- 5 अग॰ 2026
- सीएनए असाइन करना
- Linux
- साक्ष्य देखे गए
- 11 सित॰ 2026
प्राथमिक सीवीएसएस
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:Hकम · अगले 30 दिन
- प्रतिशत
- 6.1%
- मॉडल दिनांक
- 21 सित॰ 2026
ईपीएसएस एक सांख्यिकीय अनुमान है, कोई निश्चितता या प्रभाव का माप नहीं। इसे सीवीएसएस, केईवी स्थिति, एक्सपोज़र और अपने वातावरण के साथ मिलाएं।
सारांश
लिनक्स कर्नेल में, निम्नलिखित भेद्यता को हल किया गया है: bpf: cgroup लोकल स्टोरेज में oob एक्सेस को ठीक करें Lonial ने रिपोर्ट किया कि cgroup लोकल स्टोरेज में एक out-of-bounds एक्सेस को tail calls के माध्यम से तैयार किया जा सकता है। दो प्रोग्राम दिए गए हैं, प्रत्येक एक cgroup लोकल स्टोरेज का उपयोग कर रहा है जिसका मान आकार भिन्न है, और एक प्रोग्राम दूसरे में tail call कर रहा है। verifier प्रत्येक व्यक्तिगत प्रोग्राम को ठीक से मान्य करेगा। हालाँकि, रनटाइम संदर्भ में bpf_cg_run_ctx एक bpf_prog_array_item रखता है जिसमें BPF प्रोग्राम के साथ-साथ प्रोग्राम द्वारा उपयोग किया जाने वाला कोई भी cgroup लोकल स्टोरेज फ्लेवर शामिल होता है। bpf_get_local_storage() जैसे हेल्पर्स इसे रनटाइम संदर्भ से उठाते हैं: ctx = container_of(current->bpf_ctx, struct bpf_cg_run_ctx, run_ctx); storage = ctx->prog_item->cgroup_storage[stype]; if (stype == BPF_CGROUP_STORAGE_SHARED) ptr = &READ_ONCE(storage->buf)->data[0]; else ptr = this_cpu_ptr(storage->percpu_buf); दूसरे प्रोग्राम के लिए जिसे मूल रूप से संलग्न प्रोग्राम से कॉल किया गया था, इसका मतलब है कि bpf_get_local_storage() पूर्व प्रोग्राम का मैप उठाएगा, न कि अपना। बेमेल आकारों के साथ, यह एक अनपेक्षित out-of-bounds एक्सेस का परिणाम हो सकता है। इस समस्या को ठीक करने के लिए, हमें bpf_map_owner को storage_cookie[] की एक सरणी के साथ विस्तारित करने की आवश्यकता है ताकि मिलान किया जा सके i) मूल प्रोग्राम से सटीक मैप्स यदि दूसरा प्रोग्राम bpf_get_local_storage() का उपयोग कर रहा था, या ii) tail call संयोजन की अनुमति दें यदि दूसरा प्रोग्राम किसी भी cgroup लोकल स्टोरेज मैप का उपयोग नहीं कर रहा था।
स्रोत
1- CVE-2025-38502-Linux-LPEअनुसंधान
CVE-2025-38502 के लिए शोध रिपॉज़िटरी, जो Linux kernel BPF cgroup local storage में tail calls के माध्यम से out-of-bounds access को सक्षम बनाता है, जिससे local privilege escalation संभव होता है।
जिम्मेदारीपूर्ण उपयोग
भेद्यता जानकारी का उपयोग केवल उन प्रणालियों पर करें जिनके मालिक आप हैं या परीक्षण के लिए अधिकृत हैं। किटप्लॉइट सार्वजनिक अनुसंधान मेटाडेटा से लिंक करता है और शोषण कोड या दुर्भावनापूर्ण पेलोड को संग्रहीत नहीं करता है।