Vulnerability · Published Aug 31, 2026 · Assigned by EEF
CVE-2026-77850Stored XSS in AshAdmin relationship typeahead via unescaped label_field content
High 8.4
In plain English
A high-severity cross-site scripting in ash_admin from ash-project. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 42% of all known vulnerabilities).
Official description
Stored Cross-site Scripting vulnerability in ash-project ash_admin executes attacker-supplied record content as script in an administrator's browser. The relationship typeahead components AshAdmin.Components.Resource.RelationshipField and AshAdmin.Components.Resource.ManagedRelationshipSelectField highlight the matched search term by wrapping it in <b> tags and rendering the whole string with Phoenix.HTML.raw/1. The highlighted value is the destination record's label_field, ordinary database content that is often written by lower-privileged users. Because raw/1 disables output escaping for the entire string, a stored label such as <img src=x onerror=...> runs as JavaScript in the admin's session as soon as a matching record appears in the dropdown, giving the attacker the admin's privileges over everything AshAdmin exposes. The fix HTML-escapes the label before inserting the highlight markup. This issue affects ash_admin: from 0.13.0 before 1.3.1.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| ash-project | ash_admin | 0.13.0 – before 1.3.1 |
| ash-project | ash_admin | eb940f4d7d857ca49368ae847f586d01c6f5ad35 – before 07289191ccdac27dd70ab7c6413ed057bc7fdade |
Weakness: CWE-79 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
References
- https://github.com/ash-project/ash_admin/security/advisories/GHSA-m23x-576h-73w8 vendor-advisory, related
- https://cna.erlef.org/cves/CVE-2026-77850.html related
- https://osv.dev/vulnerability/EEF-CVE-2026-77850 related
- https://github.com/ash-project/ash_admin/commit/07289191ccdac27dd70ab7c6413ed057bc7fdade patch