Apple CMS 취약점: macCMS의 active.php 및 system.php 파일 분석

中 /application/extra 目录突然多了 active.php 和 system.php 这两个文件 这是一种漏洞吗? 怎么解决这个问题? 是如何生成的这两个文件?

这些文件(位于 /application/extra/ 目录)是 macCMS()v10 版本中的潜藏后门文件,属于一种常见的 CMS 后门漏洞形式。它会导致网站模板下的 JavaScript 文件被注入恶意代码(如 UTF-8/Base64 解码函数和外部脚本加载),从而实现挂马(注入广告或恶意脚本)、数据窃取或进一步入侵。 这不是随机生成的,而是通过 CMS 的设计或更新机制故意引入的,影响盗版或旧版用户较多。

Apple CMS 취약점: macCMS의 active.php 및 system.php 파일 분석

如何生成的这些文件?

  • 生成机制:这些文件通常在安装或更新 CMS 时自动注入,特别是 v10 版本(例如 2025.1000.4050)新增漫画模块后触发。后台登录时,system.php 会执行并释放更复杂的后门逻辑,active.php 则与激活/登录行为关联,导致恶意代码注入到模板目录的所有 .js 文件底部。 它可能源于:
    • 作者故意植入:macCMS 作者(magicblack)在 GitHub 仓库中引入,用于“维护”或控制,但被视为后门。
    • 自动更新漏洞:盗版版或 pro/com 版本的自动更新功能会从恶意源下载这些文件,绕过 WAF 和防篡改检测。
    • 其他入口:结合 CMS 的远程代码执行(CVE-2017-17733)或 SQL 注入漏洞,进一步生成或执行这些文件。
  • 触发条件:首次后台登录或模块激活时执行,文件大小约 42KB(active.php),会动态加载外部脚本。

해결 방법

立即采取以下步骤清理和修复(操作前备份网站和数据库):

  1. 删除或重命名后门文件:
    • 进入 /application/extra/ 目录,找到 active.php 和 system.php。
    • 重命名它们(如 active__.php、system__.php),无需改权限。这会立即中断后门逻辑,而不影响 CMS 正常运行。
  2. 清理注入的恶意代码:
    • 检查模板目录(通常 /template/ 或 /static/)下的所有 .js 文件,搜索注入代码(如 Base64 解码或外部 src 加载)。
    • 用工具(如 grep)扫描:grep -r "base64\|utf-8\|freeob" /path/to/template/*.js。
    • 删除或恢复备份的干净版本。
  3. 权限强化:
    • 将模板 .js 文件权限设为 555(只读):chmod 555 /path/to/template/*.js。
    • 后台 PHP 文件保持 644/755,以支持配置。
    • 开启服务器防篡改(如宝塔面板的“文件防篡改”),监控 /application/extra/ 变化。
  4. 更新 CMS 并修复漏洞:
  5. 预防措施:
    • 更新所有组件(PHP、MySQL),关闭不必要模块。
    • 监控日志:查看 /application/logs/ 或服务器 error.log,搜索异常登录。
    • 如果是共享主机,检查上游漏洞;建议迁移到 VPS 并用 WAF(如 ModSecurity)。

修复后,测试后台登录和前端 JS 加载是否正常。如果问题持续,参考 GitHub issue 讨论 或咨询专业安全服务。保持 CMS 更新是关键,以防类似后门复发。

macCMS active.php 和 system.php 后门注入方法详解

경고하다:以下内容仅用于安全研究、教育和漏洞修复目的。注入或利用后门是非法的,可能导致法律后果或服务器被黑。请立即删除这些文件,并切换到官方开源版 macCMS(GitHub magicblack/maccms10)。如果你的站点已受影响,建议专业安全审计。

从安全分析来看,active.php 和 system.php 是 macCMS v10 版本中的潜藏后门文件,通常通过假冒官网下载带毒安装包注入。这些文件位于 /application/extra/ 目录,文件大小约 42KB(active.php),内容为混淆的 PHP 代码,使用 ROT13 编码、pack('H*') 十六进制解码和 eval() 执行恶意逻辑。它们会在后台登录或模块激活时触发,注入恶意 JS 到模板文件(.js),实现挂马或远控。

注入生成机制

这些文件不是通过传统漏洞(如 SQL 注入)动态生成,而是静态植入在安装包中:

  • 来源:用户从假冒 "苹果CMS 官网"(如 maccms.com 假站)下载 v10 程序包(e.g., maccms10.zip)。包内已预置这些文件。
  • 触发过程:
    1. 解压安装包到服务器(/wwwroot/maccms/)。
    2. 运行安装脚本(install.php),配置文件(如 database.php)加载 extra 目录。
    3. 首次后台登录(admin.php)或激活模块时,system.php 执行,调用 active.php 释放后门。
  • 为什么生成:作者(或黑客)利用 CMS 的自动更新功能,从恶意源下载。更新时,文件被覆盖注入。 这常见于盗版版,官方 GitHub 版无此问题。

具体复现步骤(教育目的,需本地环境)

  1. 환경 건설:
    • 下载带后门的 v10 包(从安全报告中模拟,非真实下载)。
    • Ubuntu + Apache/Nginx + PHP 7.4 + MySQL 5.7。
    • 解压到 /var/www/html/maccms/,设置权限 chmod -R 755 .。
  2. 手动注入模拟(如果无毒包):
    • 创建 /application/extra/active.php 和 system.php,复制混淆代码(见下)。
    • 修改 /application/database.php 或 /application/route.php 添加后门块(e.g., 追加 )。
    • 后台登录触发:访问 http://localhost/maccms/admin.php,system.php 会扫描模板目录注入 JS。
  3. 利用后门:
점수

댓글남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다