CVE-2026-31694
fuse: पेज कैश में अत्यधिक आकार वाले dirents को अस्वीकार करें
- प्रकाशित
- 1 मई 2026
- अद्यतन
- 5 अग॰ 2026
- सीएनए असाइन करना
- Linux
- साक्ष्य देखे गए
- 8 अग॰ 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 दिन
- प्रतिशत
- 20.8%
- मॉडल दिनांक
- 21 सित॰ 2026
ईपीएसएस एक सांख्यिकीय अनुमान है, कोई निश्चितता या प्रभाव का माप नहीं। इसे सीवीएसएस, केईवी स्थिति, एक्सपोज़र और अपने वातावरण के साथ मिलाएं।
सारांश
Linux कर्नेल में निम्नलिखित भेद्यता का समाधान कर दिया गया है: fuse: पेज कैश में अत्यधिक बड़े dirents को अस्वीकार करें fuse_add_dirent_to_cache() सर्वर-नियंत्रित namelen फ़ील्ड से एक सीरियलाइज़्ड dirent आकार की गणना करता है और dirent को एक एकल page-cache पेज में कॉपी करता है। मौजूदा तर्क केवल यह जाँचता है कि dirent वर्तमान पेज की शेष जगह में फिट बैठता है या नहीं, और यदि फिट नहीं बैठता है तो एक नए पेज पर आगे बढ़ जाता है। यह कभी जाँच नहीं करता कि dirent स्वयं PAGE_SIZE से अधिक है या नहीं। परिणामस्वरूप, एक दुर्भावनापूर्ण FUSE सर्वर namelen=4095 के साथ एक dirent लौटा सकता है, जिससे सीरियलाइज़्ड रिकॉर्ड का आकार 4120 बाइट्स बन जाता है। 4 KiB पेज सिस्टम पर यह memcpy() को कैश पेज से 24 बाइट्स आगे, अगले कर्नेल पेज में ओवरफ्लो करने का कारण बनता है। उन dirents को रीडडायर कैश (readdir cache) में कॉपी करने से पहले अस्वीकार करें जो एक ही पेज में फिट नहीं हो सकते।
स्रोत
1- CVE-2026-31694-POCएक्सप्लॉइट
लिनक्स कर्नेल FUSE readdir कैश आउट-ऑफ-बाउंड राइट (CVE-2026-31694): एक दुर्भावनापूर्ण FUSE सर्वर 24 बाइट्स द्वारा पेज-कैश पेज को ओवरफ्लो करता है। PoC के साथ-साथ /etc/passwd पेज-कैश भ्रष्टाचार के माध्यम से एक अविशेषाधिकार प्राप्त स्थानीय-रूट शोषण। केवल VM के अंदर चलाएँ।
जिम्मेदारीपूर्ण उपयोग
भेद्यता जानकारी का उपयोग केवल उन प्रणालियों पर करें जिनके मालिक आप हैं या परीक्षण के लिए अधिकृत हैं। किटप्लॉइट सार्वजनिक अनुसंधान मेटाडेटा से लिंक करता है और शोषण कोड या दुर्भावनापूर्ण पेलोड को संग्रहीत नहीं करता है।