Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
nextcloud-federated-ocm-token — Nextcloud 35.0.0 — un partage fédéré contient un mot de passe d'application non limité pour l'ensemble de l'arborescence Files du partageur | Kitploit
Outils/GitHubGitHub/abraxas/nextcloud-federated-ocm-token
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsSécurité WebTests d'IntrusionAuthentificationLabs et Pratique
GitHub
abraxas/nextcloud-federated-ocm-token

nextcloud-federated-ocm-token

Nextcloud 35.0.0 — un partage fédéré contient un mot de passe d'application non limité pour l'ensemble de l'arborescence Files du partageur

Voir le dépôt
8il y a 15 joursPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

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 secret de partage fédéré est généré sous forme de mot de passe d'application PERMANENT_TOKEN sans portée pour le partageur. L'API du destinataire le renvoie comme refresh_token. Le rejouer en tant que Bearer sur le WebDAV de l'expéditeur permet de se connecter en tant que le partageur et de lire des fichiers qui n'ont jamais été partagés.

Un acteur malveillant avec qui vous partagez un seul fichier en fédéré peut se connecter en tant que vous sur votre Nextcloud, contourner la 2FA, et lire ou écraser tous vos fichiers, pas seulement celui que vous avez partagé.

IDpas encore de CVE
CWECWE-269, CWE-287
CVSSCritique : 8.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N (destinataire fédéré). La conversion de lien public est pire (pas de compte destinataire sur un pair).
ProduitNextcloud Server
Affecté35.0.0 (da02f41) officiel nextcloud:35.0.0-apache
Authdestinataire fédéré (ou convertisseur de lien public)
LicenceGNU Affero GPL v3.0
Lab127.0.0.1 uniquement

Ce qu'un attaquant peut faire

Vous partagez un fichier ou dossier avec bob sur un autre Nextcloud. Nextcloud génère un secret de 32 caractères, le stocke comme votre mot de passe d'application, et remet ce secret à Bob comme refresh_token.

Bob (ou quiconque convertit votre lien public en partage fédéré) peut alors :

  • Se connecter en tant que vous sur votre serveur
  • Lire tous les fichiers de votre répertoire personnel, pas seulement le nœud partagé
  • Écraser ces fichiers
  • Contourner votre 2FA (chemin du mot de passe d'application)

Il n'obtient pas de shell PHP sur l'hôte. Il n'a pas besoin de votre mot de passe. N'acceptez pas le partage et n'appelez pas d'abord OCM access-token : cet échange verrouille la portée du système de fichiers. Le lab prouve le secret avant échange.


Comment je l'ai trouvé

Un partage est censé être un partage. Un fichier. Un dossier. J'ai lu FederatedShareProvider::createFederatedShare sur le tag v35.0.0. Il génère un secret de 32 caractères comme IToken::PERMANENT_TOKEN pour le partageur sans portée. PublicKeyToken::getScopeAsArray définit par défaut SCOPE_FILESYSTEM => true. C'est un mot de passe d'application. Session::tryTokenLogin accepte un Bearer permanent.

Le travail sur l'échange OCM (PR #57234 / #57166) verrouille déjà la portée du système de fichiers après le premier échange. Une analyse non officielle utilisait ce saut post-échange. Je l'ai essayé en premier. Sur cet arbre, le token échangé est TEMPORARY, nommé OCM Access Token, et /remote.php/dav le rejette (allowOcmAccessToken false). DAV a dit non.

Donc je n'ai pas échangé. ocm_discovery_enabled est resté false pour que le destinataire ne l'échange pas à ma place. Deux machines officielles nextcloud:35.0.0-apache, overwrite.cli.url en DNS docker (http://sender / http://recipient). Laissez cela à 127.0.0.1 et le S2S se parle à lui-même.

Alice partage un fichier avec bob@http://recipient. Bob lit les partages en attente. refresh_token longueur 32. access_token longueur 0. Un GET Bearer non authentifié du fichier témoin privé d'Alice, jamais inclus dans le partage, a renvoyé 200, X-User-Id: alice.


Lab

cd lab
./run.sh

Cible uniquement http://127.0.0.1:18340 (expéditeur) et :18341 (destinataire).

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

Le correctif

Générer le secret fédéré avec la portée du système de fichiers à false dès la première insertion. Ne pas accepter ce secret comme Bearer/Basic sur /remote.php/dav. Le premier échange verrouille déjà la portée FS ; la création n'aurait jamais dû distribuer un mot de passe d'application.


Références

  • github.com/nextcloud/server tag v35.0.0
  • Travail OCM connexe : PR #57234 / PR #57166
  • Abraxas Labs : abraxaslabs.tech · github.com/abraxas · @abraxas_null

Licence

GNU Affero GPL v3.0. Voir LICENSE. Lab en boucle locale uniquement. Aucune garantie.

Télécharger l’outil