{"id":"CVE-2026-104769","kind":"vulnerability","aliases":["CVE-2026-104769"],"related":[],"title":"Debloat WordPress plugin: directory traversal reads arbitrary server files","description":"The Debloat – Remove Unused CSS, Optimize JS plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 1.3.0 via the 's' parameter parameter. This makes it possible for authenticated attackers, with administrator-level access and above, to read the contents of arbitrary files on the server, which can contain sensitive information. Exploitation requires that the site administrator has enabled the Optimize CSS feature (with the default Inline Google Fonts option active), but once that condition is met the attack is trivially triggered by an unauthenticated visitor with a single crafted GET request to the public search URL.","summary":"The Debloat WordPress plugin up to and including 1.3.0 fails to sanitize the 's' parameter, allowing directory traversal. An attacker can read arbitrary files on the server, which may contain sensitive data such as configuration secrets.","severity":"medium","cvss":5.9,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["package","self-hosted","wordpress"],"not_affected_if":["optimize-css-disabled","plugin-not-installed"],"how_to_check":"- Check the installed plugin version in the WordPress admin plugin list or with `wp plugin get debloat` (the exact slug is unknown from the sources).\n- Look for the Optimize CSS feature under the plugin settings and confirm whether it is enabled.","fix":"- Move the plugin past `1.3.0` or remove it. The sources do not name the fixed release.","status":"open","published_at":"2026-10-16T04:18:23+00:00","first_seen_at":"2026-10-23T21:57:12+00:00","triaged_at":"2026-10-25T04:09:58+00:00","updated_at":"2026-10-25T04:09:58+00:00","category":"package","confidence":0.6,"triage":{"at":"2026-10-25T04:09:58Z","model":"claude-haiku-5-5","output":{"fix":"- Move the plugin past `1.3.0` or remove it. The sources do not name the fixed release.","reach":"internet","title":"Debloat WordPress plugin: directory traversal reads arbitrary server files","impact":"high","summary":"The Debloat WordPress plugin up to and including 1.3.0 fails to sanitize the 's' parameter, allowing directory traversal. An attacker can read arbitrary files on the server, which may contain sensitive data such as configuration secrets.","category":"package","nicknames":[],"who_cares":["wordpress","self-hosted"],"confidence":0.6,"needs_auth":"unknown","worst_case":"Attacker reads arbitrary server files, including secrets and configuration.","analyst_note":"The NVD text conflicts: it says exploitation needs an admin account, then says an unauthenticated visitor can trigger it with one GET request. Confirm the auth requirement and find the first fixed version at https://nvd.nist.gov/vuln/detail/CVE-2026-104769.","how_to_check":"- Check the installed plugin version in the WordPress admin plugin list or with `wp plugin get debloat` (the exact slug is unknown from the sources).\n- Look for the Optimize CSS feature under the plugin settings and confirm whether it is enabled.","needs_analyst":true,"not_affected_if":["plugin-not-installed","optimize-css-disabled"],"who_is_affected":"Sites running Debloat version `1.3.0` or earlier with the Optimize CSS feature enabled are exposed, since the sources say that setting must be active for the traversal to be reachable. Sites that do not use the plugin, or that have Optimize CSS disabled, are not affected according to the sources.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"unknown"},"cost_usd":0.001111,"input_tokens":3438,"output_tokens":1534,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-104769':12A,15A '-2026':11A,14A '1.3.0':29B,79C 'access':96C 'activ':133C 'administr':94C,119C 'administrator-level':93C 'allow':36B 'arbitrari':7A,43B,104C 'attack':40B,91C,141C 'authent':90C 'condit':137C 'configur':55B 'contain':50B,111C 'content':102C 'craft':152C 'css':61C,124C 'cve':10A,13A 'data':52B 'debloat':1A,22B,58C 'default':128C 'directori':4A,37B,70C 'enabl':121C 'exploit':114C 'fail':30B 'featur':125C 'file':9A,44B,105C 'font':131C 'get':153C 'googl':130C 'host':19B 'includ':28B,78C 'inform':113C 'inlin':129C 'js':63C 'level':95C 'make':86C 'may':49B 'met':139C 'optim':62C,123C 'option':132C 'packag':16B 'paramet':35B,83C,84C 'plugin':3A,24B,64C 'possibl':88C 'public':157C 'read':6A,42B,100C 'remov':59C 'request':154C 'requir':115C 'sanit':32B 'search':158C 'secret':56B 'self':18B 'self-host':17B 'sensit':51B,112C 'server':8A,47B,108C 'singl':151C 'site':118C 'travers':5A,38B,71C 'trigger':144C 'trivial':143C 'unauthent':147C 'unus':60C 'url':159C 'version':74C 'via':80C 'visitor':148C 'vulner':68C 'wordpress':2A,20B,23B,66C","nicknames":[],"mitigations":[],"who_affected":"Sites running Debloat version `1.3.0` or earlier with the Optimize CSS feature enabled are exposed, since the sources say that setting must be active for the traversal to be reachable. Sites that do not use the plugin, or that have Optimize CSS disabled, are not affected according to the sources.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-16T04:18:23+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","cvss_by":"security@wordfence.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-104769","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-104769","severity":null,"published_at":"2026-10-16T04:18:23+00:00","modified_at":"2026-10-16T17:17:21+00:00","first_seen_at":"2026-10-23T21:57:12+00:00","fetched_at":"2026-10-23T22:28:54+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}