
CLI Python qui exploite CVE-2026-48907 dans Joomla JCE via un upload d'import de profil, vérifie les chemins du shell et ouvre un canal de commande interactif sur des cibles autorisées.
E.L.V — Exploit Loader & Vulnerability Firmware
Utilitaire de recherche en cybersécurité pour l'évaluation de vulnérabilités autorisée.
E.L.V Cadre de Recherche & d'Évaluation CVE est un utilitaire en ligne de commande basé sur Python destiné à la recherche en sécurité contrôlée et à l'évaluation de vulnérabilités autorisée.
L'implémentation fournie contient des fonctionnalités permettant de :
Le code source actuel identifie sa cible de recherche comme :
CVE-2026-48907 Joomla! JCE Extension < 2.9.99.5 Unauthenticated RCE
Cette affirmation concernant la CVE/le produit est des métadonnées fournies par le code source et n'ont pas été vérifiées de manière indépendante par ce README. Avant de publier une affirmation de sécurité, validez l'identifiant, les versions affectées, l'avis, le composant affecté et les informations de remédiation auprès d'une source fiable de fournisseur/CVE.
Ce projet interagit avec des applications web distantes et l'implémentation fournie inclut des fonctionnalités destinées à téléverser un payload côté serveur personnalisé et à communiquer avec un shell téléversé.
Utilisez-le uniquement contre des systèmes pour lesquels vous disposez d'une autorisation explicite.
N'utilisez pas ce projet pour :
Pour un laboratoire sécurisé, utilisez un environnement VM/conteneur local isolé ou une cible d'entraînement délibérément vulnérable.
| Champ | Valeur |
|---|---|
| Projet | E.L.V Cadre de Recherche & d'Évaluation CVE |
| Auteur / Moteur | HxN / E.L.V |
| Version | 1.0.0 |
| Langage | Python |
| Plateforme | Systèmes *nix / de type Unix |
| Licence | GNU GPL v3 |
| Interface | Ligne de commande |
| Client HTTP | requests |
| Concurrence | ThreadPoolExecutor |
| Objectif principal | Recherche et évaluation de sécurité autorisées |
Le code source elv-cve.py fourni contient les composants principaux suivants.
Le script lit un fichier local fourni via l'option --shell.
Le code source décrit ceci comme un fichier shell/uploader personnalisé et se termine lorsque le fichier spécifié ne peut pas être lu.
Le programme prend en charge deux modes de cible mutuellement exclusifs :
Pour chaque cible, le script effectue une requête GET contre la racine de la cible et attend une réponse HTTP 200 avant de continuer.
L'implémentation recherche dans le HTML retourné une valeur liée au CSRF à l'aide d'expressions régulières.
Deux motifs sont actuellement implémentés.
Le script construit une requête de téléversement multipart contre :```text /index.php?option=com_jce
La requête inclut la tâche d'importation de profil et le jeton extrait.
### 6. Vérification du chemin candidat
Après la requête d'envoi, le programme vérifie plusieurs emplacements possibles pour le fichier résultant.
Le code source actuel contient ces chemins candidats :```text
/tmp/
/images/
/images/stories/
/media/
Pour une cible unique, le programme actuel invoque une interface de commande interactive lorsqu'il signale un chemin de shell téléversé avec succès.
La source envoie des commandes à l'aide de paramètres POST nommés :```text cmd c
Comme cette fonctionnalité peut entraîner une exécution de commande à distance, elle doit être restreinte à des environnements isolés et explicitement autorisés.
### 8. Traitement multi-cibles
Lorsqu'un fichier de cibles est fourni, le programme utilise un `ThreadPoolExecutor` et traite les cibles de manière concurrente.
Le nombre de threads par défaut dans le code source est :```text
10
À un niveau élevé, l'implémentation actuelle suit ce flux :```text Start │ ├── Parse command-line arguments │ ├── Load local payload file │ ├── Load one target OR target list │ ├── Create ELV_CVE output directory │ ├── Target processing │ │ │ ├── GET target │ ├── Check HTTP response │ ├── Extract token │ ├── Submit profile-import request │ ├── Check candidate file paths │ └── Record result │ └── Write results / display summary
---
## Prérequis
La source fournie importe :
- des modules de la bibliothèque standard Python :
- `random`
- `re`
- `time`
- `argparse`
- `sys`
- `os`
- `json`
- `threading`
- `concurrent.futures`
- des modules tiers :
- `requests`
- `urllib3`
Une installation minimale des dépendances est donc :```bash
python3 -m pip install requests urllib3
Pour des déploiements reproductibles, épinglez les dépendances dans un fichier requirements.txt.
Exemple :```text requests urllib3
---
## Installation
Clonez ou copiez le projet dans un environnement d'évaluation isolé.