IPBUF安全漏洞报告
English
CVE-2026-7128 CVSS 7.3 高危

CVE-2026-7128 SourceCodester药店系统SQL注入漏洞

披露日期: 2026-04-27

漏洞信息

漏洞编号
CVE-2026-7128
漏洞类型
SQL注入
CVSS评分
7.3 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
SourceCodester Pharmacy Sales and Inventory System

相关标签

SQL注入SourceCodesterWeb安全RCE数据泄露

漏洞概述

SourceCodester Pharmacy Sales and Inventory System 1.0版本被披露存在高危SQL注入漏洞。问题出在/ajax.php?action=save_type接口,程序未正确过滤用户提交的ID参数,使得攻击者能够构造恶意SQL语句执行数据库操作。鉴于该漏洞无需认证且可远程利用,建议管理员立即排查系统日志并采取防护措施,以防数据泄露。

技术细节

该漏洞源于SourceCodester Pharmacy Sales and Inventory System 1.0在处理数据请求时的编码缺陷。具体位于/ajax.php文件中的save_type功能模块,系统直接获取HTTP请求中的“ID”参数并将其嵌入到后端SQL查询语句中,未使用预编译语句或有效的输入过滤机制。攻击者可利用此漏洞,通过构造包含SQL元字符(如单引号、注释符)的Payload,绕过应用逻辑。由于CVSS评分显示攻击复杂度低且无需权限,攻击者可远程发起攻击,利用报错注入或联合查询获取数据库结构、窃取管理员密码哈希等敏感数据,甚至篡改库存记录,严重威胁业务安全。

攻击链分析

STEP 1
侦察
攻击者识别出目标运行的是SourceCodester Pharmacy Sales and Inventory System 1.0。
STEP 2
武器化
攻击者构造针对/ajax.php?action=save_type接口ID参数的恶意SQL注入Payload。
STEP 3
投递
攻击者向目标服务器发送包含恶意ID参数的HTTP GET/POST请求。
STEP 4
利用
服务器后端未过滤ID参数,直接执行了攻击者注入的SQL语句。
STEP 5
达成目标
攻击者成功获取数据库敏感信息、篡改数据或进一步控制服务器。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL configuration target_url = "http://target-domain/ajax.php" # Payload demonstrating SQL injection via the 'ID' parameter payload = { "action": "save_type", "ID": "1' OR '1'='1" # Simple SQL Injection payload to test vulnerability } try: # Sending the malicious request response = requests.get(target_url, params=payload) # Analyzing response if response.status_code == 200: print("[+] Request sent successfully.") print("[+] Response content:", response.text[:200]) else: print("[-] Request failed with status code:", response.status_code) except Exception as e: print("[-] An error occurred:", e)

影响范围

SourceCodester Pharmacy Sales and Inventory System 1.0

防御指南

临时缓解措施
建议立即在反向代理或WAF层拦截针对/ajax.php的异常请求,特别是包含单引号、UNION、SELECT等SQL关键字的流量。同时,暂时限制该系统对公网的访问,仅允许内网IP访问,直至完成代码修复。

参考链接

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