CVE-2026-103688
validatedZero produced an exploit or a check.description
Checkout Files Upload for WooCommerce versions before 2.4.0 can accept arbitrary uploads when its accepted-file-types setting is left blank. An unauthenticated attacker may upload files that enable code execution if the web server runs PHP from the uploads directory.
mitigation
Upgrade Checkout Files Upload for WooCommerce to version 2.4.0 or later. Until upgraded, do not leave the accepted-file-types setting blank and prevent PHP execution in upload directories.
fixed in 2.4.0
outcome
Upstream: a detection for this already ships elsewhere, so we didn't generate a new one. The credit goes to whoever did.
source signals
Public signals that triggered or updated the pipeline. These are inputs for the deltas above.
- 2026-10-28vulncheck_kev: trigger signal, started the run
- 2026-10-28 06:00Zcve.org record for CVE-2026-103688
- 2026-10-28 20:40Z
this entry in the feed
GET /api/v1/feed/CVE-2026-103688
{ "etk_id": "ETK-2026-2902", "cve_id": "CVE-2026-103688", "display_id": "CVE-2026-103688", "ghsa_id": null, "euvd_id": null, "status": "published", "anchor_state": "anchored", "title": "Unrestricted file upload in Checkout Files Upload for WooCommerce", "summary": "Checkout Files Upload for WooCommerce versions before 2.4.0 can accept arbitrary uploads when its accepted-file-types setting is left blank. An unauthenticated attacker may upload files that enable code execution if the web server runs PHP from the uploads directory.", "mitigation": "Upgrade Checkout Files Upload for WooCommerce to version 2.4.0 or later. Until upgraded, do not leave the accepted-file-types setting blank and prevent PHP execution in upload directories.", "vendor": "WP Wham", "product": "Checkout Files Upload for WooCommerce", "affected": [ { "affected_notes": [], "affected_ranges": [ ">= 0, < 2.4.0" ], "ecosystem": null, "fixed_versions": [ "2.4.0" ], "package_name": "Checkout Files Upload for WooCommerce", "purl": null } ], "cwes": null, "cvss_score": 9.8, "cvss_src": "other", "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "epss_score": null, "epss_percentile": null, "epss_asof": null, "automation": "deterministic", "check": true, "check_confidence_basis": "upstream", "exploit": false, "pipeline_minutes": 0.010467766666666666, "t0_at": "2026-10-28T06:00:20.809000+00:00", "signals": { "check": { "at": "2026-10-28T20:40:23.915532+00:00", "days": 0.6111470663425926, "is_lower_bound": false, "measured_at": "2026-10-28T06:00:20.809000+00:00", "url": null }, "trigger_signal": { "at": "2026-10-28T00:00:00+00:00", "days": -0.2502408449074074, "is_lower_bound": false, "measured_at": "2026-10-28T06:00:20.809000+00:00", "url": "https://vulncheck.com/cve/CVE-2026-103688" } } }
published 2026-10-28 20:40Z
last change 2026-10-28 21:25Z
Need the technical details behind an entry?
Every entry here shows what we attempted and when. The technical details, the generated exploit that fired it and the evidence behind the verdict are not public. Tell us about your use case and we’ll get back to you about extended API access.