Nextcloud 35.0.0 — एक कैलेंडर संपादन-साझाकर्ता स्वामी के कैलेंडर को एक अनधिप्रमाणित URL पर प्रकाशित कर सकता है
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · nextcloud-calendar-sharee-publish
Nextcloud Server 35.0.0 - Nextcloud GmbH
CalDAV PublishPlugin केवल {DAV:}write की जाँच करता है। Owner-limit limitAddressBookAndCalendarSharingToOwner डिफ़ॉल्ट रूप से no है। जिस सहकर्मी को आपने कैलेंडर पर edit दिया है, वह उसे publish कर सकता है। secret URL वाला कोई भी व्यक्ति बिना लॉगिन किए आपके non-PRIVATE events पढ़ सकता है।
आपके कैलेंडर पर edit अधिकार रखने वाला कोई भी दुर्भावनापूर्ण व्यक्ति उसे एक सार्वजनिक URL में बदल सकता है। उस URL वाला कोई भी व्यक्ति बिना लॉगिन किए आपकी मीटिंग्स और attendees पढ़ सकता है।
| ID | अभी तक कोई CVE नहीं |
| CWE | CWE-284, CWE-862 |
| CVSS | High: 6.5 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
| Product | Nextcloud Server |
| Affected | 35.0.0 (da02f41) official nextcloud:35.0.0-apache |
| Auth | write-sharee, फिर unauthenticated public read |
| License | GNU Affero GPL v3.0 |
| Lab | केवल 127.0.0.1 |
आप एक कैलेंडर किसी सहकर्मी के साथ can edit के रूप में साझा करते हैं। वह सहकर्मी publish-calendar भेजता है। Nextcloud एक सार्वजनिक कैलेंडर URL बना देता है।
फिर:
PRIVATE objects)कैलेंडर का reshare प्रतिबंधित है। Publish नहीं है। owner-limit config मौजूद है और डिफ़ॉल्ट रूप से बंद है।
PublishPlugin {DAV:}write की जाँच करता है, फिर dav / limitAddressBookAndCalendarSharingToOwner, जो डिफ़ॉल्ट रूप से no है। Calendar::updateShares reshare को प्रतिबंधित करता है जब isShared() हो। Publish एक अलग verb है। Write ACL अभी भी एक edit-sharee को {DAV:}write प्रदान करता है।
मैंने official nextcloud:35.0.0-apache को खड़ा किया। Owner calendar labcal जिसमें एक non-PRIVATE event SUMMARY NEXTCLOUD-CAL-SHAREE-PUBLISH-WITNESS था।
पहले मैंने MKCALENDAR भेजा। Sabre ने 405 MethodNotAllowed लौटाया। मैंने फिर भी VEVENT PUT किया। 201। कैलेंडर वहाँ था। collection-create verb गलत दरवाज़ा था, गलत घर नहीं।
sharee को read-write साझा किया। Sharee का POST CS:publish-calendar ने 202 लौटाया। सार्वजनिक URL पर unauth PROPFIND में witness मौजूद था।
cd lab
./run.sh
लक्ष्य केवल http://127.0.0.1:18344।
SUCCESS NEXTCLOUD-CAL-SHAREE-PUBLISH who=write-sharee unauth-read=yes NEXTCLOUD-CAL-SHAREE-PUBLISH-WITNESS
Publish के लिए owner principal की आवश्यकता रखें, या owner-limit को डिफ़ॉल्ट रूप से on करें और isShared() कैलेंडर के लिए publish को अस्वीकार करें। Reshare पहले से ही प्रतिबंधित है। Publish को भी उसी का पालन करना चाहिए।
GNU Affero GPL v3.0. देखें LICENSE। केवल Loopback lab। कोई वारंटी नहीं।