
Apache OpenMeetings 9.1.0 - Alta - Remoto - IDOR - Gravação MP4 de convite Type.USER ACL
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · openmeetings-invite-recording-acl
Classe: IDOR Alcance: Remoto
Apache OpenMeetings 9.1.0. CVE-2023-29032 parou de copiar o ADMIN do Wicket para WebSession.rights. checkHashes ainda faz setUser(invitation.getInvitee(), hrights). A ACL do MP4 de gravação depende de ownerId == getUserId(). Um convite de calendário cujo convidado é Type.USER abre as gravações desse usuário. Convidados CONTACT ficam de fora.
| ID | ainda sem CVE |
| Classe | IDOR |
| Alcance | Remoto (hash de convite, sem senha) |
| CWE | CWE-639 |
| CVSS | Alto: 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| Produto | Apache OpenMeetings 9.1.0 |
| Autenticação | Hash de convite Type.USER |
| Licença | GNU Affero GPL v3.0 |
| Laboratório | apenas 127.0.0.1:18156 |
| Método | Sink | Privilégio |
|---|---|---|
GET /hash?invitation= sem autenticação e depois GET /recordings/mp4/{id} | WebSession.checkHashes setUser(invitee) + ACL do proprietário da gravação | Recon (comprovado em laboratório): bytes do MP4. Laboratório: HTTP 200 video/mp4, testemunha no corpo. Sem autenticação e sem hash 404. Hash CONTACT 404. |
Fechado: resgate com curinga LIKE (CVE-2023-28936). Convidados CONTACT de Generate-URL. Cópia do ADMIN do Wicket a partir do convite.
cd lab
./run.sh
Última linha: SUCCESS OPENMEETINGS-INVITE-RECORDING-WITNESS
Correção sugerida: sessões de convite mantêm apenas {ROOM}. A ACL de gravação não deve tratar o userId do convidado como proprietário.
Abraxas Labs - https://abraxaslabs.tech - https://github.com/abraxas - https://x.com/abraxas_null - [email protected]
Vendor: [email protected]