
Apache OpenMeetings 9.1.0 - 높음 - 원격 - 권한 잔여 - SOAP POST /user가 ADMIN을 포함한 UserDTO.rights를 복사함
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]