Breaking the BeeStation: Inside Our Pwn2Own 2025 Exploit Journey

2 minute de lecture

Mis à jour :

Exploitation d’une vulnérabilité critique sur le Synology BeeStation Plus

Une recherche de vulnérabilités sur le Synology BeeStation Plus (BST170-8T) a conduit à l’identification d’une faille permettant d’obtenir un accès root. Le processus a débuté par la collecte du firmware, accessible publiquement mais chiffré, nécessitant l’utilisation d’un outil de déchiffrement spécifique. L’analyse de la surface d’attaque a révélé que le serveur web Nginx exposait plusieurs interfaces réseau, notamment via l’endpoint /webapi/entry.cgi. Ce dernier servait de point d’entrée vers divers services backend, chacun gérant des API spécifiques, décrites dans des fichiers .lib.

Points Clés :

  • Accès aux API: Le périphérique expose de nombreuses API à travers l’endpoint /webapi/entry.cgi. L’identification de celles accessibles sans authentification a permis de réduire la surface d’attaque.
  • Analyse du firmware: L’utilisation de l’outil synodecrypt a permis de déchiffrer le firmware pour analyse.
  • Mécanisme d’exploitation: L’exploitation repose sur une combinaison de fuites d’informations (canary de pile, adresse de pile, adresse de la bibliothèque) et d’une chaîne ROP (Return Oriented Programming) pour exécuter des commandes arbitraires.
  • Performance: L’exploitation, bien que complexe, a été accélérée par l’utilisation du multithreading pour les phases de bruteforce.

Vulnérabilités :

  • CVE-2025-12686: Une vulnérabilité de type dépassement de tampon basé sur la pile a été découverte dans la méthode auth du point d’entrée SYNO.BEE.AdminCenter.Auth. Le traitement du paramètre auth_info, après un décodage Base64, utilise la taille fournie par l’attaquant pour écrire dans un tampon de taille fixe (4096 octets) sur la pile. Ce débordement, combiné à la présence d’un canary de pile réutilisable et à l’exécution avec des privilèges root, permet le contrôle du flux d’exécution.

Recommandations :

  • Mise à jour immédiate: Appliquer la mise à jour du système d’exploitation du BeeStation (BSM) à la version 1.3.2-65648 ou ultérieure. Synology a corrigé cette vulnérabilité en ajoutant une vérification de taille avant le décodage Base64, empêchant ainsi le dépassement de tampon.
  • Renforcement des contrôles d’entrée: Les développeurs devraient toujours valider rigoureusement la taille des entrées utilisateur avant de les utiliser dans des opérations d’écriture en mémoire, en particulier lors du traitement de données décodées.
  • Gestion des privilèges: Bien que la vulnérabilité ait été découverte sur un processus s’exécutant en root, une saine pratique de sécurité consiste à accorder uniquement les privilèges nécessaires aux processus.

Source