CVE-2025-13595 Overview
The CIBELES AI plugin for WordPress contains a critical arbitrary file upload vulnerability due to a missing capability check in the actualizador_git.php file. This security flaw affects all versions up to and including 1.10.8, allowing unauthenticated attackers to download arbitrary GitHub repositories and overwrite plugin files on the affected site's server. This vulnerability can potentially lead to remote code execution, giving attackers complete control over compromised WordPress installations.
Critical Impact
Unauthenticated attackers can exploit this vulnerability to upload malicious files and achieve remote code execution on vulnerable WordPress sites without any authentication requirements.
Affected Products
- CIBELES AI WordPress Plugin versions ≤ 1.10.8
- WordPress installations running vulnerable versions of CIBELES AI plugin
Discovery Timeline
- 2025-11-25 - CVE-2025-13595 published to NVD
- 2025-12-01 - Last updated in NVD database
Technical Details for CVE-2025-13595
Vulnerability Analysis
This vulnerability is classified as CWE-434 (Unrestricted Upload of File with Dangerous Type). The core issue stems from the actualizador_git.php file lacking proper capability checks before processing requests. Without authentication or authorization validation, any remote attacker can interact with this endpoint to manipulate plugin files on the server.
The attack surface is particularly dangerous because WordPress plugins typically have write access to the web server's file system. By exploiting this flaw, attackers can download content from arbitrary GitHub repositories and use it to overwrite existing plugin files, effectively injecting malicious code into the WordPress installation.
Root Cause
The root cause of this vulnerability is the absence of proper access control mechanisms in the actualizador_git.php file. WordPress provides capability checking functions like current_user_can() to verify that users have appropriate permissions before executing sensitive operations. The vulnerable code path fails to implement these checks, allowing unauthenticated users to trigger file operations that should be restricted to administrators.
Attack Vector
The attack is network-based and requires no authentication or user interaction. An attacker can directly send requests to the vulnerable actualizador_git.php endpoint to trigger the file download and overwrite functionality. The exploitation process involves:
- Identifying WordPress sites running vulnerable versions of the CIBELES AI plugin
- Crafting requests to the actualizador_git.php endpoint
- Specifying a malicious GitHub repository containing code to be deployed
- The vulnerable endpoint downloads and overwrites plugin files without validation
- The attacker achieves code execution through the injected malicious files
Additional technical details and a proof-of-concept are available in the GitHub PoC Repository and the Ryan Kozak CVE Analysis.
Detection Methods for CVE-2025-13595
Indicators of Compromise
- Unexpected HTTP requests to /wp-content/plugins/cibeles-ai/actualizador_git.php from external IP addresses
- Modified timestamps on plugin files within the cibeles-ai directory
- Unauthorized or unknown files appearing in the WordPress plugins directory
- Web server logs showing POST requests to actualizador_git.php without prior authentication
Detection Strategies
- Monitor web application firewall (WAF) logs for requests targeting actualizador_git.php
- Implement file integrity monitoring (FIM) on WordPress plugin directories to detect unauthorized changes
- Review access logs for unauthenticated requests to WordPress plugin PHP files
- Deploy network-based intrusion detection rules to alert on exploitation attempts
Monitoring Recommendations
- Enable detailed logging for all requests to the WordPress wp-content/plugins/ directory
- Configure alerts for file modifications in the cibeles-ai plugin directory
- Implement real-time monitoring of outbound connections from the web server to GitHub
- Set up periodic hash validation of plugin files against known-good baselines
How to Mitigate CVE-2025-13595
Immediate Actions Required
- Update the CIBELES AI plugin to a patched version immediately (versions after 1.10.8)
- If an update is not available, disable and remove the CIBELES AI plugin until a patch is released
- Conduct a thorough review of plugin files for any unauthorized modifications
- Scan the WordPress installation for webshells or other malicious code that may have been injected
Patch Information
A security patch has been released addressing this vulnerability. The fix can be reviewed in the WordPress Plugin Changeset. WordPress administrators should update to the latest version of the CIBELES AI plugin through the WordPress admin dashboard or by downloading directly from the WordPress plugin repository. Additional vulnerability details are available in the Wordfence Vulnerability Report.
Workarounds
- Block direct access to actualizador_git.php using web server configuration rules
- Implement IP-based access restrictions to the WordPress admin area and plugin directories
- Deploy a web application firewall (WAF) with rules to block requests to the vulnerable endpoint
- Consider removing the plugin entirely if it is not critical to site functionality
# Apache .htaccess rule to block access to the vulnerable file
<Files "actualizador_git.php">
Order Allow,Deny
Deny from all
</Files>
# Nginx configuration to block access
location ~ /wp-content/plugins/cibeles-ai/actualizador_git\.php$ {
deny all;
return 403;
}
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


