
Apache OpenMeetings 9.1.0 - Alta - Remoto - CWE-502 - clustering OpenJPA RemoteCommitProvider TCP 5636
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · openmeetings-cluster-openjpa
Classe: CWE-502 Alcance: Remoto
Apache OpenMeetings 9.1.0. Resquício de CVE-2024-54676 (lista de permissões da documentação). O bin/startup.sh padrão não define as listas do OpenJPA. O clustering.xml / a unit do systemd ainda documentam RemoteCommitProvider=tcp. Quando um administrador descomenta isso, a TCP 5636 fica sem filtro em ObjectInputStream.readObject. A versão 9.1.0 padrão não vincula a 5636.
Este laboratório envia apenas java.util.HashMap / String. Nenhuma cadeia de gadgets.
| ID | ainda sem CVE |
| Classe | CWE-502 |
| Alcance | Remoto (quando o clustering TCP é habilitado conforme a documentação) |
| CWE | CWE-502 |
| CVSS | Alto: 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Produto | Apache OpenMeetings 9.1.0 clustering |
| Autenticação | nenhuma na 5636 assim que o clustering é ativado |
| Licença | GNU Affero GPL v3.0 |
| Laboratório | apenas 127.0.0.1:18162 |
| Método | Sink | Privilégio |
|---|---|---|
| TCP 5636 padrão de fábrica | startup.sh não tem listas; persistence.xml comentado | Fechado na versão padrão (comprovado em laboratório): porta fechada. PHASE_A_STOCK_NOT_EXPLOITABLE. |
RemoteCommitProvider=tcp conforme a documentação, depois TCP 5636 com HashMap serializado | readObject do OpenJPA | Integridade (desserialização comprovada em laboratório): ClassCastException HashMap vs RemoteCommitEvent. A string testemunha estava no HashMap. RCE por gadget não exercitado. |
Fechado: ysoserial não utilizado. Clustering padrão desativado. CVE-2024-54676 lista de permissões da documentação para o caminho do script; este resquício é o provedor TCP que a documentação de clustering ainda mostra.
cd lab
./run.sh
Última linha: SUCCESS OPENMEETINGS-CLUSTER-OPENJPA-WITNESS
Correção sugerida: mantenha RemoteCommitProvider desativado. Se o clustering TCP for necessário, vincule ao loopback e defina a lista de permissões de serialização do OpenJPA no startup.sh, não apenas no systemd. Não documente descomentar-e-escutar na 5636.
Abraxas Labs - https://abraxaslabs.tech - https://github.com/abraxas - https://x.com/abraxas_null - [email protected]
Vendor: [email protected]