PULSE
FEED
ransomeverest reclama a Burris & MacOmber · Professional Servicesransomeverest reclama a Energy Storage Terminal in Singapore · SG · Energy & Utilitiesransomeverest reclama a Point Robotics · Technologyransomeverest reclama a Natuzzi · IT · Manufacturingransomeverest reclama a TECNA ICE · IT · Manufacturingransomeverest reclama a MediSolution · Healthcareransomeverest reclama a SleepEx LabRetriever · Healthcareransomcrypto24 reclama a Antah HealthCare Group · MY · Healthcareransomcrypto24 reclama a DATEM, Inc. · PH · Technologyransomwhitearmor reclama a gamblinglore · Retail & E-Commerceransomwhitearmor reclama a Verification · Technologyransomulose reclama a zzq-testransomulose reclama a probe-011637cabbf94076-ransomdragonforce reclama a Zhito Technology · UA · Technologyransomeverest reclama a Burris & MacOmber · Professional Servicesransomeverest reclama a Energy Storage Terminal in Singapore · SG · Energy & Utilitiesransomeverest reclama a Point Robotics · Technologyransomeverest reclama a Natuzzi · IT · Manufacturingransomeverest reclama a TECNA ICE · IT · Manufacturingransomeverest reclama a MediSolution · Healthcareransomeverest reclama a SleepEx LabRetriever · Healthcareransomcrypto24 reclama a Antah HealthCare Group · MY · Healthcareransomcrypto24 reclama a DATEM, Inc. · PH · Technologyransomwhitearmor reclama a gamblinglore · Retail & E-Commerceransomwhitearmor reclama a Verification · Technologyransomulose reclama a zzq-testransomulose reclama a probe-011637cabbf94076-ransomdragonforce reclama a Zhito Technology · UA · Technology
← All CVEs
CVE WatchOct 25, 2026

CVE-2026-48591

Improper Neutralization of Script in Attributes in a Web Page vulnerability in pragdave earmark allows stored cross-site scripting via unesc

CVSS

—

No CVSS

EPSS

0.1%

p3

KEV

—

Exploit Today

1

0-100

Published: Jun 17, 2026 · Last modified: Oct 25, 2026 · CWE-83

EPSS · 30d
0.1%EPSS · 30 days0.2%
2026-09-282026-10-25
Technical 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 &quot;, 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.

Official references
Related CVEs
CVECVSSEPSSKEVRExploitTitleMod.
CVE-2026-617917.4 HIG
21.0%
——6OCO-Server is a self-hosted endpoint management application for computer inventory, software deployment, and mobile device management. Prior to 1.2.1, `Html::commandButton()` in `lib/Html.class.php` embeds an action URL containing a stored computer hostname into a JavaScript string in an inline `onclick` handler, using `htmlspecialchars(ENT_QUOTES)` only for HTML escaping. Browsers decode the HTML entities before interpreting the handler as JavaScript, allowing a crafted hostname to escape the string and execute script in an administrator's authenticated session when an affected command button is activated. `frontend/views/computer-details.php` passes `$computer->hostname` to this helper using `Computer::DEFAULT_COMPUTER_COMMANDS` in `lib/Models/Computer.class.php`, whose VNC, RDP, SSH, and Ping entries use `new_tab=false` and the vulnerable `window.location` branch. A remote attacker who possesses the shared `agent-registration-key` can use the `oco.agent.hello` handler in `frontend/api-agent.php` to store an unchecked hostname when `agent-self-registration-enabled` is enabled; self-registration is disabled by default. The vulnerable default command buttons require no custom command configuration. The injected script can abuse the administrator's privileges, including permission to deploy software jobs to managed computers. This issue is fixed in version 1.2.1.5d
CVE-2026-583915.4 MED
19.6%
——6OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, Firewall Rules and NAT views place stored category names and alias descriptions into HTML title attributes in filter_rule.volt and nat_rule.volt without quote-safe encoding. The response layer uses ENT_NOQUOTES, so a double quote survives and closes the attribute, allowing an event-handler attribute to be added to the existing span. A user with Firewall Categories or Firewall Alias Edit privileges can store a category name or alias description; the category must be assigned to a filter or NAT rule, or the alias must be referenced by a rule source or destination, and the rule must be saved so the affected tooltip is rendered. Script then executes in the session of an administrator or other user who opens the affected Rules or NAT page. The script can access CSRF material and perform authenticated actions as the victim. This issue is fixed in version 26.1.11.7d
CVE-2026-1082607.6 HIG
16.7%
——5Tina is a headless content management system. Prior to 0.2.1, the tina-markdown element in packages/@tinacms/web-components/src/tina-markdown.js assigns a rich-text node.url value directly to an anchor href without validating the URL scheme. A content author can store a link using a script-capable scheme, and a visitor who clicks the rendered link executes attacker-controlled script in the site's origin. The script can access same-origin application data and, when the visitor is an editor or administrator, may expose credentials stored by the TinaCMS admin on that origin. This issue is fixed in version 0.2.1.11d
CVE-2026-911278.2 HIG
33.6%
——10File Viewer is a browser-native viewer for Office, PDF, CAD, archive, and other files in private and internal web applications. Prior to @file-viewer/doc 2.3.1 and msdoc-viewer 0.2.2, the legacy DOC renderer emitted document-controlled hyperlink targets into generated HTML after character escaping but without restricting URL schemes. A crafted legacy DOC file could place javascript:, vbscript:, data:, or another unsafe scheme in a rendered link, and script could execute in the embedding application's origin when a user clicked the link. The fix blocks external document links by default, allows only HTTP(S), mail, telephone, safe relative URLs, and internal bookmarks when external links are explicitly enabled, and applies mount-boundary sanitization as defense in depth. This issue is fixed in @file-viewer/doc 2.3.1 and msdoc-viewer 0.2.2.33d
CVE-2026-451189.3 CRI
45.6%
——14MyBB is free and open source forum software. Prior to 1.8.40, the Contact module does not validate a redirect URL or protocol correctly, resulting in an open redirect and reflected JavaScript code injection. contact.php accepts the redirect target from the from HTTP parameter in $mybb->input['from'] or the Referer HTTP header in $_SERVER['HTTP_REFERER'] and passes it to redirect() without sufficient verification. A javascript: URI becomes the target of the `Click here if you don't want to wait any longer` link because $force_redirect is true, allowing script execution when a victim selects the link. This issue is fixed in version 1.8.40.49d
CVE-2026-457338.3 HIG
37.3%
——11Trilium Notes is a cross-platform, hierarchical note taking application focused on building large personal knowledge bases. Prior to 0.103.0, the #iconClass label value is returned raw by getNoteIcon() and inserted without HTML attribute encoding into class attributes in apps/client/src/widgets/quick_search.ts and apps/client/src/services/note_autocomplete.ts, allowing a stored payload to execute automatically when a victim opens a new tab or uses Ctrl+J and, because Electron enables nodeIntegration and disables contextIsolation, run operating-system commands as the victim. This issue is fixed in version 0.103.0.5d