Robo Gallery <= 5.1.3 - Authenticated (Author+) Stored Cross-Site Scripting via 'Loading Label' Setting
Summary
| CVE | CVE-2026-4300 |
|---|---|
| State | PUBLISHED |
| Assigner | Wordfence |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-04-08 10:16:01 UTC |
| Updated | 2026-04-08 21:26:13 UTC |
| Description | The Robo Gallery plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'Loading Label' setting in all versions up to, and including, 5.1.3. The plugin uses a custom `|***...***|` marker pattern in its `fixJsFunction()` method to embed raw JavaScript function references within JSON-encoded configuration objects. When a gallery's options are rendered on the frontend, `json_encode()` wraps all string values in double quotes. The `fixJsFunction()` method then strips the `"|***` and `***|"` sequences, effectively converting a JSON string value into raw JavaScript code. The Loading Label field (stored as `rbs_gallery_LoadingWord` post_meta) is an `rbstext` type field that is sanitized with `sanitize_text_field()` on save. While this strips HTML tags, it does not strip the `|***...***|` markers since they contain no HTML. When a user inputs `|***alert(document.domain)***|`, the value passes through sanitization intact, is stored in post_meta, and is later retrieved and output within an inline `<script>` tag via `renderMainBlock()` with the quote markers stripped — resulting in arbitrary JavaScript execution. The gallery post type uses `capability_type => 'post'`, allowing Author-level users to create galleries. This makes it possible for authenticated attackers, with Author-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses a page containing the gallery shortcode. |
Risk And Classification
Primary CVSS: v3.1 6.4 MEDIUM from [email protected]
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
EPSS: 0.000370000 probability, percentile 0.111110000 (date 2026-04-09)
Problem Types: CWE-79 | CWE-79 CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | [email protected] | Primary | 6.4 | MEDIUM | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N |
| 3.1 | CNA | DECLARED | 6.4 | MEDIUM | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N |
CVSS v3.1 Breakdown
Attack Vector
NetworkAttack Complexity
LowPrivileges Required
LowUser Interaction
NoneScope
ChangedConfidentiality
LowIntegrity
LowAvailability
NoneCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | Robosoft | Robo Gallery Photo Image Slider | affected 5.1.3 semver | Not specified |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| plugins.trac.wordpress.org/browser/robo-gallery/trunk/includes/frontend/modules/class/js... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/tags/5.1.3/includes/options/rbs_gallery_... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/trunk/includes/frontend/modules/base-gri... | [email protected] | plugins.trac.wordpress.org | |
| www.wordfence.com/threat-intel/vulnerabilities/id/d8693b7d-693f-450a-89ef-e936a... | [email protected] | www.wordfence.com | |
| plugins.trac.wordpress.org/browser/robo-gallery/tags/5.1.3/includes/frontend/modules/bas... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/trunk/includes/options/rbs_gallery_optio... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/tags/5.1.3/includes/frontend/modules/bas... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/trunk/includes/frontend/modules/class/js... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/tags/5.1.3/includes/frontend/modules/cla... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/trunk/includes/frontend/modules/base-gri... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/trunk/includes/frontend/modules/base-gri... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/changeset | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/tags/5.1.3/includes/frontend/modules/bas... | [email protected] | plugins.trac.wordpress.org | |
| plugins.trac.wordpress.org/browser/robo-gallery/tags/5.1.3/includes/frontend/modules/cla... | [email protected] | plugins.trac.wordpress.org | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
Vendor Comments And Credit
Discovery Credit
CNA: Athiwat Tiprasaharn (en)
Additional Advisory Data
| Source | Time | Event |
|---|---|---|
| CNA | 2026-03-17T07:47:22.000Z | Vendor Notified |
| CNA | 2026-04-07T21:02:36.000Z | Disclosed |
There are currently no legacy QID mappings associated with this CVE.