
Preuve de concept d'exploit pour XSS stockée et permissions non sécurisées dans Collabora CODE <= 4.2.2 via l'API Vereign WOPI, permettant le détournement de comptes et le vol du stockage local.
Collabora CODE <= 4.2.2 - API WOPI de Vereign : XSS stocké et autorisations non sécurisées (détournement de compte) - 4.2.2
Versions concernées : Collabora CODE <= 4.2.2
Conditions d'exploitation : L'interface API /wopi/ de Vereign doit être accessible à l'aide du jeton généré fourni, ce qui est la configuration par défaut.
L'interface API WOPI développée par vereign (www.verign.com) et intégrée dans le package principal de Collabora CODE (https://www.collaboraoffice.com/code/) est sujette à une attaque XSS et à des permissions d'accès aux fichiers non sécurisées. Après avoir téléchargé un document contenant un fichier HTML arbitraire, il est possible de voler les données du localStorage en fournissant un lien spécialement conçu avec une redirection XSS vers une victime.
PoC :
Téléchargez un fichier de document contenant du code javascript et interceptez la requête via Burp (ou tout autre proxy d'interception). Mettez le contenu HTML dans le fichier, contenant un formulaire HTML et un javascript envoyant les cookies et les données utilisateur du stockage local vers un domaine tiers.
Accédez au document via l'application web et obtenez le jeton d'accès au document via la réponse de l'API à l'endpoint /wopi/getAccessToken.
Envoyez le lien HTML malveillant à la victime, vous pouvez l'inclure dans une iframe ou dans une signature de forum :
<a href=https://target.com/wopi/files/10/contents?access_token=<token> >Click here</a>