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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-21546 — स्वचालित एक्सप्लॉइट टूलकिट और CVE-2024-21546 के लिए डिटेक्शन टेम्पलेट, जो UniSharp Laravel Filemanager में एक अनप्रमाणित RCE है, जिसमें WAF चोरी और इंटरैक्टिव शेल शामिल है। | Kitploit
उपकरण/GitHubGitHub/digitalsurgn/cve-2024-21546
टोहीभेद्यता स्कैनरकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणवेब सुरक्षापेलोड डेवलपमेंट
GitHubdigitalsurgn/cve-2024-21546

CVE-2024-21546

स्वचालित एक्सप्लॉइट टूलकिट और CVE-2024-21546 के लिए डिटेक्शन टेम्पलेट, जो UniSharp Laravel Filemanager में एक अनप्रमाणित RCE है, जिसमें WAF चोरी और इंटरैक्टिव शेल शामिल है।

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

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

सभी देखें →

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

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

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

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

UniSharp Laravel Filemanager अनधिकृत RCE (CVE-2024-21546)

इस रिपॉजिटरी में UniSharp/laravel-filemanager पैकेज (संस्करण < 2.9.1) का उपयोग करने वाले अनुप्रयोगों में अनधिकृत रिमोट कोड निष्पादन (RCE) की पहचान और शोषण के लिए सुरक्षा मूल्यांकन उपकरण, डिटेक्शन टेम्पलेट और एक स्वचालित शोषण टूलकिट शामिल है।


📑 विषय-सूची

  • 1. भेद्यता अवलोकन
  • 2. मूल कारण विश्लेषण
  • 3. Nuclei डिटेक्शन टेम्पलेट (laravel-filemanager.yaml)
    • स्थानीयकृत साइटों पर डिफ़ॉल्ट टेम्पलेट विफल क्यों होते हैं
    • पुनर्निर्मित टेम्पलेट विनिर्देश
    • Nuclei स्कैन चलाना
  • 4. स्वचालित शोषण टूलकिट (cve_2024_21546_rce.py)
    • शोषण क्षमताएँ
    • उपयोग और पैरामीटर
    • उदाहरण
  • 5. निवारण मार्गदर्शन

1. भेद्यता अवलोकन

यह भेद्यता दो संयुक्त स्थितियों से उत्पन्न होती है:

  1. अनधिकृत रूट एक्सेस: होस्ट अनुप्रयोग 'auth' या 'web' मिडलवेयर पाइपलाइन लागू किए बिना /laravel-filemanager रूट पंजीकृत करता है।
  2. ट्रेलिंग डॉट एक्सटेंशन सत्यापन बायपास: अपलोड वैलिडेटर ट्रेलिंग डॉट वर्णों (.) को ठीक से साफ़ करने में विफल रहता है, जिससे हमलावर निष्पादन योग्य फ़ाइल ब्लॉकलिस्ट को बायपास कर सकते हैं और PHP स्क्रिप्ट को सार्वजनिक स्टोरेज में रख सकते हैं।

2. मूल कारण विश्लेषण

A. ट्रेलिंग डॉट वैलिडेटर दोष (LfmUploadValidator.php)

v2.9.1 से पहले के संस्करणों में, LfmUploadValidator.php ने ब्लॉकलिस्ट के विरुद्ध फ़ाइल एक्सटेंशन की जाँच इस प्रकार की:

root@kitploit:~
public function extensionIsNotExcutable($unallowed_extensions)
{
    $extension = strtolower($this->file->getClientOriginalExtension());
    if (in_array($extension, $unallowed_extensions)) {
        throw new \Exception('File extension is not allowed.');
    }
    return $this;
}

जब कोई हमलावर poc.php. नाम की फ़ाइल अपलोड करता है:

  • Symfony का getClientOriginalExtension() अंतिम डॉट के बाद के वर्णों को निकालता है।
  • चूंकि फ़ाइलनाम डॉट में समाप्त होता है, getClientOriginalExtension() का मूल्यांकन "" (खाली स्ट्रिंग) होता है।
  • जाँच in_array("", ['php', 'html']) का मूल्यांकन false होता है, जिससे एक्सटेंशन ब्लॉक बायपास हो जाता है।

B. एक्सटेंशन रहित समाधान और नाम बदलने की श्रृंखला

Windows और विशिष्ट स्टोरेज ड्राइवरों पर, फ़ाइल एक्सटेंशन रहित हैश (<hash>) के रूप में संग्रहीत की जाती है। शोषण LFM के RenameController (GET /laravel-filemanager/rename?file=<hash>&new_name=runner.php) को श्रृंखलाबद्ध करके अपलोड किए गए पेलोड को सक्रिय .php फ़ाइल में नाम बदलता है, जिससे /storage/app/public/file-manager-files/items/runner.php के अंतर्गत तत्काल वेब निष्पादन मिलता है।


3. Nuclei डिटेक्शन टेम्पलेट (laravel-filemanager.yaml)

स्थानीयकृत साइटों पर डिफ़ॉल्ट टेम्पलेट विफल क्यों होते हैं

अपस्ट्रीम समुदाय टेम्पलेट (http/exposed-panels/laravel-filemanager.yaml) (https://github.com/projectdiscovery/nuclei-templates/blob/main/http/exposed-panels/laravel-filemanager.yaml) हार्डकोडेड अंग्रेजी स्ट्रिंग मैचर पर निर्भर था:

root@kitploit:~
matchers:
  - type: word
    words:
      - "Laravel FileManager" # Fails on localized deployments or non english versions

जब अनुप्रयोग स्थानीयकृत होते हैं (जैसे अरबी, फ्रेंच, चीनी), अंग्रेजी स्ट्रिंग HTML बॉडी में मौजूद नहीं होती है, जिससे गलत नकारात्मक परिणाम होते हैं।

पुनर्निर्मित टेम्पलेट विनिर्देश

आधुनिकीकृत टेम्पलेट अपरिवर्तनीय विक्रेता एसेट पथ और अपलोड फ़ॉर्म क्रियाओं का मिलान करके पैनल का पता लगाता है:

root@kitploit:~
id: laravel-filemanager

info:
  name: Laravel File Manager - Panel Detect
  author: digitalsurgn
  severity: critical
  description: Laravel File Manager panel was detected.
  reference:
    - https://github.com/UniSharp/laravel-filemanager
  classification:
    cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:N
    cwe-id: CWE-200
  metadata:
    max-request: 1
  tags: panel,laravel,filemanager,fileupload,intrusive

http:
  - method: GET
    path:
      - "{{BaseURL}}/laravel-filemanager?type=Files"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "vendor/laravel-filemanager"
          - "laravel-filemanager/upload"
        condition: or

      - type: status
        status:
          - 200

Nuclei स्कैन चलाना

root@kitploit:~
nuclei -u https://target.com/ -t laravel-filemanager.yaml

4. स्वचालित शोषण टूलकिट (cve_2024_21546_rce.py)

स्टैंडअलोन Python उपकरण (cve_2024_21546_rce.py) अंतर्निहित WAF चोरी और स्व-सफाई स्वच्छता के साथ अंत-से-अंत अनधिकृत शोषण को स्वचालित करता है।

शोषण क्षमताएँ

  • प्रोटोकॉल और पोर्ट स्वचालित बातचीत: स्वचालित रूप से पता लगाता है कि लक्ष्य HTTP या HTTPS का उपयोग करता है और गैर-मानक कस्टम पोर्ट का समर्थन करता है।
  • प्री-फ्लाइट एक्सेस सत्यापन: शोषण का प्रयास करने से पहले पुष्टि करता है कि /laravel-filemanager प्रमाणीकरण के बिना पहुंच योग्य है।
  • गतिशील फ़ाइल ट्रैकिंग: हार्डकोडेड फ़ोल्डर या फ़ाइल नामों पर भरोसा किए बिना अपलोड किए गए हैश की पहचान करने के लिए निर्देशिका सूचियों (jsonitems) के पहले/बाद के स्नैपशॉट लेता है।
  • WAF चोरी: निरीक्षण नियमों से बचने के लिए PHP शॉर्ट टैग (<?=), गतिशील फ़ंक्शन आह्वान (('pas'.'sthru')), और Base64-एन्कोडेड X-Cmd हेडर का उपयोग करता है।
  • इंटरैक्टिव शेल मोड: निरंतर इंटरैक्टिव शेल सत्रों का समर्थन करता है (--interactive)।
  • शून्य-पदचिह्न स्वचालित सफाई: प्रत्येक कमांड निष्पादन के बाद स्वचालित रूप से गिराए गए वेबशेल को हटा देता है।

उपयोग और पैरामीटर

root@kitploit:~
python3 cve_2024_21546_rce.py [OPTIONS]

उदाहरण

1. इंटरैक्टिव मोड (लक्ष्य, पोर्ट और कमांड के लिए संकेत देता है)

root@kitploit:~
python3 cve_2024_21546_rce.py

2. एकल कमांड निष्पादन (CLI)

root@kitploit:~
python3 cve_2024_21546_rce.py -t xyz.com -c "whoami"

3. इंटरैक्टिव शेल के साथ कस्टम गैर-मानक पोर्ट

root@kitploit:~
python3 cve_2024_21546_rce.py -t 10.10.10.50 -p 8080 --interactive

5. निवारण मार्गदर्शन

  1. पैकेज अपग्रेड करें: Composer के माध्यम से unisharp/laravel-filemanager को संस्करण 2.9.1 या बाद में अपडेट करें:
    root@kitploit:~
    composer update unisharp/laravel-filemanager
    
  2. प्रमाणीकरण मिडलवेयर लागू करें: सुनिश्चित करें कि config/lfm.php में सभी फ़ाइलमैनेजर रूट प्रमाणीकरण द्वारा सुरक्षित हैं:
    root@kitploit:~
    'middlewares' => ['web', 'auth'],
    
  3. सार्वजनिक स्टोरेज प्रतिबंधित करें: सार्वजनिक अपलोड निर्देशिकाओं (जैसे /storage/) में .php स्क्रिप्ट के निष्पादन को अस्वीकार करने के लिए वेब सर्वर नियम कॉन्फ़िगर करें।
टूल डाउनलोड करें
मीट्रिकविवरण
भेद्यता का नामUniSharp Laravel Filemanager अनियंत्रित फ़ाइल अपलोड से RCE
CVE पहचानकर्ताCVE-2024-21546
प्रभावित घटकunisharp/laravel-filemanager (< 2.9.1)
सामान्य कमजोरीCWE-94 (कोड इंजेक्शन) / CWE-434 (अनियंत्रित अपलोड)
गंभीरताक्रिटिकल (CVSS 9.8)
हमला वेक्टररिमोट / अनधिकृत HTTP
फ़्लैगपैरामीटरविवरण
-t, --target<host>लक्ष्य डोमेन या IP पता (जैसे example.com या 192.168.1.50)।
-p, --port<port>मानक 80/443 से भिन्न होने पर लक्ष्य पोर्ट (जैसे 8080, 8443)।
--schemehttp / httpsप्रोटोकॉल स्कीम स्पष्ट रूप से निर्दिष्ट करें (डिफ़ॉल्ट: स्वचालित रूप से पता लगाया गया)।
-c, --cmd<command>निष्पादित करने के लिए एकल कमांड (जैसे whoami, id, ipconfig)।
-i, --interactiveफ़्लैगइंटरैक्टिव कमांड निष्पादन शेल लॉन्च करें।
-d, --dir<path>लक्ष्य LFM कार्यशील निर्देशिका (डिफ़ॉल्ट: /items)।