
Exploit RCE non authentifié et scanner de détection pour Weaver E-cology, ciblant le point de terminaison de débogage dubboApi. Inclut un PoC, un script Nmap NSE et des recommandations de remédiation.
Weaver E-cology 10.0 (antérieur au build 20260312) contient une vulnérabilité critique d'exécution de code à distance non authentifiée dans le point de terminaison /papi/esearch/data/devops/dubboApi/debug/method. Les attaquants peuvent injecter des commandes arbitraires via les paramètres POST interfaceName et methodName sans authentification, compromettant ainsi complètement le système. Une exploitation active a été détectée depuis le 2026-03-31 par la Shadowserver Foundation.
Risque rapide : CVSS 9.3 - Totalement non authentifié, aucune interaction utilisateur requise, point de terminaison accessible via le réseau menant directement à l'exécution de code.
| Aspect | Détails |
|---|---|
| ID CVE | CVE-2026-22679 |
| Score CVSS | 9.3 (Critique) |
| Vecteur CVSS | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CWE | CWE-94 (Injection de code) |
| Fournisseur | Weaver (Fanwei) |
| Produit | E-cology 10.0 |
| Type de vulnérabilité | Exécution de code à distance non authentifiée (RCE) |
| Point de terminaison affecté | /papi/esearch/data/devops/dubboApi/debug/method |
| Vecteur d'attaque | Réseau / HTTP POST |
| Authentification requise | Aucune |
| Versions affectées | Versions 10.0 antérieures au build 20260312 |
| Version corrigée | Build 20260312 (publié le 2026-03-12) |
| Exploitation active | Depuis le 2026-03-31 (Shadowserver Foundation) |
| Méthode de correctif | Suppression complète du point de terminaison vulnérable |
Weaver E-cology est l'une des plateformes d'OA (automatisation de bureau) et de collaboration d'entreprise les plus largement déployées en Chine. Développée par Fanwei Group, elle est largement utilisée dans :
E-cology fournit des solutions d'entreprise complètes, notamment :
Les déploiements E-cology comptent généralement de quelques centaines à plusieurs milliers d'utilisateurs par organisation. La plateforme est un composant d'infrastructure critique pour de nombreuses organisations, ce qui rend les vulnérabilités qui l'affectent extrêmement impactantes.
La vulnérabilité existe dans le point de terminaison de débogage dubboApi, qui a probablement été laissé accessible à des fins de développement et de dépannage. Le point de terminaison permet l'invocation directe de méthodes arbitraires via le framework RPC Dubbo sans validation d'entrée ni contrôles d'authentification appropriés.
Modèle de code vulnérable :``` POST /papi/esearch/data/devops/dubboApi/debug/method HTTP/1.1 Host: target.com Content-Type: application/json
{ "interfaceName": "com.weaver.rpc.InvokeCommand", "methodName": "executeCommand", "parameters": ["id", "whoami", "cat /etc/passwd"] }
L’application traite directement ces paramètres et les transmet aux assistants d’exécution de commandes RPC sans :
- Vérification d’authentification
- Validation/assainissement des entrées
- Application d’une liste blanche de méthodes
- Contrôle des types de paramètres
Cela permet aux attaquants de spécifier des méthodes d’interface Dubbo arbitraires qui exécutent des commandes système.
### Schéma du flux d’attaque```
Internet Attacker
|
| Sends unauthenticated POST request
| with malicious interfaceName/methodName
v
Weaver E-cology HTTP Server (port 80/443)
|
| No authentication check
| No authorization validation
v
/papi/esearch/data/devops/dubboApi/debug/method endpoint
|
| Direct parameter pass-through to Dubbo RPC layer
v
Dubbo RPC Framework (unvalidated interface invocation)
|
| Resolves arbitrary interface methods
| Attacker-controlled method name injection
v
Command Execution Helpers (vulnerable classes)
|
| Direct OS command execution via Runtime.exec()
| or similar OS command invocation mechanisms
v
System Command Execution
|
| Complete code execution as Weaver service user
| (typically root or high-privilege account)
|
+-> Read sensitive files (/etc/passwd, configs)
+-> Execute arbitrary binaries
+-> Create reverse shells
+-> Exfiltrate data
+-> Establish persistence
v
Complete System Compromise
Chemin du point de terminaison : /papi/esearch/data/devops/dubboApi/debug/method
Méthode HTTP : POST
Authentification requise : Aucune (zéro authentification)
En-têtes requis : En-têtes HTTP standard (aucun jeton spécial ni cookie requis)
Paramètres du corps de la requête :
| Paramètre | Type | Description | Exemple |
|---|---|---|---|
interfaceName | String | Nom de la classe d'interface RPC (contrôlé par l'attaquant) | com.weaver.rpc.InvokeCommand |
methodName | String | Nom de la méthode à invoquer (contrôlé par l'attaquant) | executeCommand |
parameters | Array | Paramètres de la méthode transmis directement à la logique d'exécution | ["id"] |