{"id":"CVE-2026-103875","kind":"vulnerability","aliases":["CVE-2026-103875"],"related":[],"title":"Media Library Assistant WordPress plugin: reflected XSS via search-string parameter","description":"The Media Library Assistant plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via the 'search-string' parameter in all versions up to, and including, 3.42 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link. Exploitation requires the targeted site to have a publicly accessible page containing an [mla_gallery] shortcode configured with a pagination output mode and an mla_link_href template that reflects a {+request:...+} token, along with enough attachments to trigger pagination.","summary":"The Media Library Assistant plugin for WordPress reflects the search-string parameter into pages without proper sanitization or escaping, in all versions up to and including 3.42. An unauthenticated attacker can get scripts to run in a visitor's browser if they trick that user into clicking a crafted link.","severity":"medium","cvss":4.7,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["media-library-assistant","package","wordpress"],"not_affected_if":["no-mla-gallery-shortcode","plugin-not-installed","version-above-3.42"],"how_to_check":"- Check the installed version of the Media Library Assistant plugin in the WordPress admin plugins list, or look for `media-library-assistant` under `wp-content/plugins/`\n- Search site pages for the `[mla_gallery]` shortcode with pagination and an `mla_link_href` template containing `{+request:` tokens","fix":null,"status":"open","published_at":"2026-10-29T10:17:01+00:00","first_seen_at":"2026-10-29T10:24:24+00:00","triaged_at":"2026-10-29T10:25:33+00:00","updated_at":"2026-10-29T10:25:33+00:00","category":"package","confidence":0.75,"triage":{"at":"2026-10-29T10:25:33Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"internet","title":"Media Library Assistant WordPress plugin: reflected XSS via search-string parameter","impact":"medium","summary":"The Media Library Assistant plugin for WordPress reflects the search-string parameter into pages without proper sanitization or escaping, in all versions up to and including 3.42. An unauthenticated attacker can get scripts to run in a visitor's browser if they trick that user into clicking a crafted link.","audience":"businesses","category":"package","nicknames":[],"who_cares":["wordpress","media-library-assistant"],"confidence":0.75,"fix_status":"unknown","needs_auth":"no","worst_case":"Attacker runs scripts in a visitor's browser on the site","analyst_note":"","how_to_check":"- Check the installed version of the Media Library Assistant plugin in the WordPress admin plugins list, or look for `media-library-assistant` under `wp-content/plugins/`\n- Search site pages for the `[mla_gallery]` shortcode with pagination and an `mla_link_href` template containing `{+request:` tokens","plain_action":"","needs_analyst":false,"not_affected_if":["no-mla-gallery-shortcode","plugin-not-installed","version-above-3.42"],"who_is_affected":"Only WordPress sites running Media Library Assistant up to and including 3.42 are exposed. Exploitation also needs a publicly accessible page with an [mla_gallery] shortcode in pagination mode, an mla_link_href template that reflects a request token, and enough attachments to paginate. Sites without that shortcode setup can skip it.","user_interaction":"yes","needs_special_setup":"yes","severity_if_unknown":"medium"},"cost_usd":0.000722,"input_tokens":4253,"output_tokens":593,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-103875':15A,18A '-2026':14A,17A '3.42':52B,104C 'access':155C 'action':139C 'along':179C 'arbitrari':122C 'assist':3A,22B,28B,79C 'attach':182C 'attack':55B,119C 'browser':65B 'click':72B,142C 'configur':162C 'contain':157C 'craft':74B 'cross':88C 'cross-sit':87C 'cve':13A,16A 'due':105C 'enough':181C 'escap':44B,112C 'execut':128C 'exploit':146C 'galleri':160C 'get':57B 'href':172C 'includ':51B,103C 'inject':121C 'input':108C 'insuffici':107C 'librari':2A,21B,27B,78C 'link':75B,145C,171C 'make':114C 'media':1A,20B,26B,77C 'media-library-assist':19B 'mla':159C,170C 'mode':167C 'output':111C,166C 'packag':23B 'page':39B,126C,156C 'pagin':165C,185C 'paramet':12A,37B,96C 'perform':137C 'plugin':5A,29B,80C 'possibl':116C 'proper':41B 'public':154C 'reflect':6A,32B,86C,175C 'request':177C 'requir':147C 'run':60B 'sanit':42B,109C 'script':58B,90C,124C 'search':10A,35B,94C 'search-str':9A,34B,93C 'shortcod':161C 'site':89C,150C 'string':11A,36B,95C 'success':132C 'target':149C 'templat':173C 'token':178C 'trick':68B,133C 'trigger':184C 'unauthent':54B,118C 'user':70B,135C 'version':47B,99C 'via':8A,91C 'visitor':63B 'vulner':84C 'web':123C 'without':40B 'wordpress':4A,24B,31B,82C 'xss':7A","nicknames":[],"mitigations":[],"who_affected":"Only WordPress sites running Media Library Assistant up to and including 3.42 are exposed. Exploitation also needs a publicly accessible page with an [mla_gallery] shortcode in pagination mode, an mla_link_href template that reflects a request token, and enough attachments to paginate. Sites without that shortcode setup can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"none","audience":"businesses","plain_action":null,"first_public_at":"2026-10-29T10:17:01+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N","cvss_by":"security@wordfence.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-103875","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-103875","severity":null,"published_at":"2026-10-29T10:17:01+00:00","modified_at":"2026-10-29T10:17:01+00:00","first_seen_at":"2026-10-29T10:24:24+00:00","fetched_at":"2026-10-29T10:24:24+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"}