SOC Prime Bias: Critique

11 Nov 2025 14:08 UTC

CVE-2025-12480 : Rapport du SOC sur la Vulnérabilité d’Accès Non Authentifié au Contrôle dans le Triofox de Gladinet

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Suivre
CVE-2025-12480 : Rapport du SOC sur la Vulnérabilité d’Accès Non Authentifié au Contrôle dans le Triofox de Gladinet
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Analyse

Une vulnérabilité de contrôle d’accès incorrect suivie sous le nom de CVE‑2025‑12480 dans Gladinet Triofox a permis à des attaquants non authentifiés de contourner entièrement l’authentification, d’accéder aux pages de configuration initiales même après l’installation, de créer de nouveaux comptes administrateur puis d’abuser des fonctionnalités intégrées pour exécuter des charges utiles arbitraires. Compte tenu de sa gravité élevée (CVSS 9.1) et de son exploitation dans le monde réel, ce bogue représente un risque sérieux pour les organisations utilisant des versions vulnérables.

Enquête

Les chercheurs en menaces de Mandiant (via Google Cloud) ont découvert qu’à partir du 24 août 2025, le cluster de menaces UNC6485 exploitait la faille en soumettant des requêtes HTTP avec un en-tête Host manipulé défini sur « localhost », contournant ainsi le contrôle dans la fonction CanRunCriticalPage() et accédant à des pages de configuration telles que AdminDatabase.aspx et AdminAccount.aspx. Une fois à l’intérieur, les attaquants ont utilisé la fonctionnalité de configuration de l’antivirus du produit (qui s’exécutait avec des privilèges SYSTEM) pour déployer un script batch malveillant qui téléchargeait une charge utile déguisée (par exemple, installateur Zoho UEMS) puis installait des outils d’accès à distance (Zoho Assist, AnyDesk) et établissait des tunnels SSH inversés.

Atténuation

Les organisations doivent s’assurer qu’elles ont mis à jour Triofox vers la version 16.7.10368.56560 (ou ultérieure), qui résout l’accès aux pages de configuration initiale après l’installation. D’autres mesures d’atténuation incluent l’audit et la désactivation des comptes administrateur natifs non utilisés, la restriction de l’accès aux interfaces de gestion par IP ou segment de réseau, la vérification que la fonction antivirus n’autorise pas la configuration de chemin arbitraire ou l’exécution de binaires non fiables, et la surveillance des sorties SSH/anomalies sur le port 433 ou du tunneling RDP.

Réponse

Si vous suspectez une compromission d’un serveur Triofox, isolez immédiatement l’hôte concerné, examinez les journaux HTTP pour des valeurs d’en-tête Host suspectes (par exemple, « localhost »), vérifiez la création de comptes admin non autorisés, et recherchez des preuves de chargements de fichiers malveillants, d’outils de tunnel inversé ou d’exécutions de processus inhabituelles à partir du service Triofox. Ensuite, réimagez ou restaurez l’hôte avec la version logicielle corrigée, réinitialisez les identifiants affectés et faites tourner les identifiants sur les outils auxiliaires, et signalez l’incident à votre CERT national ou autorité de sécurité. Enfin, mettez à jour vos règles de recherche de menaces ou de SIEM pour détecter cette chaîne d’attaque (contournement de l’authentification → nouveau compte admin → abus de chemin antivirus → téléchargement de charge utile → installation d’outil d’accès à distance) à l’avenir.

Flux d’attaque

Instructions de simulation

  • Narratif d’attaque & Commandes :
    Un attaquant, ayant identifié l’AdminDatabase.aspx terminal vulnérable, prépare une requête HTTP GET qui définit leHost en-tête surlocalhost. Cela trompe l’application en lui faisant considérer la requête comme un appel interne, permettant potentiellement de contourner les contrôles d’accès et d’activer une exploitation plus poussée (par exemple, télécharger une web‑shell). L’attaquant envoie également une requête secondaire où l’en-têteReferer contienthttp://localhost/ pour satisfaire la condition alternative de détection. Les deux requêtes sont émises en utilisantcurl pour garantir le contrôle brut des en-têtes.

  • Script de test de régression :

    #!/usr/bin/env bash
    # -------------------------------------------------
    # Simule une attaque d'en-tête Host contre AdminDatabase.aspx
    # -------------------------------------------------
    
    TARGET="http://vulnerable-webapp.example.com"
    ENDPOINT="/AdminDatabase.aspx"
    
    echo "[*] Envoi de la requête GET avec en-tête Host malveillant (sélection2)..."
    curl -s -o /dev/null -w "%{http_code}n" 
         -H "Host: localhost" 
         -H "User-Agent: Mozilla/5.0" 
         "${TARGET}${ENDPOINT}"