
Apache OpenMeetings 9.1.0 - उच्च - रिमोट - विशेषाधिकार अवशेष - SOAP POST /user UserDTO.rights को प्रतिलिपि करता है जिसमें ADMIN भी शामिल है
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · openmeetings-soap-user-rights
वर्ग: विशेषाधिकार अवशेष पहुँच: रिमोट
Apache OpenMeetings 9.1.0। SOAP POST /user/ UserDTO.rights की प्रतिलिपि बनाता है और id द्वारा अपडेट करेगा। SOAP LMS एकीकरण खाता है। इसे ADMIN से नीचे रहना चाहिए। UserMapper userDao.get(dto.getId()) करता है फिर u.setRights(dto.getRights())। UserWebService.add ROOM/LOGIN/DASHBOARD जोड़ता है और कभी भी ADMIN को हटाता नहीं है।
| ID | अभी तक कोई CVE नहीं |
| वर्ग | विशेषाधिकार अवशेष |
| पहुँच | रिमोट (SOAP SID) |
| CWE | CWE-269, CWE-280 |
| CVSS | उच्च: 8.8 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| उत्पाद | Apache OpenMeetings 9.1.0 |
| प्रमाणीकरण | Right.SOAP (ADMIN नहीं) |
| लाइसेंस | GNU Affero GPL v3.0 |
| लैब | केवल 127.0.0.1:18152 |
| विधि | सिंक | विशेषाधिकार |
|---|---|---|
SOAP POST /services/user/?sid= rights=["ADMIN"] | UserMapper.setRights + userDao.update | अखंडता (लैब-प्रमाणित): ADMIN रोपित करें। लैब: plantedadm प्रथम नाम साक्षी, रोपित उपयोगकर्ता के रूप में DELETE /user/3 ने 200 Deleted लौटाया। केवल-SOAP soaplab DELETE error.notallowed था। |
मौजूदा id के साथ वही POST | userDao.get(dto.getId()) | अखंडता (लैब-प्रमाणित): id-मर्ज अधिलेखन। लैब: उपयोगकर्ता 4 लॉगिन mergeover ADMIN के साथ। |
बंद: DELETE /user/{id} को अभी भी ADMIN चाहिए। ROOM SID जोड़ने पर NO_PERMISSION है। फ्रंटएंड रजिस्टर rights सरणी नहीं लेता।
cd lab
./run.sh
अंतिम पंक्ति: SUCCESS OPENMEETINGS-SOAP-RIGHTS-WITNESS
सुझाया गया समाधान: SOAP जोड़ने पर UserDTO.rights को अनदेखा करें, या केवल LOGIN/ROOM/DASHBOARD की अनुमति दें। जोड़ने पर कभी भी id-द्वारा लोड न करें। जब तक कॉलर ADMIN न हो, ADMIN/SOAP को हटा दें।
Abraxas Labs - https://abraxaslabs.tech - https://github.com/abraxas - https://x.com/abraxas_null - [email protected]
विक्रेता: [email protected]