CVE-2025-48338CVE-2025-48338是WordPress插件WP Abstracts(wp-abstracts-manuscripts-manager)中的一个PHP本地文件包含(Local File Inclusion, LFI)漏洞。该漏洞源于插件对PHP文件包含/引用语句中的文件名控制不当,属于CWE-98(Improper Control of Filename for Include/Require Statement in PHP Program)类型的漏洞。该漏洞由Patchstack安全团队的研究员[email protected]发现并报告,于2025年10月22日正式披露。
WP Abstracts是一款用于管理学术论文摘要的WordPress插件,广泛应用于学术期刊、会议论文管理等领域。该插件允许用户在线提交、审阅和管理学术摘要。由于插件在处理用户输入时未对文件路径进行充分验证,攻击者可以通过构造特殊的请求,利用PHP的include或require语句包含服务器上的任意文件,从而读取敏感信息或执行恶意代码。
该漏洞的CVSS 3.1评分为7.5分,属于高危级别。攻击者无需认证即可通过网络发起攻击,但需要用户交互(如点击恶意链接或访问恶意页面)。一旦利用成功,攻击者可以对系统的机密性、完整性和可用性造成严重影响。该漏洞影响WP Abstracts插件从n/a到2.7.4的所有版本,使用该插件的WordPress网站管理员应尽快更新到修复版本。
该漏洞的核心问题在于WP Abstracts插件在处理PHP文件包含语句时,未对用户可控的文件名参数进行充分的验证和过滤。具体而言,攻击者可以通过构造包含目录遍历序列(如../)的恶意文件路径,利用PHP的include()、require()等文件包含函数来包含服务器上的任意文件。
从技术角度看,PHP文件包含漏洞通常发生在以下场景:当应用程序使用用户输入作为文件包含函数的参数,且未对路径进行适当的过滤时,攻击者可以利用以下方式进行攻击:
1. **本地文件包含(LFI)**:通过目录遍历(../)访问服务器上的敏感文件,如/etc/passwd、wp-config.php等配置文件,从而获取数据库凭证等敏感信息。
2. **日志注入**:通过将恶意PHP代码注入到Web服务器的访问日志或错误日志中,然后利用文件包含漏洞包含日志文件,实现远程代码执行(RCE)。
3. **PHP包装器利用**:利用PHP的伪协议如php://filter、php://input等读取或执行代码。
4. **会话文件包含**:通过将恶意代码写入PHP会话文件,然后利用文件包含漏洞包含该会话文件。
该漏洞的利用需要用户交互(UI:R),这意味着攻击者可能需要诱导受害者点击恶意链接或访问特制的网页。攻击复杂度较高(AC:H),但一旦成功利用,影响极为严重,可导致完全的服务器控制。