
यह रिपॉजिटरी Croogo CMS में CVE-2026-16219 के रूप में ट्रैक किए गए पथ-प्राधिकरण दोष का दस्तावेजीकरण करती है और उसे सुरक्षित रूप से प्रदर्शित करती है। यह डिफेंडरों, अनुरक्षकों, छात्रों और शोधकर्ताओं के लिए है जो उन प्रणालियों का परीक्षण कर रहे हैं जिनके वे स्वामी हैं या जिनका आकलन करने के लिए उन्हें स्पष्ट रूप से अधिकृत किया गया है।
सुरक्षा सीमा: शामिल HTTP प्रूफ ऑफ कॉन्सेप्ट केवल शाब्दिक लूपबैक पता
127.0.0.1स्वीकार करता है, केवल एक जनरेटेड.txtमार्कर को निश्चित गैर-वेब गंतव्य/tmp/croogo-cve-2026-16219/पर लिखता है, रीडायरेक्ट का अनुसरण नहीं करता है, और स्पष्ट प्रयोगशाला स्वीकृति के बिना चलने से इनकार करता है। इसमें कोई निष्पादन योग्य पेलोड और कोई रिमोट-टारगेट मोड नहीं है।
स्नैपशॉट दिनांक: 2026-07-20।
वर्तमान स्थिति बदल सकती है। उत्पादन निर्णय लेने से पहले docs/references.md में प्राथमिक स्रोतों को दोबारा जाँचें।
Croogo एक संकीर्ण संपादन योग्य रूट जैसे WWW_ROOT/assets कॉन्फ़िगर करता है। प्रभावित हेल्पर Configure::read() के बजाय Configure::check() के साथ FileManager.editablePaths प्राप्त करता है। check() उत्तर देता है कि कुंजी मौजूद है या नहीं; यह कॉन्फ़िगर की गई पथ सूची नहीं लौटाता है। परिणामी बूलियन का उपयोग तब पथ-समावेशन जाँच द्वारा किया जाता है, जिससे इच्छित प्राधिकरण सीमा कमज़ोर हो जाती है।
File Manager की क्रिएट और एडिट संचालन उस जाँच पर भरोसा करते हैं। अपस्ट्रीम रिपोर्ट में वर्णित शर्तों के तहत, एक प्रमाणित FileManager उपयोगकर्ता कॉन्फ़िगर की गई संपादन योग्य रूट के बाहर लिख सकता है जब PHP सेवा खाता चयनित स्थान पर लिख सकता है।
डेटा प्रवाह के लिए docs/technical-analysis.md और सख्तीकरण मार्गदर्शन के लिए docs/remediation.md देखें।
.
|-- demo/ Standalone logic demonstration; no Croogo required
|-- docs/ Analysis, lab setup, detection, remediation, references
|-- patches/ Illustrative defense-in-depth patch
|-- poc/ Strictly loopback, text-marker HTTP PoC and cleanup tools
|-- tests/ Guardrail and demo tests
|-- .github/workflows/validate.yml
|-- DISCLAIMER.md
|-- GITHUB_UPLOAD.md
|-- LICENSE
|-- Makefile
|-- SECURITY.md
`-- VERSION
स्टैंडअलोन मॉडल कमज़ोर CMS चलाए बिना या कोई नेटवर्क अनुरोध भेजे बिना बग की व्याख्या करता है:
php demo/path_authorization_demo.php
अपेक्षित परिणाम:
Buggy modeled check for outside path: ALLOWED
Safe boundary check for outside path: DENIED
डेमो ऑपरेटिंग सिस्टम टेम्प डायरेक्टरी के अंतर्गत अस्थायी फ़ाइलें बनाता है और बाहर निकलने से पहले उन्हें हटा देता है।
docs/lab-setup.md का पालन करें। एप्लिकेशन को केवल 127.0.0.1 से बाइंड करें और Croogo के समान VM या कंटेनर के अंदर निश्चित मार्कर डायरेक्टरी बनाएँ:
sudo install -d -o www-data -g www-data -m 0750 \
/tmp/croogo-cve-2026-16219
डिस्पोज़ेबल प्रयोगशाला में www-data को PHP-FPM या वेब-सर्वर खाते से बदलें।
अपनी स्वयं की प्रयोगशाला में एक वैध File Manager अनुरोध से पूर्ण Cookie हेडर और CakePHP CSRF टोकन प्राप्त करें। उन्हें कभी कमिट न करें।
export BASE='http://127.0.0.1:8080'
export COOKIE='CAKEPHP=lab-session; csrfToken=lab-cookie-token'
export CSRF_TOKEN='lab-request-token'
export LAB_ACK='I_OWN_THIS_LAB'
POC_VALIDATE_ONLY=1 ./poc/croogo_local_poc.sh
./poc/croogo_local_poc.sh
स्क्रिप्ट जनरेटेड फ़ाइलनाम और HTTP स्थिति प्रिंट करती है। HTTP रीडायरेक्ट या सफलता प्रतिक्रिया अपने आप में प्रमाण नहीं है; Croogo VM या कंटेनर के अंदर से मार्कर सत्यापित करें:
sudo ./poc/verify_marker.sh
WWW_ROOT/assets के बाहर एक मार्कर प्राधिकरण विफलता को प्रदर्शित करता है। मार्कर सादा पाठ है और वेब-निष्पादन योग्य नहीं है।
sudo LAB_ACK='I_OWN_THIS_LAB' ./poc/cleanup_marker.sh
unset COOKIE CSRF_TOKEN LAB_ACK BASE
make test
परीक्षण शेल सिंटैक्स की पुष्टि करते हैं, गैर-लूपबैक और URL-भ्रम इनपुट को अस्वीकार करते हैं, सुनिश्चित करते हैं कि मान्यता के दौरान रहस्य प्रिंट न हों, और स्टैंडअलोन मॉडल के अपेक्षित परिणाम को सत्यापित करते हैं।
Configure::read() का उपयोग करके कॉन्फ़िगरेशन पुनर्प्राप्ति को सही करें।patches/illustrative-hardening.patch में उपयोगिता पैच और patches/create-file-hardening-example.md में कंट्रोलर मार्गदर्शन समीक्षा सहायक हैं, आधिकारिक विक्रेता सुधार नहीं। उन्हें तैनात शाखा के विरुद्ध परीक्षण करें।
इस रिपॉजिटरी का उपयोग केवल उन प्रणालियों पर करें जिनके स्वामी आप हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित प्राधिकरण है। PoC को सार्वजनिक लक्ष्यों, निष्पादन योग्य पेलोड, दृढ़ता, क्रेडेंशियल एक्सेस या विनाशकारी कार्यों के लिए अनुकूलित न करें। SECURITY.md और DISCLAIMER.md देखें।
MIT. LICENSE देखें।
| फ़ील्ड | मान |
|---|
| उत्पाद | Croogo CMS, Admin File Manager |
| NVD प्रभावित संस्करण | 4.0.0 से 4.0.7 तक |
| कमज़ोरी | CWE-22, पथ ट्रैवर्सल / अनुचित पथ प्रतिबंध |
| NVD CNA CVSS v3.1 | 6.3 मध्यम |
| विशेषाधिकार | प्रमाणित FileManager-सक्षम खाता |
| उपयोगकर्ता सहभागिता | प्रमाणीकरण के बाद कोई नहीं |
| सार्वजनिक प्रकटीकरण | अपस्ट्रीम मुद्दा और सार्वजनिक एक्सप्लॉइट जानकारी मौजूद है |
| पैच किया गया संस्करण | उद्धृत सलाहकार स्नैपशॉट में पहचाना नहीं गया |