CVE-2024-36971 — प्रूफ़ ऑफ़ कॉन्सेप्ट (केवल अनुसंधान और विश्लेषण हेतु)
⚠️ अस्वीकरण — इस रिपॉजिटरी का उपयोग करने से पहले पढ़ें
यह रिपॉजिटरी केवल रक्षात्मक अनुसंधान, विश्लेषण और जिम्मेदार रिपोर्टिंग के लिए है।
इसमें CVE-2024-36971 नामक एक गैर-शोषणीय प्रूफ़ ऑफ़ कॉन्सेप्ट फ़ाइल और प्रभावित क्षेत्र को स्पष्ट करने के लिए एक सार्वजनिक रूप से उपलब्ध Android कर्नेल हेडर स्निपेट (sock.h) शामिल है।
कोई शोषण कोड, पुनरुत्पादन कमांड या चरण-दर-चरण निर्देश प्रदान नहीं किए गए हैं। इस रिपॉजिटरी से किसी भी फ़ाइल को उत्पादन उपकरणों, तृतीय-पक्ष सिस्टम या उन नेटवर्कों पर न चलाएं जिन्हें आप नियंत्रित नहीं करते। लेखक किसी भी दुरुपयोग के लिए उत्तरदायित्व से इनकार करता है।
विषय सूची
- Overview
- Repository contents
- High-level technical summary
- About the included
sock.h snippet
- Research environment (high-level, non-actionable)
- Observed result (test device)
- Responsible disclosure & contact
- Legal & ethical notice
1. अवलोकन
CVE-2024-36971 Android कर्नेल नेटवर्क सबसिस्टम में एक Use-After-Free (UAF) भेद्यता है। मूल कारण सॉकेट रूटिंग (sk->sk_dst_cache) द्वारा उपयोग किए जाने वाले गंतव्य कैश (dst) को संभालने में संक्रियाओं का असुरक्षित क्रम है, जो समवर्ती कोड पथों के लिए एक लटकता हुआ पॉइंटर छोड़ सकता है। यह रिपॉजिटरी एक रक्षात्मक अनुसंधान PoC का दस्तावेज़ीकरण करती है जो शोषण प्रिमिटिव प्रदान किए बिना प्रभाव (कर्नेल अस्थिरता और डेटा भ्रष्टाचार) प्रदर्शित करता है।
यह README बताता है कि PoC क्या प्रदर्शित करता है, शामिल sock.h क्यों प्रासंगिक है, और परीक्षण और साझाकरण के आसपास जिम्मेदार बाधाएँ क्या हैं।
2. रिपॉजिटरी सामग्री
CVE-2024-36971 — PoC स्रोत फ़ाइल (पारदर्शिता के लिए रिपॉजिटरी में रखी गई है)। निष्पादित करने का इरादा नहीं है; केवल संग्रह/विश्लेषण उद्देश्यों के लिए शामिल की गई है।
sock.h — सार्वजनिक Android कर्नेल हेडर स्निपेट जो मुद्दे से संबंधित सॉकेट/गंतव्य संरचनाओं और सहायकों को दिखाता है।
README.md — यह फ़ाइल (दस्तावेज़ीकरण और मार्गदर्शन)।
3. उच्च-स्तरीय तकनीकी सारांश (गैर-कार्यात्मक)
- मूल कारण: रूटिंग/गंतव्य कैश कोड पथ में
dst ऑब्जेक्ट्स के संदर्भ हैंडलिंग और रिलीज़ का अनुचित क्रम, जो Use-After-Free (UAF) की अनुमति देता है।
- ट्रिगर वेक्टर (उच्च स्तर): एक नेटवर्क पथ जो कर्नेल में
__dst_negative_advice() / गंतव्य कैश कोड पथ का अभ्यास करता है, UAF स्थिति उत्पन्न कर सकता है। यह रिपॉजिटरी इसे ट्रिगर करने के लिए निर्देश प्रदान नहीं करती।
- देखा गया प्रभाव: कर्नेल मेमोरी भ्रष्टाचार, अस्थिरता, और परीक्षण की गई परिस्थितियों में, स्टोरेज मेटाडेटा भ्रष्टाचार जो "डेटा दूषित" बूट स्थिति (सॉफ्ट-ब्रिक) की ओर ले जाता है।
- शोषणीयता स्थिति: PoC प्रभाव प्रदर्शित करता है और एक महत्वपूर्ण कर्नेल बग की उपस्थिति की पुष्टि करता है। परीक्षण में देखा गया भ्रष्टाचार गैर-नियतात्मक और विनाशकारी था, कोड निष्पादन के लिए एक स्थिर, विश्वसनीय शोषण नहीं। बग को एक विश्वसनीय शोषण में बदलने के लिए उन्नत हीप हेरफेर और आवंटक नियंत्रण की आवश्यकता होगी — ऐसा कार्य इस रिपॉजिटरी के दायरे से बाहर है और प्रदान नहीं किया गया है।
4. शामिल sock.h स्निपेट के बारे में
sock.h हेडर एक सार्वजनिक रूप से उपलब्ध कर्नेल हेडर है (Android कर्नेल ट्री से स्रोतित) जिसमें शामिल हैं:
struct sock और संबंधित नेटवर्किंग संरचनाओं के लिए परिभाषाएँ;
sk_dst_cache (सॉकेट गंतव्य कैश) और गंतव्य संदर्भ प्राप्त/सेट करने के लिए सहायकों के संदर्भ;
- RCU/refcount एक्सेस पैटर्न और
dst_release() उपयोग।
यह स्निपेट CVE-2024-36971 को प्रासंगिक बनाने वाली सटीक संरचनाओं और कोड स्थानों को दिखाने के लिए शामिल किया गया है। हेडर उन डेटा फ़ील्ड और फ़ंक्शन को दिखाकर इस README में स्पष्टीकरण का समर्थन करता है जिनका क्रम या सिंक्रनाइज़ेशन सहीता के लिए महत्वपूर्ण है।
5. अनुसंधान वातावरण (उच्च-स्तरीय, गैर-कार्यात्मक)
नोट: निम्नलिखित सुरक्षा शोधकर्ताओं द्वारा नियंत्रित प्रयोगशाला में उपयोग की जाने वाली विशिष्ट क्षमताओं और उपकरणों की एक सूची है। यह जानबूझकर गैर-कार्यात्मक है — कोई कमांड, कोई स्क्रिप्ट, कोई पैरामीटर मान नहीं।
सुरक्षित, पृथक कर्नेल अनुसंधान के लिए अनुशंसित क्षमताएँ:
- तृतीय-पक्ष प्रणालियों पर आकस्मिक प्रभाव सुनिश्चित करने के लिए एक पृथक परीक्षण नेटवर्क या एयर-गैप्ड प्रयोगशाला।
- समर्पित परीक्षण हार्डवेयर जिसका आप स्वामित्व रखते हैं और पूरी तरह से रीफ़्लैश/वाइप कर सकते हैं (उत्पादन या तृतीय-पक्ष उपकरणों का उपयोग न करें)।
- नियंत्रित वातावरण में कर्नेल इमेज बनाने और डीबग करने के लिए वर्चुअलाइज़ेशन (जैसे, QEMU/KVM)।
- इंस्ट्रुमेंटेड/डीबग कर्नेल संकलित करने और प्रतीक मानचित्र उत्पन्न करने के लिए Android कर्नेल स्रोत ट्री और एक स्थानीय बिल्ड वातावरण।
- डीबग/लॉगिंग उपकरण और वर्कफ़्लो: डिवाइस एक्सेस के लिए
adb/fastboot, dmesg/last_kmsg का संग्रह, और कर्नेल पतों को स्रोत पंक्तियों (प्रतीक फ़ाइलें, addr2line, आदि) में मैप करने के लिए उपकरण।
- कर्नेल डीबगिंग और सैनिटाइज़र (जैसा उपयुक्त) जैसे KASAN/KMSAN, ftrace, और मेमोरी सुरक्षा उल्लंघनों का पता लगाने के लिए अन्य ट्रेसिंग सुविधाएँ, शोषण का प्रयास किए बिना।
- लॉग, बैकट्रेस और फोटोग्राफिक साक्ष्य के लिए सुरक्षित आर्टिफैक्ट संग्रह और भंडारण।
6. देखा गया परिणाम (परीक्षणित उपकरण)
- परीक्षणित उपकरण: Nothing Phone (1) — शोधकर्ता के स्वामित्व और नियंत्रण वाला उपकरण। डिवाइस एक कर्नेल संशोधन चला रहा था जिसमें परीक्षण के समय सुधार शामिल नहीं था।
- परीक्षण संदर्भ: PoC को एक पृथक परीक्षण वातावरण में लक्ष्य डिवाइस के समान स्थानीय नेटवर्क से निष्पादित किया गया था।
- परिणाम: PoC ट्रैफ़िक के कई भेजने के बाद, डिवाइस ने गंभीर कर्नेल मेमोरी भ्रष्टाचार का अनुभव किया। भ्रष्टाचार स्टोरेज मेटाडेटा में फैल गया और डिवाइस "डेटा दूषित" दर्शाने वाली त्रुटि पर बूट हुआ। उपयोग योग्य स्थिति (सॉफ्ट-ब्रिक) में लौटने के लिए डिवाइस को मरम्मत/रीफ़्लैश की आवश्यकता थी।
- महत्वपूर्ण चेतावनी: यह व्यवहार विनाशकारी और गैर-नियतात्मक था; PoC ने एक विश्वसनीय कोड-निष्पादन प्रिमिटिव के बजाय भ्रष्टाचार और डेटा हानि उत्पन्न की। शोधकर्ता ने विनाशकारी व्यवहार देखने के बाद परीक्षण बंद कर दिया — लक्ष्य एक कार्यशील शोषण विकसित करना नहीं, बल्कि प्रभाव को सत्यापित करना था।
7. जिम्मेदार प्रकटीकरण और संपर्क
यह परियोजना जिम्मेदार प्रकटीकरण सिद्धांतों का पालन करती है। यदि आप एक विक्रेता, अनुरक्षक या सुरक्षा संपर्क हैं और मुद्दे को मान्य या सुधारने के लिए अतिरिक्त गैर-कार्यात्मक निदान आर्टिफैक्ट (पूर्ण बैकट्रेस, सैनिटाइज़्ड लॉग या फोरेंसिक डंप) की आवश्यकता है, तो कृपया एक सुरक्षित चैनल के माध्यम से रिपॉजिटरी स्वामी से संपर्क करें। पसंदीदा दृष्टिकोणों में शामिल हैं:
- एक निजी GitHub मुद्दा खोलना और एक सुरक्षित संचार चैनल इंगित करना, या
- PGP-एन्क्रिप्टेड ईमेल के माध्यम से सीधा संपर्क (अपनी सार्वजनिक कुंजी प्रदान करें या शोधकर्ता की कुंजी का अनुरोध करें)।
शोधकर्ता मान्य विक्रेताओं/अनुरक्षकों के साथ सहयोग करेगा और सुरक्षित, उपयुक्त शर्तों के तहत अतिरिक्त निदान सामग्री साझा करेगा। पुनरुत्पादनीय पुनरुत्पादन चरण सार्वजनिक रूप से प्रकाशित नहीं किए जाएंगे।
8. कानूनी और नैतिक सूचना
- यह रिपॉजिटरी जैसी है केवल अनुसंधान, शैक्षिक और रक्षात्मक उद्देश्यों के लिए प्रदान की गई है।
- लेखक दुर्भावनापूर्ण उपयोग का समर्थन नहीं करता और किसी भी दुरुपयोग के लिए उत्तरदायित्व से इनकार करता है।
- ऐसी प्रणालियों पर शामिल सामग्री का उपयोग न करें जिनका आप स्वामित्व या प्रबंधन नहीं करते।
- हमेशा लागू कानूनों, संस्थागत नीतियों और विक्रेता समन्वित प्रकटीकरण प्रक्रियाओं का पालन करें।