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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2020-13768 — MiniShare 1.4.1 में स्टैक-आधारित बफ़र ओवरफ़्लो जो एक HTTP PUT अनुरोध के माध्यम से पहुंच योग्य है। | Kitploit
उपकरण/GitHubGitHub/themalwareguardian/cve-2020-13768
भेद्यता विश्लेषणशोषणशेलकोडडीबगर्सवेब सुरक्षाफज़िंगपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षापेलोड डेवलपमेंटबाइनरी शोषण
GitHubthemalwareguardian/cve-2020-13768

CVE-2020-13768

5 महीने पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

MiniShare 1.4.1 में स्टैक-आधारित बफ़र ओवरफ़्लो जो एक HTTP PUT अनुरोध के माध्यम से पहुंच योग्य है।

रिपॉजिटरी देखें

🐞 CVE-2020-13768: MiniShare 1.4.1 - स्टैक-आधारित बफर ओवरफ़्लो

MiniShare 1.4.1 में स्टैक-आधारित बफर ओवरफ़्लो, एक HTTP PUT अनुरोध के माध्यम से पहुँचा जा सकता है।




📑 विषय सूची

  • यह रिपॉजिटरी क्यों मौजूद है
  • यह कमजोरी क्यों दिलचस्प है
  • संदर्भ और प्रभावित सॉफ्टवेयर
  • कमजोरी के बारे में
  • क्रैश को ट्रिगर करना
  • शोषण



🎓 यह रिपॉजिटरी क्यों मौजूद है

यह रिपॉजिटरी उस सामग्री का हिस्सा है जिसका उपयोग मैं मेमोरी करप्शन शोषण (एक्सप्लॉइटेशन) सिखाते समय करता हूँ (अपने नियमित काम के अलावा, मैं विभिन्न साइबर सुरक्षा पाठ्यक्रमों में भी पढ़ाता हूँ, जहाँ मैं रिवर्स इंजीनियरों की अगली पीढ़ी को प्रशिक्षित करने में मदद करता हूँ)।

CVE-2020-13768 एक ऐसा मामला है जिसका उपयोग मैं तब करता हूँ जब मैं यह दिखाना चाहता हूँ कि सरल नेटवर्क-मुख सर्वर मानक प्रोटोकॉल विधियों के माध्यम से क्लासिक स्टैक-आधारित बफर ओवरफ़्लो को कैसे उजागर कर सकते हैं। कमजोर एंडपॉइंट के लिए कोई प्रमाणीकरण आवश्यक नहीं है, ओवरफ़्लो एक सीधा EIP ओवरराइट है, और शोषण पथ साफ और अच्छी तरह से परिभाषित है। यह एक यथार्थवादी अप्रमाणित रिमोट परिदृश्य में पूर्ण शोषण पद्धति सीखने के लिए एक आदर्श मामला है।

एक शिक्षण अभ्यास के रूप में इस मामले को और भी दिलचस्प बनाता है कि एक ही मूल कारण, फिक्स्ड-साइज़ स्टैक बफर में अनसैनिटाइज़्ड इनपुट की प्रतिलिपि, एक ही बाइनरी के लिए कई CVE प्रविष्टियों में दिखाई देता है। CVE-2018-19861, CVE-2018-19862, और CVE-2019-17601 एक ही प्रकार की कमजोरी का वर्णन करते हैं, बस विभिन्न शोधकर्ताओं द्वारा विभिन्न HTTP विधियों या एंडपॉइंट के माध्यम से रिपोर्ट किया गया। यह छात्रों को केवल CVE संख्याओं के बजाय मूल कारणों को देखना सिखाता है।




💡 यह कमजोरी क्यों दिलचस्प है

यह कमजोरी MiniShare 1.4.1 को प्रभावित करती है, जो एक बंद हो चुका हल्का Windows HTTP सर्वर है जिसे सरल स्थानीय फ़ाइल साझाकरण के लिए डिज़ाइन किया गया था। यह सॉफ्टवेयर आधुनिक सुरक्षा प्रथाओं को ध्यान में रखे बिना लिखा गया था। शिक्षण के दृष्टिकोण से इस मामले को विशेष रूप से दिलचस्प बनाता है कि इसमें शामिल कारकों का संयोजन है:

  • कोई प्रमाणीकरण आवश्यक नहीं। HTTP PUT विधि को बिना किसी क्रेडेंशियल जाँच के संसाधित किया जाता है। नेटवर्क पर कोई भी रिमोट हमलावर एक ही crafted अनुरोध के साथ कमजोरी को ट्रिगर कर सकता है।
  • हमले का वेक्टर के रूप में मानक प्रोटोकॉल विधि। ओवरफ़्लो HTTP PUT अनुरोध के माध्यम से ट्रिगर होता है — कोई कस्टम प्रोटोकॉल या अस्पष्ट कमांड नहीं। यह दिखाता है कि मानक, प्रसिद्ध प्रोटोकॉल विधियाँ कस्टम इंटरफेस की तरह ही एक्सप्लॉइट पेलोड ले जा सकती हैं।
  • सीधा EIP ओवरराइट। ओवरफ़्लो सीधे सहेजे गए रिटर्न एड्रेस तक पहुँचता है और इसे ओवरराइट करता है, जिससे यह SEH श्रृंखला के बिना एक पाठ्यपुस्तक वैनिला स्टैक बफर ओवरफ़्लो बन जाता है।
  • एक ही बाइनरी, कई CVE। CVE-2018-19861, CVE-2018-19862, और CVE-2019-17601 एक ही सॉफ्टवेयर में एक ही प्रकार की कमजोरी का वर्णन करते हैं। विभिन्न CVE प्रविष्टियाँ इसलिए निर्धारित की गईं क्योंकि विभिन्न शोधकर्ताओं ने विभिन्न HTTP विधियों या एंडपॉइंट की रिपोर्ट की, लेकिन जब बाइनरी को रिवर्स किया जाता है तो यह स्पष्ट हो जाता है कि वे सभी एक ही मूल कारण — बिना लंबाई सत्यापन के एक फिक्स्ड-साइज़ स्टैक बफर में अनसैनिटाइज़्ड इनपुट की प्रतिलिपि — साझा करते हैं।

यह संयोजन CVE-2020-13768 को एक यथार्थवादी अप्रमाणित परिदृश्य में नेटवर्क-आधारित बफर ओवरफ़्लो शोषण की मूल बातें सिखाने के लिए एक उत्कृष्ट मामला बनाता है।




🔍 संदर्भ और प्रभावित सॉफ्टवेयर

MiniShare एक न्यूनतम Windows HTTP सर्वर है जो मूल रूप से LAN पर त्वरित स्थानीय फ़ाइल साझाकरण के लिए डिज़ाइन किया गया था। यह TCP पोर्ट 80 पर सुनता है और GET और PUT सहित HTTP विधियों के एक छोटे उपसमूह को संभालता है। PUT हैंडलर आने वाले अनुरोधों को संसाधित करता है और URI पथ को एक फिक्स्ड-साइज़ स्टैक बफर में कॉपी करता है, बिना इसकी लंबाई को मान्य किए।

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

मुख्य तकनीकी विवरण:

  • कमजोरी का प्रकार: स्टैक-आधारित बफर ओवरफ़्लो
  • प्रभावित संस्करण: MiniShare 1.4.1 और पुराने संस्करण
  • प्रभावित एंडपॉइंट: HTTP PUT अनुरोध
  • कमजोर घटक: PUT हैंडलर में URI पथ हैंडलिंग
  • प्रमाणीकरण आवश्यक: नहीं
  • प्रभाव: रिमोट कोड निष्पादन



⚠️ कमजोरी के बारे में

MiniShare आने वाले HTTP अनुरोधों को संसाधित करता है और विधि के आधार पर उन्हें उपयुक्त हैंडलर को भेजता है। PUT हैंडलर अनुरोध से URI पथ निकालता है और इसे बिना इसकी लंबाई जाँचे एक फिक्स्ड-साइज़ स्टैक बफर में कॉपी करता है।

कमजोर लॉजिक का एक सरलीकृत संस्करण इस प्रकार दिखता है:

root@kitploit:~
char path_buffer[256];

strcpy(path_buffer, uri_path);

चूँकि गंतव्य बफर का एक निश्चित आकार है और इनपुट लंबाई मान्य नहीं है, PUT अनुरोध में पर्याप्त लंबा URI भेजने से प्रतिलिपि बफर के अंत से आगे लिखती है, अंततः सहेजे गए रिटर्न एड्रेस (EIP) तक पहुँचती है और उसे ओवरराइट करती है।

जब कमजोर फ़ंक्शन लौटता है, तो CPU स्टैक से हमलावर-नियंत्रित मान को EIP में लोड करता है और उस पर जाता है। यदि वह पता शेलकोड युक्त हमलावर-नियंत्रित डेटा को इंगित करता है, तो मनमाना कोड निष्पादन प्राप्त होता है।




💥 क्रैश को ट्रिगर करना

HTTP PUT अनुरोध में एक अत्यधिक आकार का URI भेजकर क्रैश को दोहराया जा सकता है। कोई प्रमाणीकरण आवश्यक नहीं है। Python का उपयोग करते हुए उदाहरण:

root@kitploit:~
import socket

HOST = '127.0.0.1'
PORT = 80

payload = b"A" * 3000

request = (
	b"PUT /" + payload + b" HTTP/1.1\r\n"
	b"Host: 127.0.0.1\r\n"
	b"Connection: close\r\n"
	b"\r\n"
)

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send(request)
s.close()

जब डिबगर के तहत निष्पादित किया जाता है, तो क्रैश EIP को उपयोगकर्ता-नियंत्रित डेटा से ओवरराइट दिखाता है:

root@kitploit:~
EIP = 41414141

यह पुष्टि करता है कि सहेजा गया रिटर्न एड्रेस ओवरफ़्लो से दूषित हो गया है।




💣 शोषण

इस रिपॉजिटरी का उद्देश्य केवल क्रैश प्रदर्शित करना नहीं है, बल्कि वास्तविक स्टैक-आधारित एक्सप्लॉइट विकसित करते समय उपयोग की जाने वाली पद्धति का पालन करते हुए, चरण दर चरण पूर्ण शोषण प्रक्रिया से गुजरना भी है।

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

वहाँ आपको इस CVE का शोषण करने के लिए उपयोग किए जाने वाले पूर्ण कार्यप्रवाह मिलेगा, जिसमें शामिल हैं:

  • क्रैश की पहचान करने के लिए PUT URI को फज़ करना।
  • स्टैक पर EIP की सटीक स्थिति का पता लगाने के लिए ऑफसेट खोज।
  • पेलोड को दूषित करने वाले बाइट्स की पहचान करने के लिए खराब वर्ण विश्लेषण।
  • ASLR के बिना लोड किए गए मॉड्यूल से JMP ESP गैजेट का पता लगाना।
  • शेलकोड प्लेसमेंट और निष्पादन।