Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-48907-Joomla-JCE-detection — 防御性实验室验证和SOC检测指南,针对Joomla JCE <= 2.9.99.4中的CVE-2026-48907漏洞,包含Apache/Joomla/auditd遥测、webshell工件、Sigma规则、MITRE ATT&CK映射及缓解建议。 | Kitploit
工具/GitHubGitHub/g0thamrabb1t/cve-2026-48907-joomla-jce-detection
漏洞分析漏洞利用取证分析Web安全威胁情报论文与研究学习与教育事件响应日志分析

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
GitHub
g0thamrabb1t/cve-2026-48907-joomla-jce-detection

CVE-2026-48907-Joomla-JCE-detection

防御性实验室验证和SOC检测指南,针对Joomla JCE <= 2.9.99.4中的CVE-2026-48907漏洞,包含Apache/Joomla/auditd遥测、webshell工件、Sigma规则、MITRE ATT&CK映射及缓解建议。

查看仓库
132个月前尚未审核
分享

Joomla JCE CVE-2026-48907 — PoC验证、Webshell工件与SOC检测

针对影响Joomla内容编辑器(JCE)版本至2.9.99.4的CVE-2026-48907的防御性验证报告及面向SOC的检测笔记。

仓库目的

本仓库记录了在Joomla JCE中对CVE-2026-48907的受控实验室验证,并专注于为SOC团队提供实用的检测工程方法。

目标并非提供利用指南,而是展示验证过程中哪些遥测源有用、创建了哪些工件,以及防御者如何检测和响应此活动。

报告

  • 英文PDF报告
  • 波兰语PDF报告
  • 英文DOCX报告
  • 波兰语DOCX报告

总结

领域发现
漏洞Joomla内容编辑器(JCE)中的CVE-2026-48907;未经身份验证的配置文件创建/导入工作流可能导致PHP上传和代码执行。
测试版本JCE 2.9.99.4。Joomla管理员面板显示有可用更新至2.9.99.7。
实验室结果公开PoC验证确认了RCE,并在Joomla /tmp 中创建了一个名为jce*.xml.php的PHP webshell。命令以www-data身份执行。
最有价值的遥测Apache access.log、Apache/PHP error.log、auditd execve遥测以及joomla_html/tmp中的文件系统工件。
Joomla日志作为辅助上下文有用,但单独来看不足。Joomla应用日志未能重构完整链:利用 → webshell → 命令执行。
SOC优先级对于面向互联网的Joomla实例或可从不太受信任的内部网络访问的Joomla实例至关重要。

公开参考

  • 公开PoC仓库:JoomlaSniper
  • CVE记录:CVE-2026-48907
  • NVD:CVE-2026-48907
  • CISA KEV目录:已知被利用漏洞目录

实验室环境

参数值
应用URLhttp://172.20.10.3:9999
Joomla容器joomla-jce-lab,镜像 joomla:5-apache
数据库容器joomla-jce-db,镜像 mariadb:11
端口映射0.0.0.0:9999 -> 80/tcp
ApacheApache/2.4.67 (Debian)
PHPPHP 8.3.31
MariaDB11.8.8-MariaDB
JoomlaJoomla 5.4.6 Stable
JCE2.9.99.4
测试来源Windows 11,IP 172.20.10.2
日志记录Apache访问/错误日志、Joomla日志、auditd、Docker日志、文件系统工件

证据截图

Joomla实验室站点

Joomla实验室站点

已安装的易受攻击JCE版本

已安装的易受攻击JCE版本

Joomla显示有可用的JCE更新

JCE更新可用

Joomla仪表盘更新磁贴

实验室中PoC验证结果

JoomlaSniper RCE确认

交互式shell及以www-data身份执行命令

JoomlaSniper交互式shell

Joomla tmp目录中的文件工件

Joomla tmp webshell工件

关键防御观察

一个关键的运行发现是Joomla应用日志并不足够。

在实验室测试期间,Joomla日志记录了应用层面的上下文,例如joomlafailure事件,但并未显示完整的利用链。有用的链主要在以下方面可见:

  1. Apache access.log
  2. Apache/PHP error.log
  3. auditd execve 记录
  4. joomla_html/tmp 中的文件系统工件

对于SOC监控,Joomla日志应被视为辅助遥测,而不是该漏洞的主要检测来源。

观察到的攻击链

在受控测试期间观察到的高层链:

root@kitploit:~
JCE版本发现
    ↓
POST 到 Joomla JCE组件
    ↓
PHP webshell写入Joomla /tmp
    ↓
对 /tmp/jce*.xml.php 的HTTP请求
    ↓
通过webshell执行命令
    ↓
auditd确认/usr/bin/dash和以www-data身份执行的命令

观察到的HTTP序列

最清晰的证据出现在Apache access.log中:

root@kitploit:~
GET  /plugins/editors/jce/jce.xml
GET  /
POST /index.php?option=com_jce
GET  /tmp/jceolxtshs3.xml.php
GET  /plugins/editors/jce/jce.xml
POST /index.php?option=com_jce
GET  /tmp/jce624jdcfx.xml.php
GET  /tmp/jce624jdcfx.xml.php?c=id%20%26%26%20hostname%20%26%26%20pwd
GET  /tmp/jce624jdcfx.xml.php?c=whoami
GET  /tmp/jce624jdcfx.xml.php?c=hostname
GET  /tmp/jce624jdcfx.xml.php?c=id
GET  /tmp/jce624jdcfx.xml.php?c=pwd

Apache/PHP错误日志指示器

Apache/PHP错误日志包含有价值的解析相关痕迹:

root@kitploit:~
simplexml_load_string()
administrator/components/com_jce/helpers/profiles.php
RXST
RXEND

RXST 和 RXEND 标记对于此特定PoC系列特别有用,因为它们出现在载荷处理路径中。

Joomla日志局限性

Joomla日志确认应用日志记录已启用,但并未重构利用过程:

root@kitploit:~
#Software: Joomla! 5.4.6 Stable [ Kutegemea ] 26-May-2026 16:00 GMT
#Fields: datetime priority clientip category message
2026-06-18T20:37:57+00:00 INFO 172.20.10.2 joomlafailure Username and password do not match or you do not have an account yet.

这意味着仅收集Joomla日志可能会遗漏CVE-2026-48907利用的最重要证据。

文件系统工件

测试在Joomla tmp中创建了PHP webshell文件:

root@kitploit:~
/var/www/html/tmp/jce624jdcfx.xml.php
/var/www/html/tmp/jceolxtshs3.xml.php

实验室中的宿主机路径:

root@kitploit:~
/home/user/joomla-jce-lab/joomla_html/tmp/jce624jdcfx.xml.php
/home/user/joomla-jce-lab/joomla_html/tmp/jceolxtshs3.xml.php

观察到的SHA256哈希值:

root@kitploit:~
b6fa303daef8aa8cb39566c73d2cb4a458efb2b1fba48052dd039d45c3beb0aa  jce624jdcfx.xml.php
f8bcc802ab56b845c968ed6727228f200f8f4bcd332b8ce82c6980d93ac228fd  jceolxtshs3.xml.php

基于哈希的检测应视为低弹性,因为文件名和载荷可能变化。路径、扩展名、所有者和行为关联更有用。

auditd证据

auditd确认Web服务器用户从Joomla tmp目录执行了命令:

root@kitploit:~
CWD=/var/www/html/tmp uid=www-data comm=sh exe=/usr/bin/dash
CWD=/var/www/html/tmp uid=www-data comm=id exe=/usr/bin/id
CWD=/var/www/html/tmp uid=www-data comm=hostname exe=/usr/bin/hostname
CWD=/var/www/html/tmp uid=www-data comm=whoami exe=/usr/bin/whoami

这是最有力的确认,表明该活动不仅是扫描,而是实际的远程代码执行。

检测逻辑

最强的检测是基于关联的:

root@kitploit:~
GET /plugins/editors/jce/jce.xml
    后接
POST /index.php?option=com_jce
    后接
GET /tmp/jce*.xml.php
    后接
GET /tmp/jce*.xml.php?c=
    和/或
auditd: www-data从/var/www/html/tmp执行/usr/bin/dash

检测优先级

严重性条件SOC行动
低来自异常来源的 GET /plugins/editors/jce/jce.xml视为侦察,并与后续请求关联。
中POST /index.php?option=com_jce 没有管理员Referer或来自未知IP告警并审查后续的/tmp请求。
高POST com_jce 后接 GET /tmp/*.php 或 /tmp/*.xml.php立即验证文件系统工件和PHP错误日志。
严重GET /tmp/jce*.xml.php?c= 或 auditd显示 www-data 启动了shell/系统命令视为已确认的RCE/webshell,隔离或限制主机并保留证据。

指标与狩猎模式

HTTP模式

root@kitploit:~
/plugins/editors/jce/jce.xml
/index.php?option=com_jce
/tmp/jce[a-z0-9]{8}\.xml\.php
/tmp/.*\.(php|phtml|phar)(\?| )
cs-uri-query contains "c="

文件系统模式

root@kitploit:~
joomla_html/tmp/jce*.xml.php
/var/www/html/tmp/jce*.xml.php
RXST
RXEND
shell_exec
system
passthru
exec
$_GET['c']

示例分类命令

仅在您拥有或经授权调查的系统上使用这些命令。

root@kitploit:~
grep -RniE "com_jce|profiles\.import|task=profiles|/tmp/.*\.php|RXST|RXEND" apache_logs joomla_html/administrator/logs 2>/dev/null
root@kitploit:~
find ./joomla_html/tmp ./joomla_html/images ./joomla_html/media \
  -type f \( -iname "*.php" -o -iname "*.phtml" -o -iname "*.phar" -o -iname "*.xml.php" \) -ls
root@kitploit:~
sudo ausearch -k wwwdata_exec -i | grep -E "uid=www-data|comm=sh|/usr/bin/dash|/var/www/html/tmp|whoami|hostname| id |pwd"

Sigma规则

独立的Sigma规则文件位于rules/sigma:

  • joomla_jce_webshell_tmp_access.yml
  • joomla_jce_component_exploit_attempt.yml
  • web_user_shell_from_joomla_tmp_auditd.yml

推荐响应

步骤行动目标
1检查实例是否运行JCE <= 2.9.99.4或显示有可用的JCE更新。确认易受攻击状态。
2搜索访问/错误日志中的 com_jce、profiles.import、/tmp/*.php、jce*.xml.php。识别尝试或成功的利用。
3检查 tmp、images 和 media 中的PHP/PHTML/PHAR文件及异常名称。检测webshells或后门。
4审查auditd/EDR中 www-data 启动shell或系统工具的情况。确认代码执行。
5如果确认了webshell/RCE,则隔离主机或限制对该应用的流量。停止进一步活动。
6保留工件,移除webshells,审查JCE配置文件、Joomla账户、cron任务及修改过的文件。分类与根除。
7将JCE更新到最新支持的版本,并审查其他Joomla实例。缓解与风险降低。

缓解建议

优先级建议理由
P1将JCE更新到Joomla/PHP分支的最新支持版本。在实验室中JCE 2.9.99.4易受攻击,Joomla显示有更新至2.9.99.7。
P1修补后,检查webshells和可疑的JCE配置文件。更新关闭了入口点,但不会删除修补前遗留的工件。
P1阻止在 tmp、images、media、cache 和上传目录中执行PHP。即使上传成功,阻止PHP执行也会中断RCE链。
P2为 option=com_jce 和 task=profiles.import 添加WAF或请求过滤。有助于在到达PHP之前检测并阻止利用尝试。
P2集中采集Apache访问日志、PHP错误日志及auditd/EDR遥测。仅靠Joomla应用日志是不够的。
P2实施定期的Joomla扩展清单和更新状态检查。Joomla面板暴露了JCE更新信号;这应反馈给VM/SOC工作流。
P3维护文件基线,并对受控目录之外的新PHP文件发出告警。有助于在入侵后检测webshells和持久化。

Apache加固示例方向

具体配置取决于Apache/PHP部署模型。目标是防止在不应执行脚本的目录中执行PHP。

root@kitploit:~
<Directory "/var/www/html/tmp">
    php_admin_flag engine off
    Options -ExecCGI
    RemoveHandler .php .phtml .phar
    <FilesMatch "\.(php|phtml|phar)$">
        Require all denied
    </FilesMatch>
</Directory>

<Directory "/var/www/html/images">
    php_admin_flag engine off
    Options -ExecCGI
    RemoveHandler .php .phtml .phar
    <FilesMatch "\.(php|phtml|phar)$">
        Require all denied
    </FilesMatch>
</Directory>

MITRE ATT&CK映射

技术名称理由
T1190利用面向公众的应用对Joomla/JCE端点进行的HTTP利用,无需身份验证。
T1505.003服务器软件组件:Web Shell在 /tmp/jce*.xml.php 中创建的PHP webshell。
T1059.004命令和脚本解释器:Unix Shellwww-data 执行了 /usr/bin/dash。
T1033系统所有者/用户发现通过webshell执行了 whoami 和 id。
T1082系统信息发现通过webshell执行了 hostname。
T1083文件和目录发现pwd 以及 /var/www/html/tmp 中的活动。

风险评估

实验室确认了对JCE 2.9.99.4的实际利用。观察到的流程中不需要Joomla身份验证,且公开PoC自动执行了版本检测和webshell创建。

对于真实环境,当Joomla面向互联网或可从不太受信任的内部网络访问时,风险为高至严重。成功攻击可能留下持久性webshell,因此在疑似暴露后仅进行修补而不检查工件是不够的。

免责声明

本仓库仅用于防御性研究、SOC检测工程和漏洞管理。不包含利用代码。任何测试必须仅在您拥有或明确授权评估的系统上进行。

下载工具