
CVE-2025-40271 का तकनीकी विश्लेषण, Linux कर्नेल के /proc फाइल सिस्टम में एक महत्वपूर्ण Use-After-Free भेद्यता, जिसमें मूल कारण, पुनरुत्पादन चरण और पैच विवरण शामिल हैं।
🔴 CVE-2025-40271: Linux कर्नेल में क्रिटिकल Use-After-Free भेद्यता
CVE-2025-40271 एक क्रिटिकल Use-After-Free (UAF) भेद्यता है जो Linux कर्नेल की /proc फ़ाइल सिस्टम को प्रभावित करती है। यह खामी /proc के अंदर निर्देशिकाओं की सामग्री को सूचीबद्ध करने के लिए जिम्मेदार proc_readdir_de() फ़ंक्शन में स्थित है।
जब एक निर्देशिका प्रविष्टि (PDE) को rb_erase() के माध्यम से बाइनरी ट्री (rbtree) से हटा दिया जाता है, तो कर्नेल नोड को खाली के रूप में चिह्नित नहीं करता। यह एक खतरनाक परिदृश्य उत्पन्न करता है:
/proc/pid/net/dev_snmp6/) जबकि दूसरी नेटवर्क इंटरफ़ेस हटा रही है (जैसे tun उपकरण), तो पॉइंटर की ओर इशारा कर सकता है।| क्षेत्र | विवरण |
|---|---|
| ID | CVE-2025-40271 |
| घटक | Linux कर्नेल (fs/proc) |
| गंभीरता | उच्च (हालांकि अभी तक NVD/NIST द्वारा आधिकारिक रूप से मूल्यांकित नहीं) |
| उत्पत्ति | stress-ng (एक साथ getdent और tun मामले) के साथ पता लगाया गया |
| NVD स्थिति | प्राथमिकता नहीं संवर्धन के लिए (सीमित संसाधन) |
कर्नेल विकास दल ने एक महत्वपूर्ण पैच लागू किया जो नोड हैंडलिंग को RB_CLEAR_NODE() से बदल देता है। यह सुनिश्चित करता है कि:
NULL लौटाता है।पैच निम्नलिखित स्थिर शाखाओं में पहले से उपलब्ध है:
पैच के सटीक कोड की समीक्षा करने के लिए, इन कमिट्स को देखें:
"In the Linux kernel, the following vulnerability has been resolved: fs/proc: fix uaf in proc_readdir_de(). PDE is erased from subdir rbtree through
rb_erase(), but not set the node to EMPTY, which may result in UAF access. We should useRB_CLEAR_NODE()to set the erased node to EMPTY, thenpde_subdir_next()will returnNULLto avoid UAF access."
/proc/pid/net/dev_snmp6/ को पार करने के लिए getdent का उपयोग करें (वर्तमान पॉइंटर tun3 है)।tun3 और tun2) का पंजीकरण रद्द करें, उन्हें ट्री से हटा दें।
tun3 हटाया जाता है, फिर tun2 (स्लैब को मुक्त किया जाता है)।getdent के साथ पार करना जारी रखता है, लेकिन pde_subdir_next() पहले से मुक्त tun2 लौटाता है, जिससे UAF होता है।| CWE-ID | नाम | स्रोत |
|---|---|---|
| CWE-416 | Use After Free | NVD |
| URL | विवरण |
|---|---|
| NVD - CVE-2025-40271 | आधिकारिक विवरण (अभी भी CVSS स्कोर रहित) |
| Kernel.org Commits | पैच का स्रोत कोड |
⚠️ अंतिम अनुशंसा:
यदि आप कर्नेल संस्करण 6.1.x, 6.6.x, 6.12.x या 6.13.x का उपयोग कर रहे हैं, तो तुरंत पैच किए गए संस्करण में अपडेट करें। यदि संभव न हो, तो कमिट्स को मैन्युअल रूप से लागू करने या सुरक्षा नीतियों (जैसे chroot, SELinux) के माध्यम से /proc तक पहुँच को प्रतिबंधित करने पर विचार करें।