Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-31431 — # CVE-2026-31431 के लिए कर्नेल विशेषाधिकार वृद्धि शोषण AF_ALG इंटरफ़ेस का दुरुपयोग करके /bin/su को अधिलेखित करने और रूट शेल प्राप्त करने के लिए कर्नेल विशेषाधिकार वृद्धि शोषण। इसमें C कार्यान्वयन और समस्या निवारण मार्गदर्शिका शामिल है। | Kitploit
उपकरण/GitHubGitHub/0xshe/cve-2026-31431
विशेषाधिकार वृद्धिशोषण फ्रेमवर्कशोषणलर्निंग और शिक्षाबाइनरी शोषण
GitHub0xshe/cve-2026-31431

CVE-2026-31431

# CVE-2026-31431 के लिए कर्नेल विशेषाधिकार वृद्धि शोषण AF_ALG इंटरफ़ेस का दुरुपयोग करके /bin/su को अधिलेखित करने और रूट शेल प्राप्त करने के लिए कर्नेल विशेषाधिकार वृद्धि शोषण। इसमें C कार्यान्वयन और समस्या निवारण मार्गदर्शिका शामिल है।

रिपॉजिटरी देखें
40203 महीने पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

लेखक: 0xShe

भाषा / Language

  • English: https://github.com/0xShe/CVE-2026-31431/blob/main/README.md
  • 中文: https://github.com/0xShe/CVE-2026-31431/blob/main/README-CN.md 1

CVE-2026-31431 कर्नेल विशेषाधिकार वृद्धि उपकरण मार्गदर्शिका

0x01 त्वरित आरंभ

कुछ लक्षित वातावरणों में Python स्थापित नहीं है, इसलिए इस विशेषाधिकार वृद्धि तर्क को C में पुनः लिखा गया है।

  1. संकलन

अपनी Linux मशीन या WSL पर निम्नलिखित कमांड चलाएँ (GLIBC संस्करण समस्याओं से बचने के लिए -static उपयोग करने की अनुशंसा की जाती है):

root@kitploit:~
gcc -static exploit.c -o exploit

2. परिनियोजन और निष्पादन

उत्पन्न बाइनरी को लक्षित मशीन पर अपलोड करें:

root@kitploit:~
chmod +x exploit
./exploit

यदि शोषण सफल होता है, तो प्रोग्राम स्वचालित रूप से su निष्पादित करेगा और बिना पासवर्ड की आवश्यकता के सीधे रूट शेल उत्पन्न करेगा।


0x02 विशेषाधिकार वृद्धि तर्क: यह कैसे काम करता है?

यह शोषण Linux कर्नेल के AF_ALG इंटरफ़ेस (कर्नेल क्रिप्टो API) में एक तर्क दोष का दुरुपयोग करता है।

  1. क्रिप्टो सॉकेट बनाएँ प्रोग्राम socket(AF_ALG, ...) का उपयोग करके एक AEAD (प्रमाणित एन्क्रिप्शन विथ एसोसिएटेड डेटा) सॉकेट बनाता है।

  2. मेमोरी इंजेक्शन (Splice) Linux के splice सिस्टम कॉल का लाभ उठाकर, फ़ाइल डिस्क्रिप्टर (इस मामले में /bin/su) से डेटा को सीधे कर्नेल क्रिप्टो बफर में पुनर्निर्देशित किया जा सकता है।

  3. पेलोड ओवरराइट विशिष्ट मेमोरी ऑफसेट का उपयोग करके, शोषण /bin/su की प्रमाणीकरण तर्क के हिस्से को विशेषाधिकार वृद्धि पेलोड (एक न्यूनतम ELF प्रोग्राम जो /bin/sh लॉन्च करता है) से बदल देता है।

  4. विशेषाधिकार वृद्धि ट्रिगर करें कर्नेल द्वारा क्रिप्टो ऑपरेशनों की श्रृंखला पूरी करने के बाद, मेमोरी में मौजूद su प्रक्रिया पहले ही छेड़छाड़ की जा चुकी होती है। जब system("su") अंततः निष्पादित होता है, तो सिस्टम वास्तव में संशोधित रूट शेल पेलोड चलाता है।


0x03 समस्या निवारण मार्गदर्शिका: यह अभी भी पासवर्ड क्यों माँगता है?

डिबगिंग के दौरान, यदि प्रोग्राम Exploit finished आउटपुट करता है लेकिन su चलाने पर अभी भी पासवर्ड की आवश्यकता होती है, तो समस्या आमतौर पर निम्नलिखित विवरणों में से किसी एक के कारण होती है।

  1. महत्वपूर्ण MSG_MORE फ़्लैग

यह सबसे सामान्य विफलता बिंदु है। sendmsg कॉल में MSG_MORE फ़्लैग शामिल होना चाहिए।

  • कारण: यह फ़्लैग कर्नेल को बताता है कि और डेटा आ रहा है और क्रिप्टो बफर को बहुत जल्दी अंतिम रूप देने से रोकता है।

  • परिणाम: इस फ़्लैग के बिना, कर्नेल तुरंत वर्तमान क्रिप्टो संदर्भ को बंद कर देता है। परिणामस्वरूप, बाद का splice इंजेक्शन सही कर्नेल बफर में प्रवेश नहीं कर पाता, जिससे ओवरराइट असंभव हो जाता है।

  1. एसोसिएटेड डेटा लंबाई (Assoclen)

कर्नेल AEAD एसोसिएटेड डेटा के लिए संरेखण और लंबाई जाँच के बारे में अत्यंत सख्त है।

  • नुकसान: यदि C कोड में ASSOCLEN को 4 बाइट्स पर सेट किया गया है जबकि कर्नेल 8 बाइट्स की अपेक्षा करता है (या इसके विपरीत), तो कर्नेल या तो अमान्य तर्क त्रुटि दे सकता है या इंजेक्शन तर्क को पूरी तरह से चुपचाप छोड़ सकता है।
  1. फ़ाइल ऑफसेट रीसेट

/bin/su को संशोधित करने वाले लूप के दौरान, प्रत्येक splice ऑपरेशन को ऑफसेट 0 से पढ़ना शुरू करना चाहिए।

  • नुकसान: यदि off_su को स्पष्ट रूप से 0 पर रीसेट नहीं किया जाता है, तो splice read() के समान व्यवहार करता है और फ़ाइल पॉइंटर को आगे बढ़ाता रहता है। दूसरे पुनरावृत्ति पर, इंजेक्ट किया गया डेटा गलत संरेखित हो जाता है, जो su को दूषित कर सकता है या शोषण तर्क को तोड़ सकता है।
  1. कर्नेल पैच

कुछ सिस्टमों पर पहले से ही मौन सुरक्षा पैच लागू हो सकते हैं। यह कई मशीनों पर परीक्षण के दौरान पुष्टि की गई थी — कुछ लक्ष्यों को पहले ही अनौपचारिक या बैकपोर्टेड फिक्स प्राप्त हो चुके थे।


0x04 नोट्स

  • कर्नेल संस्करण: यह भेद्यता मुख्य रूप से प्रारंभिक 5.x Linux कर्नेल (जैसे Ubuntu 20.04 का प्रारंभिक रिलीज़) को प्रभावित करती है। यदि कर्नेल पहले ही पैच किया जा चुका है, तो यह विधि अब काम नहीं करेगी।

  • पथ अंतर: विभिन्न Linux वितरण su को विभिन्न स्थानों (/bin/su या /usr/bin/su) में संग्रहीत कर सकते हैं। कोड सही पथ का स्वचालित रूप से पता लगाने का प्रयास करता है, लेकिन यदि दोनों मौजूद नहीं हैं, तो which su का उपयोग करके मैन्युअल रूप से सत्यापित करें और कोड को तदनुसार संशोधित करें।

  • अस्वीकरण: यह लेख पूर्ण रूप से तकनीकी अनुसंधान और शैक्षिक उद्देश्यों के लिए है। इसे अवैध गतिविधियों के लिए उपयोग न करें। उपकरण के दुरुपयोग से उत्पन्न किसी भी कानूनी परिणाम के लिए उपयोगकर्ता पूर्ण रूप से जिम्मेदार हैं।

टूल डाउनलोड करें