Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
nextcloud-federated-ocm-token — Nextcloud 35.0.0 — el secreto de recurso compartido federado es una contraseña de aplicación sin alcance para todo el árbol de Archivos del usuario que comparte | Kitploit
Herramientas/GitHubGitHub/abraxas/nextcloud-federated-ocm-token
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebRecopilación de InformaciónSeguridad WebPruebas de PenetraciónAutenticaciónLabs y Práctica
GitHub
abraxas/nextcloud-federated-ocm-token

nextcloud-federated-ocm-token

Nextcloud 35.0.0 — el secreto de recurso compartido federado es una contraseña de aplicación sin alcance para todo el árbol de Archivos del usuario que comparte

Ver Repositorio
8hace 15 díasAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Abraxas Labs - nextcloud-federated-ocm-token

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  nextcloud-federated-ocm-token

nextcloud-federated-ocm-token

Nextcloud Server 35.0.0 - Nextcloud GmbH

Un secreto de recurso compartido federado se acuña como una contraseña de aplicación PERMANENT_TOKEN sin alcance para quien comparte. La API del destinatario lo devuelve como refresh_token. Reutilizarlo como Bearer en el WebDAV del emisor inicia sesión como quien comparte y lee archivos que nunca fueron compartidos.

Un actor malicioso con el que compartes federadamente un solo archivo puede iniciar sesión como tú en tu Nextcloud, omitir el 2FA y leer o sobrescribir todos tus archivos, no solo el que compartiste.

IDaún sin CVE
CWECWE-269, CWE-287
CVSSCrítico: 8.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N (destinatario federado). La conversión de enlace público es peor (sin cuenta de destinatario en un par).
ProductoNextcloud Server
Afectado35.0.0 (da02f41) oficial nextcloud:35.0.0-apache
Autenticacióndestinatario federado (o conversor de enlace público)
LicenciaGNU Affero GPL v3.0
Laboratoriosolo 127.0.0.1

Qué puede hacer un atacante

Compartes un archivo o carpeta con bob en otro Nextcloud. Nextcloud acuña un secreto de 32 caracteres, lo almacena como tu contraseña de aplicación y entrega ese secreto a Bob como refresh_token.

Bob (o cualquiera que convierta tu enlace público en un recurso compartido federado) entonces:

  • Inicia sesión como tú en tu servidor
  • Lee todos los archivos de tu directorio personal, no solo el nodo compartido
  • Sobrescribe esos archivos
  • Omite tu 2FA (ruta de contraseña de aplicación)

No obtienen una shell PHP en el host. No necesitan tu contraseña. No aceptes el recurso compartido ni llames primero a OCM access-token: ese intercambio bloquea el alcance del sistema de archivos. El laboratorio demuestra el secreto previo al intercambio.


Cómo lo encontré

Un recurso compartido se supone que es un recurso compartido. Un archivo. Una carpeta. Leí FederatedShareProvider::createFederatedShare en la etiqueta v35.0.0. Acuña un secreto de 32 caracteres como IToken::PERMANENT_TOKEN para quien comparte sin alcance. PublicKeyToken::getScopeAsArray establece por defecto SCOPE_FILESYSTEM => true. Eso es una contraseña de aplicación. Session::tryTokenLogin acepta un Bearer permanente.

El trabajo de intercambio OCM (PR #57234 / #57166) ya bloquea el alcance del sistema de archivos después del primer intercambio. Un informe no oficial usó ese salto posterior al intercambio. Lo probé primero. En este árbol el token intercambiado es TEMPORARY, llamado OCM Access Token, y /remote.php/dav lo rechaza (allowOcmAccessToken false). DAV dijo no.

Así que no intercambié. ocm_discovery_enabled permaneció en false para que el destinatario no lo intercambiara por mí. Dos máquinas oficiales nextcloud:35.0.0-apache, overwrite.cli.url como DNS de docker (http://sender / http://recipient). Déjalo en 127.0.0.1 y S2S habla consigo mismo.

Alice comparte un archivo con bob@http://recipient. Bob lee los recursos compartidos pendientes. refresh_token longitud 32. access_token longitud 0. Un GET Bearer no autenticado del archivo testigo privado de Alice, nunca incluido en el recurso compartido, devolvió 200, X-User-Id: alice.


Laboratorio

cd lab
./run.sh

Objetivo solo http://127.0.0.1:18340 (emisor) y :18341 (destinatario).

SUCCESS NEXTCLOUD-OCM-PERMANENT-TOKEN who=federated-recipient uid=alice NEXTCLOUD-OCM-PERMANENT-TOKEN-WITNESS
  • lab/docker-compose.yml
  • lab/Dockerfile
  • lab/run.sh

La solución

Acuñar el secreto federado con alcance del sistema de archivos en false desde la primera inserción. No aceptar ese secreto como Bearer/Basic en /remote.php/dav. El primer intercambio ya bloquea el alcance del FS; la creación nunca debió haber entregado una contraseña de aplicación.


Referencias

  • github.com/nextcloud/server etiqueta v35.0.0
  • Trabajo cercano de OCM: PR #57234 / PR #57166
  • Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null

Licencia

GNU Affero GPL v3.0. Ver LICENSE. Solo laboratorio en loopback. Sin garantía.

Descargar herramienta