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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2019-17147 | Kitploit
उपकरण/GitHubGitHub/imnot-ye/cve-2019-17147
एम्बेडेड सिस्टम सुरक्षाIoT सुरक्षाभेद्यता विश्लेषणशोषणरिवर्स इंजीनियरिंगशेलकोडहार्डवेयर हैकिंगहार्डवेयर सुरक्षापेपर और शोधलर्निंग और शिक्षाफर्मवेयर विश्लेषणबाइनरी शोषण
46 महीने पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
GitHubimnot-ye/cve-2019-17147

CVE-2019-17147

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

CVE-2019-17147: TP-Link TL-WR841N शोषण

Banner

अवलोकन

यह रिपॉज़िटरी CVE-2019-17147 के व्यापक रिवर्स इंजीनियरिंग और शोषण का दस्तावेज़ीकरण करती है, जो TP-Link TL-WR841N राउटर (MIPSEL आर्किटेक्चर) में एक गंभीर रिमोट कोड एक्ज़ीक्यूशन (RCE) भेद्यता है। यह भेद्यता httpd वेब सर्वर डेमॉन में स्थित है, जहाँ अनुचित इनपुट सत्यापन एक कस्टम cstr_strncpy फ़ंक्शन के माध्यम से स्टैक बफ़र ओवरफ़्लो की अनुमति देता है, जिससे बिना प्रमाणीकरण के मनमाना कोड निष्पादन संभव होता है।

भेद्यताCVE-2019-17147
CVSS v3.18.8 (उच्च)
वेक्टरAV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
प्रकारस्टैक-आधारित बफ़र ओवरफ़्लो
घटक/usr/bin/httpd

इन्फ्रास्ट्रक्चर और टूलिंग

विश्लेषण वातावरण निम्नलिखित घटकों का उपयोग करके स्थापित किया गया था:

  • हार्डवेयर: TP-Link TL-WR841N राउटर।
  • हार्डवेयर उपकरण: CH341A प्रोग्रामर (SPI फ्लैश डंप), USB-TTL कन्वर्टर (UART कंसोल), SOIC8 क्लिप।
  • सॉफ़्टवेयर उपकरण: flashrom (मेमोरी डंपिंग), binwalk (फ़र्मवेयर निष्कर्षण), IDA Pro (स्थैतिक विश्लेषण), GDB-Multiarch (रिमोट डिबगिंग), QEMU (MIPSEL इम्यूलेशन)।
  • फ़र्मवेयर संस्करण: TL-WR841N(US)_V14_180319।

तकनीकी विश्लेषण

1. स्थैतिक विश्लेषण

भेद्यता की पहचान /usr/bin/httpd बाइनरी में की गई थी। IDA Pro के माध्यम से स्थैतिक विश्लेषण ने एक कस्टम स्ट्रिंग कॉपी फ़ंक्शन, cstr_strncpy का खुलासा किया, जिसका उपयोग HTTP हेडर पार्सिंग (विशेष रूप से Host हेडर) के दौरान किया जाता है।

IDA Graph

फ़ंक्शन cstr_strncpy एक copy_len पैरामीटर स्वीकार करता है जो गंतव्य बफ़र आकार के बजाय स्रोत स्ट्रिंग लंबाई से प्राप्त होता है। यह अत्यधिक लंबा हेडर प्रदान किए जाने पर एक क्लासिक स्टैक बफ़र ओवरफ़्लो की अनुमति देता है। इसके अलावा, http_parser_argStrToList फ़ंक्शन, जो एक लिंक्ड लिस्ट संरचना में हेरफेर करता है, इस ओवरफ़्लो से प्रभावित होता है, जिससे next और prev पॉइंटर्स पर नियंत्रण मिल जाता है।

2. गतिशील विश्लेषण

gdbserver के साथ रनटाइम डिबगिंग ने क्रैश और निष्पादन प्रवाह पर नियंत्रण की पुष्टि की। मेमोरी मैप (vmmap) विश्लेषण ने हार्डनिंग की गंभीर कमी का खुलासा किया:

  • हीप: RWX (रीड, राइट, एक्ज़ीक्यूट) अनुमतियाँ।
  • ASLR: इस बाइनरी के लिए सीमित/अप्रभावी।
  • NX: अक्षम।

VMMap

यह कॉन्फ़िगरेशन हीप पर रखे गए शेलकोड के सीधे निष्पादन की अनुमति देता है, जिससे जटिल ROP चेन की आवश्यकता समाप्त हो जाती है।

शोषण रणनीति

शोषण श्रृंखला RCE प्राप्त करने के लिए दूषित लिंक्ड लिस्ट पॉइंटर्स से प्राप्त Write-What-Where प्रिमिटिव का उपयोग करती है।

  1. हीप स्प्रेइंग: शेलकोड को हीप में इंजेक्ट किया जाता है। अनुरोधों के बीच हीप की स्थिरता के कारण, यह चरणों में किया जा सकता है।
  2. स्टेज्ड इंजेक्शन: strcpy में नल-बाइट प्रतिबंधों को बायपास करने के लिए, पेलोड को कई अनुरोधों में भेजा जाता है:
    • चरण 1: शेलकोड पता एक स्टेजिंग क्षेत्र में लिखें।
    • चरण 2: लक्षित GOT पता स्टेजिंग क्षेत्र में लिखें।
  3. GOT ओवरराइट: ग्लोबल ऑफ़सेट टेबल (GOT) में atol फ़ंक्शन की प्रविष्टि को शेलकोड के पते से अधिलेखित किया जाता है।
  4. निष्पादन ट्रिगर: शोषण atol (एक Content-Length हेडर के माध्यम से) को कॉल करने के लिए बाध्य करता है, जिससे निष्पादन इंजेक्टेड शेलकोड की ओर पुनर्निर्देशित हो जाता है।

Exploit Diagram

शोषण सत्यापन

अंतिम Python स्क्रिप्ट हमले को सफलतापूर्वक स्वचालित करती है, पोर्ट 31337 पर रूट शेल स्पॉन करती है।

Root Shell

शमन

यह भेद्यता बफ़र प्रबंधन में असुरक्षित कोडिंग प्रथाओं से उत्पन्न होती है।

  • स्रोत कोड सुधार: cstr_strncpy के उपयोग को सुरक्षित विकल्पों से बदलें जो गंतव्य बफ़र सीमाओं को सख्ती से लागू करते हैं (जैसे, sizeof(dest) पर आधारित स्पष्ट बाउंड्स जाँच के साथ strncpy)।
  • बाइनरी हार्डनिंग: स्टैक और हीप पर कोड निष्पादन को रोकने के लिए NX (नो-एक्ज़ीक्यूट) सक्षम करें। मेमोरी लेआउट को यादृच्छिक बनाने के लिए पूर्ण ASLR और PIE (पोज़िशन इंडिपेंडेंट एक्ज़ीक्यूटेबल) सक्षम करें।

पूर्ण दस्तावेज़ीकरण

पूरी प्रक्रिया के विस्तृत चरण-दर-चरण वॉकथ्रू के लिए, जिसमें कोड विश्लेषण और पर्यावरण सेटअप शामिल है, कृपया इस रिपॉज़िटरी में शामिल पूर्ण गाइड देखें:

  • 🇮🇹 Guida Completa (Italiano)
  • 🇬🇧 पूर्ण गाइड (अंग्रेज़ी)

लेखक

  • Angelo Zullo
  • Simone Vitto
  • Vincenzo Cantatore

अस्वीकरण

यह प्रोजेक्ट केवल शैक्षिक और शोध उद्देश्यों के लिए है। प्रदान की गई जानकारी IoT उपकरणों की सुरक्षा में सुधार लाने के लिए है। लेखक इसमें निहित जानकारी या कोड के किसी भी दुरुपयोग के लिए ज़िम्मेदार नहीं हैं।


मूल शोध और विश्लेषण पर आधारित।

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