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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2021-21017 — CVE-2021-21017 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट: UTF-16BE/ANSI बेमेल के साथ तैयार किए गए PDF baseURL के माध्यम से Adobe Reader में टाइप कन्फ़्यूज़न जो हीप ओवरफ़्लो का कारण बनता है। | Kitploit
उपकरण/GitHubGitHub/zeusbox/cve-2021-21017
मेमोरी फोरेंसिकभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणफज़िंगबाइनरी शोषण
GitHubzeusbox/cve-2021-21017

CVE-2021-21017

CVE-2021-21017 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट: UTF-16BE/ANSI बेमेल के साथ तैयार किए गए PDF baseURL के माध्यम से Adobe Reader में टाइप कन्फ़्यूज़न जो हीप ओवरफ़्लो का कारण बनता है।

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

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

सभी देखें →

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

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

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

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

CVE-2021-21017

एक और Adobe Reader Byte Order Mark बग नहीं :)

root@kitploit:~
# IA32 plugin, ver. 2020.013.20074.
char * __cdecl FUN_2581894c(char *base_url,LPCSTR rel_url)
{
  ............................................................
  ............................................................
  if ((base_url != (char *)0x0) && (rel_url != (LPCSTR)0x0)) {
    if ((*base_url == -2) && (base_url[1] == -1)) {
      iVar6 = bytes_len(base_url);
      pcVar7 = base_url + iVar6;
      pcVar8 = rel_url + 2;
      do {
        do {
          cVar3 = *pcVar8;
          pcVar1 = pcVar8 + 2;
          *pcVar7 = cVar3;
          pcVar2 = pcVar7 + 2;
          cVar4 = pcVar8[1];
          pcVar7[1] = cVar4;
          pcVar7 = pcVar2;
          pcVar8 = pcVar1;
        } while (cVar3 != '\0');
      } while (cVar4 != '\0');
    }
    else {
      lstrcatA(base_url,rel_url);
    }
    return base_url;
  }
  .............................................................
  .............................................................
}

जब किसी PDF दस्तावेज़ के baseURL के सापेक्ष एक निरपेक्ष URL बनाया जाता है जिसका उपयोग APIs जैसे: app.launchURL, document.submitForm या app.media.createPlayer द्वारा किया जाना है, यदि baseURL एक UTF-16BE स्ट्रिंग प्रतीत होता है, तो संयोजन करते समय सापेक्ष URL को भी UTF-16BE स्ट्रिंग के रूप में माना जाता है, जबकि वह वास्तव में एक ANSI स्ट्रिंग है।

इसके परिणामस्वरूप एक ओर आउट-ऑफ-बाउंड्स रीड एक्सेस हो सकता है। दूसरी ओर, गंतव्य बफर को रखने के लिए मेमोरी आवंटित करते समय, सापेक्ष URL को एक ANSI स्ट्रिंग के रूप में 'मापा' जाता है। यदि OOB रीड होता है तो यह निश्चित रूप से पर्याप्त नहीं है। (स्ट्रिंग + पूरे हीप चंक को भरने वाला NULL टर्मिनेटर)।

इसका क्या अर्थ है?

टाइप कन्फ्यूजन => आउट ऑफ बाउंड्स रीड => हीप ओवरफ्लो => FULL BUKAKE!

PoC संलग्न

यह अक्सर क्रैश का परिणाम होगा और कभी-कभी किसी ArrayBuffer के byteLength को 0xFF में ओवरराइट करने का।

यदि आपके कोई प्रश्न हैं तो बेझिझक मुझसे ट्विटर पर संपर्क करें: https://twitter.com/Zeusb0x

पता लगाना

PDF दस्तावेज़ कैटलॉग में एक URI एंट्री होगी जो किसी डिक्शनरी ऑब्जेक्ट के लिए एक अप्रत्यक्ष संदर्भ रखती है। इसके बदले में एक Base एंट्री होगी, जो वास्तविक baseURL है। यह संभवतः हेक्साडेसिमल नोटेशन में मौजूद होगा और वर्णों \xFE\xFF से शुरू होगा। (PoC देखें)। सौभाग्य से, सामान्य, गैर-विशेषाधिकार प्राप्त संदर्भ में किसी दस्तावेज़ के baseURL को बदलने का यही एकमात्र तरीका है। JavaScript से ऐसा करने का प्रयास करने पर एक सुरक्षा अपवाद आएगा।

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