Resumen
Nextcloud permite al administrador limitar qué cuentas puede descubrir cada usuario al autocompletar nombres: por ejemplo, solo las de sus mismos grupos, o solo cuando se escribe el nombre exacto. La app Mail (probada en la versión 5.7.4) tenía su propio buscador de contactos que no respetaba esas limitaciones.
Al escribir una mención (@...) mientras se redacta un correo, el navegador llama al endpoint de autocompletado de Mail. El recorrido en el servidor es este:
ContactIntegrationController::autoComplete()recibe el término de búsqueda parcial que controla el usuario.- Lo pasa a
ContactsIntegration::getContactsWithName(). - Esta llama a
doSearch(), que solo consulta la opción generalcore.shareapi_allow_share_dialog_user_enumeration.
doSearch() no aplica los controles más estrictos que Nextcloud sí usa en otros sitios, como shareapi_restrict_user_enumeration_to_group o las restricciones de coincidencia exacta. Así, aunque el administrador haya limitado la enumeración al propio grupo, desde Mail se pueden obtener los datos de usuarios de cualquier grupo.
El fallo se registró como CVE-2026-61545, con severidad media. El programa pagó recompensa, aunque el importe no es público. El reporte se envió el 20 de marzo de 2026 y se divulgó el 4 de septiembre de 2026. El aviso de seguridad oficial es GHSA-vq3v-jv6f-6xp2.
Pasos de reproducción
El investigador montó el entorno de pruebas con github.com/juliusknorr/nextcloud-docker-dev, con Nextcloud Hub 26 Winter (34.0.0 dev) y Nextcloud Mail 5.7.4.
- Entrar como administrador e instalar la app Mail.
- Crear dos grupos (por ejemplo,
g1yg2) y meter a un usuario en cada uno: Alice eng1y Bob eng2. - En
Administration Settings > Sharing > Privacy settings for sharing, marcar la opción "Restrict account name autocompletion and system address book access to users within the same groups". Con esto, Alice no debería poder encontrar a Bob. - Cerrar sesión y entrar como Alice. Abrir Mail, vincular cualquier cuenta de correo y pulsar
New message. - Abrir las herramientas de desarrollo del navegador (el investigador usó Firefox) y, en el cuadro
Write message ..., escribir@bo, en general,@{keyword}. - Revisar la respuesta de la petición de autocompletado:
GET http://nextcloud.local/index.php/apps/mail/api/contactIntegration/autoComplete/{keyword}
La respuesta incluye usuarios de grupos que Alice no debería poder ver, como Bob, a pesar de la restricción activada en el paso 3.
Impacto
Cualquier usuario autenticado podía saltarse la restricción de enumeración configurada por el administrador y listar cuentas fuera de sus grupos. Por cada una obtenía el identificador de usuario, el nombre visible y la dirección de correo.