Am I affected?

type your ash_admin version to check

Description

Use of Insufficiently Random Values vulnerability in ash-project ash_admin ships a hardcoded, publicly known CSP nonce, defeating nonce-based Content-Security-Policy protection.

When mounted without :csp_nonce_assign_key, AshAdmin.Router.ash_admin/2 defaulted the img, style, and script nonces to the literal constant ash_admin-Ed55GFnX, which AshAdmin.Layouts wrote verbatim into the nonce attribute of its inline <style> and <script> tags on every response. The value is a compile-time constant published in the repository and is never rotated per request. If an application's CSP script-src allow-lists that documented default, any HTML-injection sink on an admin page can reuse the known nonce to run inline scripts the policy was meant to block. The fix generates a fresh random nonce per request.

This issue affects ash_admin: from 0.10.8 before 1.3.1.

Weaknesses & attack patterns

Weakness

CWE-330 · Use of Insufficiently Random Values in catalog → MITRE ↗

Attack patterns

CAPEC-63 · Cross-Site Scripting (XSS) MITRE ↗

Affected — Hex / ash_admin Hex.pm ↗ Repository ↗

0.10.8 < 1.3.1 affected
every other version: unaffected
cpe cpe:2.3:a:ash-project:ash_admin:*:*:*:*:*:*:*:*
modules · source files
modules 'Elixir.AshAdmin.Router' · 'Elixir.AshAdmin.Layouts'
source files lib/ash_admin/router.ex · lib/ash_admin/components/layouts.ex

Affected — GitHub / ash-project/ash_admin Repository ↗

99b8dae < bc7a1cd affected
every other version: unaffected
cpe cpe:2.3:a:ash-project:ash_admin:*:*:*:*:*:*:*:*
modules · source files
modules 'Elixir.AshAdmin.Router' · 'Elixir.AshAdmin.Layouts'
source files lib/ash_admin/router.ex · lib/ash_admin/components/layouts.ex

Configurations

The application mounts AshAdmin without :csp_nonce_assign_key and enforces a nonce-based CSP whose script-src allow-lists the default ash_admin-Ed55GFnX value, and has a separate HTML-injection sink on an admin page.

References

Credits

Peter Ullrich Finder Reporter
Zach Daniel / Ash Project Remediation developer
Jonatan Männchen / EEF Coordinator

CVSS breakdown

CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
« All CVEs