{"id":"CVE-2026-97348","aliases":["EUVD-2026-96222","GHSA-2v8j-3m7w-9w5f"],"status":"published","title":"SiteOrigin Widgets Bundle \u003c= 1.74.3 - Authenticated (Contributor+) Arbitrary File Read via LESS Injection via [siteorigin_widget] Shortcode 'value' JSON Instance (design.colors LESS Variable)","description":"The SiteOrigin Widgets Bundle plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 1.74.3 via the get_instance_css function. This makes it possible for authenticated attackers, with contributor-level access and above, to read the contents of arbitrary files on the server, which can contain sensitive information. The widget's normal update()/sanitize_field_input() pipeline — which would reject non-hex color values — is bypassed entirely because the [siteorigin_widget] shortcode handler calls $the_widget-\u003ewidget() directly on the attacker-supplied decoded JSON instance.","severity":{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.0071,"percentile":0.53804,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-22"],"published":"2026-10-10T06:40:10Z","modified":"2026-10-28T02:31:13Z","products":[{"vendor":"gpriday","product":"siteorigin widgets bundle"}],"references":[{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/500f18e6-14ca-4632-9317-5886fa2bb763?source=cve","tags":["web"]},{"url":"https://plugins.trac.wordpress.org/browser/so-widgets-bundle/tags/1.74.3/base/siteorigin-widget.class.php#L1148","tags":["web"]},{"url":"https://plugins.trac.wordpress.org/browser/so-widgets-bundle/tags/1.74.3/base/inc/shortcode.php#L31","tags":["web"]},{"url":"https://plugins.trac.wordpress.org/browser/so-widgets-bundle/tags/1.74.3/base/inc/shortcode.php#L51","tags":["web"]},{"url":"https://plugins.trac.wordpress.org/browser/so-widgets-bundle/tags/1.74.3/base/siteorigin-widget.class.php#L1117","tags":["web"]},{"url":"https://plugins.trac.wordpress.org/browser/so-widgets-bundle/tags/1.74.3/base/siteorigin-widget.class.php#L1134","tags":["web"]},{"url":"https://plugins.trac.wordpress.org/browser/so-widgets-bundle/tags/1.74.3/base/siteorigin-widget.class.php#L1006","tags":["web"]},{"url":"https://github.com/siteorigin/so-widgets-bundle/compare/540f834469fe...bf80892709fb","tags":["web"]},{"url":"https://plugins.trac.wordpress.org/changeset/3724795/so-widgets-bundle/trunk/base/siteorigin-widget.class.php","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-97348","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-2v8j-3m7w-9w5f"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/97xxx/CVE-2026-97348.json","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2026-97348","title":"SiteOrigin Widgets Bundle \u003c= 1.74.3 - Authenticated (Contributor+) Arbitrary File Read via LESS Injection via [siteorigin_widget] Shortcode 'value' JSON Instance (design.colors LESS Variable)","description":"The SiteOrigin Widgets Bundle plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 1.74.3 via the get_instance_css function. This makes it possible for authenticated attackers, with contributor-level access and above, to read the contents of arbitrary files on the server, which can contain sensitive information. The widget's normal update()/sanitize_field_input() pipeline — which would reject non-hex color values — is bypassed entirely because the [siteorigin_widget] shortcode handler calls $the_widget-\u003ewidget() directly on the attacker-supplied decoded JSON instance.","status":"published","published":"2026-10-10T06:40:10.233Z","modified":"2026-10-11T16:55:16.84Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T13:44:07.200604Z"}],"euvd":[{"id":"EUVD-2026-96222","description":"The SiteOrigin Widgets Bundle plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 1.74.3 via the get_instance_css function. This makes it possible for authenticated attackers, with contributor-level access and above, to read the contents of arbitrary files on the server, which can contain sensitive information. The widget's normal update()/sanitize_field_input() pipeline — which would reject non-hex color values — is bypassed entirely because the [siteorigin_widget] shortcode handler calls $the_widget-\u003ewidget() directly on the attacker-supplied decoded JSON instance.","status":"published","published":"2026-10-10T06:40:10Z","modified":"2026-10-11T16:55:16Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T17:27:22.074542Z"}],"ghsa":[{"id":"GHSA-2v8j-3m7w-9w5f","title":"The SiteOrigin Widgets Bundle plugin for WordPress is vulnerable to Directory Traversal in all...","description":"The SiteOrigin Widgets Bundle plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 1.74.3 via the get_instance_css function. This makes it possible for authenticated attackers, with contributor-level access and above, to read the contents of arbitrary files on the server, which can contain sensitive information. The widget's normal update()/sanitize_field_input() pipeline — which would reject non-hex color values — is bypassed entirely because the [siteorigin_widget] shortcode handler calls $the_widget-\u003ewidget() directly on the attacker-supplied decoded JSON instance.","status":"published","published":"2026-10-10T09:30:28Z","modified":"2026-10-10T09:30:36Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T15:13:01.926366Z"}],"nvd":[{"id":"CVE-2026-97348","description":"The SiteOrigin Widgets Bundle plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 1.74.3 via the get_instance_css function. This makes it possible for authenticated attackers, with contributor-level access and above, to read the contents of arbitrary files on the server, which can contain sensitive information. The widget's normal update()/sanitize_field_input() pipeline — which would reject non-hex color values — is bypassed entirely because the [siteorigin_widget] shortcode handler calls $the_widget-\u003ewidget() directly on the attacker-supplied decoded JSON instance.","status":"published","published":"2026-10-10T07:16:42.9Z","modified":"2026-10-13T13:29:12.567Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:12:55.473789Z"}],"osv":[{"id":"CVE-2026-97348","title":"SiteOrigin Widgets Bundle \u003c= 1.74.3 - Authenticated (Contributor+) Arbitrary File Read via LESS Injection via [siteorigin_widget] Shortcode 'value' JSON Instance (design.colors LESS Variable)","description":"The SiteOrigin Widgets Bundle plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 1.74.3 via the get_instance_css function. This makes it possible for authenticated attackers, with contributor-level access and above, to read the contents of arbitrary files on the server, which can contain sensitive information. The widget's normal update()/sanitize_field_input() pipeline — which would reject non-hex color values — is bypassed entirely because the [siteorigin_widget] shortcode handler calls $the_widget-\u003ewidget() directly on the attacker-supplied decoded JSON instance.","status":"published","published":"2026-10-10T06:40:10.233Z","modified":"2026-10-28T02:31:13.417696539Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T15:45:21.262447Z"}]}}
