Resumen
En Collectives, la app de wikis colaborativas de Nextcloud, cada página puede llevar un emoji como icono, que se muestra junto a su nombre en la barra lateral del colectivo. El endpoint que lo actualiza no comprobaba que el valor recibido fuera realmente un emoji:
PUT /ocs/v2.php/apps/collectives/api/v1.0/p/collectives/{collective_id}/pages/{page_id}/emoji
Cualquier usuario con permiso de edición sobre la página podía enviar una cadena muy larga con saltos de línea. Al pintarla, el icono de la página crecía desmesuradamente, rompía la maquetación de la barra lateral y se superponía a las demás entradas, de modo que no se podía hacer clic en ellas.
Versión afectada: Collectives 4.0.0. El fallo se publicó como CVE-2026-77166 con el aviso GHSA-4vpp-fp9q-9g23. HackerOne lo clasificó como error de lógica de negocio, de severidad baja, con recompensa (importe no público). Reportado el 12 de marzo de 2026 y divulgado el 20 de septiembre de 2026.
Pasos de reproducción
- El usuario A crea una página dentro de un colectivo.
- El usuario A comparte la página con el usuario B y le da permiso de edición.
- El usuario B envía esta petición para cambiar el emoji de la página:
PUT /ocs/v2.php/apps/collectives/api/v1.0/p/collectives/{collective_id}/pages/{page_id}/emoji
Content-Type: application/json
Example payload:
{
"emoji": "👍aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\naaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
}
- Una vez procesada la petición, abrir la barra lateral del colectivo.
- El icono de la página aparece enorme por el contenido inyectado y descuadra toda la barra.
- El icono deformado tapa el resto de entradas y no deja hacer clic en las demás páginas.
El reporte original incluía capturas y un vídeo de la prueba, que no se reproducen aquí.
Impacto
Quien pueda editar el emoji de una página puede dejar la barra lateral del colectivo inservible para los demás usuarios, que no podrán navegar a otras páginas desde ella. Es una denegación de servicio a nivel de interfaz, limitada a la navegación dentro del colectivo.
Remediación
Nextcloud lo corrigió y lo publicó en el aviso GHSA-4vpp-fp9q-9g23. El reporte no detalla el cambio aplicado.