CVE-2026-48591 Details
Description
Improper Neutralization of Script in Attributes in a Web Page vulnerability in pragdave earmark allows stored cross-site scripting via unescaped HTML attribute values. 'Elixir.Earmark.Transform':_make_att1/2 in lib/earmark/transform.ex splices attribute values verbatim between two literal " bytes: [" ", name, "=\"", value, "\""]. Text nodes are routed through the existing escape function which encodes " as ", but attribute values never visit that path. A markdown link whose URL or title contains a bare " closes the attribute early and lets the trailing bytes be parsed by the browser as fresh HTML attributes. For example, [click](http://example.com/?a=x" onerror="alert(1)) renders as <a href="http://example.com/?a=x" onerror="alert(1)">click</a>, executing arbitrary JavaScript in the victim's browser. The earmark library is no longer maintained and has been retired on Hex. No patched version will be released. All releases from 1.4.1 onward are affected, and users should migrate to a maintained Markdown library such as MDEx. This issue affects earmark from 1.4.1 onward.
A stored cross-site scripting vulnerability has been identified in the Pragdave Earmark library, specifically in versions 1.4.1 and later. This issue arises from improper neutralization of script in HTML attribute values, allowing malicious JavaScript to be executed in the context of the user's browser. The vulnerability is triggered when a markdown link contains a bare double quote, which disrupts the attribute parsing and injects unescaped HTML. The Earmark library is no longer maintained, and users are advised to migrate to a supported markdown library such as MDEx.
Users should migrate to a maintained markdown library such as MDEx, as the Earmark package has been retired and no patched release will be made.
Metrics
CVSS 4.0 Severity and Vector Strings:
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
Volerion
Assessed Jun 17, 2026CISA-ADP
Assessed Jun 17, 2026References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://cna.erlef.org/cves/CVE-2026-48591.html | EEF | AdvisoryRemedy |
| https://osv.dev/vulnerability/EEF-CVE-2026-48591 | EEF | AdvisoryRemedy |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-83 | Improper Neutralization of Script in Attributes in a Web Page | EEF |
Affected Products
| Product | Versions |
|---|---|
| pragdave earmark | >= 1.4.1 (semver) |
CPE
Remediation
| |
Change History
2 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jun 17, 2026 | CVE Modified | CISA-ADP |
| Jun 17, 2026 | New CVE Received | EEF |
Volerion