Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconIdentify site with Blocksy Pro fonts+reviews active
-
DeliveryCraft shell.woff2.php font payload
-
ExploitSubmit via review save_attachments upload
-
Installstrpos() filter approves double-extension file
-
C2File written to server
-
ExecuteRequest uploaded PHP file
-
ImpactExecute arbitrary code
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File type validation, storage isolation
MITRE ATT&CK
2 techniques across 2 tactics: Command and Control, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the premium blocksy-companion-pro plugin to be installed AND both the WooCommerce Extra (Advanced Reviews) extension and the Custom Fonts extension to be active simultaneously - the free blocksy-companion plugin is not affected. The concrete trigger is the save_attachments upload path in the Advanced Reviews feature combined with the Custom Fonts extension's wp_check_filetype_and_ext filter, which approves any filename containing '.woff2' or '.ttf' as a substring, allowing double-extension files such as shell.woff2.php. Per the CVSS vector (PR:N/UI:N) no authentication or user interaction is required, but the pro-plus-two-extensions requirement is a non-default configuration that meaningfully limits the exploitable population; the payload also depends on the server being willing to execute PHP from the upload location. |
| Impact | The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 9.8) describes remote, unauthenticated, low-complexity exploitation with full confidentiality, integrity, and availability impact - consistent with unauthenticated RCE via arbitrary file upload. However, the raw 9.8 overstates realistic exposure because exploitation is gated on a specific non-default configuration: the paid Blocksy Companion Pro must be installed with BOTH the WooCommerce Extra (Advanced Reviews) and Custom Fonts extensions active; the far more common free plugin lacks the vulnerable code entirely. No EPSS score, KEV entry, or public POC was provided, so there is no evidence of active exploitation or automated weaponization at this time - the signal is a credible Wordfence code-level finding, not observed attacks. Net assessment: genuinely high severity where the vulnerable pro/extension combination is deployed, but the affected population is narrower than the network-unauthenticated vector alone implies, making this a prioritized patch for affected sites rather than an internet-wide emergency. |
| Exploit ScenarioDerived | An unauthenticated attacker locates a WordPress site running Blocksy Companion Pro with the Advanced Reviews and Custom Fonts extensions active, then submits a product review attachment named shell.woff2.php containing PHP code. The save_attachments handler passes the file through the Custom Fonts filter, whose strpos() substring check sees '.woff2' and approves it, writing the file to the server; the attacker then requests the uploaded .php file to execute arbitrary code. No public POC is currently identified, but the low attack complexity and lack of authentication make reliable exploitation straightforward once the vulnerable configuration is found. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 09, 2026
Arbitrary file upload leading to remote code execution affects the premium Blocksy Companion Pro plugin for WordPress in all versions through 2.1.46, where the Custom Fonts extension's flawed MIME validation lets unauthenticated attackers upload executable PHP files disguised as fonts. The Custom Fonts extension registers a wp_check_filetype_and_ext filter that uses strpos() to approve any filename merely containing '.woff2' or '.ttf' anywhere in the string, so a double-extension payload like shell.woff2.php passes as a legitimate font. Reported by Wordfence with a CVSS of 9.8; no public exploit identified at time of analysis and it is not listed in CISA KEV.
RemediationAI
No vendor-released patched version was identified in the provided data, so no exact fix version can be cited; monitor the Wordfence advisory (https://www.wordfence.com/threat-intel/vulnerabilities/id/2df449b4-3f3b-4afc-b391-8d8d11710c07?source=cve) and the Creative Themes HQ changelog for a release above 2.1.46 and upgrade immediately once available. As specific compensating controls until a patch is confirmed, deactivate the Custom Fonts extension (removes the flawed wp_check_filetype_and_ext filter and closes the primary vector, at the cost of custom font uploads) or deactivate the WooCommerce Extra Advanced Reviews feature that exposes save_attachments (disables customer review attachments); either alone breaks the exploit chain. Additionally, configure the web server to refuse PHP execution within the WordPress uploads directory (e.g., an Nginx location or Apache <Directory> rule denying execution of .php under wp-content/uploads), which neutralizes double-extension payloads with minimal functional impact, and place a WAF rule to block uploads whose filenames contain a font extension followed by an executable extension.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-434 (Unrestricted Upload of File with Dangerous Type). WordPress normally gates uploads through the wp_check_filetype_and_ext filter, which is supposed to confirm a file's real extension and MIME type. The Custom Fonts extension (framework/premium/extensions/custom-fonts/extension.php around line 137) hooks this filter but validates the filename with strpos(), a substring search, instead of PHP's pathinfo() with PATHINFO_EXTENSION, which would isolate the true final extension. Because strpos() matches '.woff2' or '.ttf' as a substring anywhere in the name, a filename such as shell.woff2.php satisfies the check while the operating system and web server still treat the terminal .php as the executable extension. The upload is driven through the save_attachments function in the WooCommerce Extra Advanced Reviews feature (feature.php around line 811), which is where attacker-controlled files enter. Affected code is identified by CPE cpe:2.3:a:creativethemeshq:blocksy_companion:*:*:*:*:*:*:*:*.
Know when Blocksy Companion gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Unauthenticated remote file upload yields code execution with full C/I/A impact; the pro/extension requirement is a deployment precondition, not attack complexity, so AC:L and PR:N stand.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Blocksy Companion plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 2.1.46 via the save_attachments function. This is due to the Custom Fonts extension registering a wp_check_filetype_and_ext filter that approves any filename containing .woff2 or .ttf as a substring via strpos() rather than validating that those strings appear as the final extension via PATHINFO_EXTENSION - allowing double-extension filenames such as shell.woff2.php to pass MIME validation and be handled as permitted font files. This makes it possible for unauthenticated attackers to upload files that may be executable, which makes remote code execution possible. This vulnerability is only exploitable when the premium version of the plugin (blocksy-companion-pro) is installed with both the WooCommerce Extra (Advanced Reviews) and Custom Fonts extensions active; the free blocksy-companion plugin does not contain the vulnerable code paths.
Articles & Coverage 1
Executive ViewAI
Blocksy Companion Pro WordPress plugin (all versions ≤2.1.46) contains a critical unauthenticated remote code execution vulnerability in its Custom Fonts extension. Any website visitor can upload malicious PHP files by exploiting inadequate MIME validation, gaining direct control over the WordPress server and underlying infrastructure.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Disable Custom Fonts extension via plugin admin panel if safe for branding requirements; (2) Configure web server to block PHP execution in wp-content/uploads via .htaccess (AddType text/plain .php) or nginx location directives; (3) Deploy WAF rules to reject multipart POST requests to font upload endpoints with suspicious file extensions; (4) Enable file integrity monitoring on wp-content/uploads directory to alert on unexpected .php file creation; (5) Consider complete plugin removal if font customization is not essential to operations.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
More in Blocksy Companion
View allRemote code execution in the Blocksy Companion Pro WordPress plugin (all versions before 2.1.47) lets unauthenticated at
Unauthenticated privilege escalation in the Blocksy Companion WordPress plugin (versions up to and including 2.1.58) all
The Blocksy Companion WordPress plugin before 1.8.82 does not ensure that posts to be accessed via a shortcode are alrea
Stored cross-site scripting in the Blocksy Companion WordPress plugin (versions through 2.1.60) allows an authenticated
Unauthenticated attackers can exploit a broken access control flaw in the Blocksy Companion WordPress plugin versions up
Stored Cross-Site Scripting in the Blocksy Companion WordPress plugin (versions up to and including 2.1.51) allows authe
The Blocksy Companion plugin for WordPress is vulnerable to Stored Cross-Site Scripting via SVG uploads in versions up t
The Blocksy Companion plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin's Newsletter widg
Cross-Site Request Forgery (CSRF) vulnerability in CreativeThemes Blocksy Companion.0.28. Rated medium severity (CVSS 5.
Auth. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitable, low attack complexity. No vendor pat
Server-Side Request Forgery (SSRF) vulnerability in Creative Themes Blocksy Companion blocksy-companion.0.42. Rated medi
Stored Cross-Site Scripting in the Blocksy Companion WordPress plugin (all versions through 2.1.45) enables authenticate
EUVD-2026-42549
GHSA-hhjp-58g7-3jr8
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB