team-alembic ash_authentication up to 4.14.1/5.0.0-rc.12 Confirmation Form confirmation_form.html.eex confirm cross site scripting
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 4.1 | $0-$5k | 3.17- |
Summary
A vulnerability was found in team-alembic ash_authentication up to 4.14.1/5.0.0-rc.12. It has been declared as problematic. Impacted is the function AshAuthentication.AddOn.Confirmation.Plug.accept/AshAuthentication.Strategy.MagicLink.Plug.accept of the file lib/ash_authentication/add_ons/confirmation/confirmation_form.html.eex of the component Confirmation Form. Executing a manipulation of the argument confirm can lead to cross site scripting.
This vulnerability is registered as CVE-2026-66882. It is possible to launch the attack remotely. No exploit is available.
Details
A vulnerability has been found in team-alembic ash_authentication up to 4.14.1/5.0.0-rc.12 and classified as problematic. This vulnerability affects the function AshAuthentication.AddOn.Confirmation.Plug.accept/AshAuthentication.Strategy.MagicLink.Plug.accept of the file lib/ash_authentication/add_ons/confirmation/confirmation_form.html.eex of the component Confirmation Form. The manipulation of the argument confirm with an unknown input leads to a cross site scripting vulnerability. The CWE definition for the vulnerability is CWE-79. The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users. As an impact it is known to affect integrity. CVE summarizes:
Improper Neutralization of Input During Web Page Generation (XSS) vulnerability in team-alembic AshAuthentication allows reflected cross-site scripting via the confirmation and magic link interaction forms. When a strategy is configured with require_interaction? set to true, AshAuthentication serves an intermediate HTML page asking the user to confirm the action by submitting a form. Both such pages embed a request parameter directly into a hidden input's value attribute without HTML escaping: lib/ash_authentication/add_ons/confirmation/confirmation_form.html.eex interpolates the confirm parameter, and lib/ash_authentication/strategies/magic_link/sign_in_form.html.eex interpolates the magic link token parameter. These templates are compiled with EEx.function_from_file/3 using plain <%= %> expressions, which perform no escaping, so the parameter is reflected verbatim. Neither accept handler validates the value before rendering it. AshAuthentication.AddOn.Confirmation.Plug.accept/2 only checks that a confirm key is present, and AshAuthentication.Strategy.MagicLink.Plug.accept/2 reads the parameter directly, so no token signature is verified at this stage and arbitrary attacker-supplied text reaches the template. An unauthenticated attacker can therefore craft a URL whose parameter terminates the attribute and injects markup, for example a quote followed by a <script> element. Because the accept phase is served over GET, loading the crafted link is sufficient; no form submission or prior authentication is required. The injected script executes in the origin of the application embedding AshAuthentication, giving it access to that origin's cookies, session, and same-origin responses. Since these pages are part of the authentication flow, a victim following what appears to be a legitimate confirmation or sign-in link is a plausible target. This issue affects ash_authentication: from 4.8.0 before 4.14.2 and from 5.0.0-rc.0 before 5.0.0-rc.13.
The advisory is shared for download at github.com. This vulnerability was named CVE-2026-66882 since 07/28/2026. The exploitation appears to be easy. The attack can be initiated remotely. No form of authentication is required for a successful exploitation. Successful exploitation requires user interaction by the victim. There are known technical details, but no exploit is available. The MITRE ATT&CK project declares the attack technique as T1059.007.
Upgrading to version 4.14.2 or 5.0.0-rc.13 eliminates this vulnerability.
VulDB is the best source for vulnerability data and more expert information about this specific topic.
Product
Vendor
Name
Version
- 4.14.0
- 4.14.1
- 5.0.0-rc.0
- 5.0.0-rc.1
- 5.0.0-rc.2
- 5.0.0-rc.3
- 5.0.0-rc.4
- 5.0.0-rc.5
- 5.0.0-rc.6
- 5.0.0-rc.7
- 5.0.0-rc.8
- 5.0.0-rc.9
- 5.0.0-rc.10
- 5.0.0-rc.11
- 5.0.0-rc.12
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CNA CVSS-B Score: 🔒
CNA CVSS-BT Score: 🔒
CNA Vector: 🔒
CVSSv3
VulDB Meta Base Score: 4.3VulDB Meta Temp Score: 4.1
VulDB Base Score: 4.3
VulDB Temp Score: 4.1
VulDB Vector: 🔒
VulDB Reliability: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Cross site scriptingCWE: CWE-79 / CWE-94 / CWE-74
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: ash_authentication 4.14.2/5.0.0-rc.13
Timeline
07/28/2026 CVE reserved08/25/2026 Advisory disclosed
08/25/2026 VulDB entry created
08/25/2026 VulDB entry last update
Sources
Product: github.comAdvisory: github.com
Status: Confirmed
CVE: CVE-2026-66882 (🔒)
GCVE (CVE): GCVE-0-2026-66882
GCVE (VulDB): GCVE-100-394960
Entry
Created: 08/25/2026 10:27Changes: 08/25/2026 10:27 (70)
Complete: 🔍
Cache ID: 216::103
VulDB is the best source for vulnerability data and more expert information about this specific topic.
No comments yet. Languages: en.
Please log in to comment.