GHSA-93q6-wwjh-jc6h: @asymmetric-effort/specifyjs: CSS expression sanitization is bypassable in renderToString
A vulnerability in @asymmetric-effort/specifyjs prior to version 0.2.136 allows bypass of CSS expression sanitization in the renderToString function. The sanitization attempted to strip dangerous CSS expressions like 'expression(' and 'url(javascript:' using simple regex, but attackers could bypass this using CSS unicode escapes, null bytes, or CSS comments. These injection vectors only affect legacy browsers (IE6-IE10), while SpecifyJS targets modern browsers. The issue is fixed in version 0.2.136 by normalizing unicode escapes, stripping CSS comments before matching, and checking additional dangerous CSS patterns.
AI Analysis
Technical Summary
The vulnerability exists in the renderToString method of @asymmetric-effort/specifyjs where CSS value sanitization was insufficient. The original sanitization used simple regex patterns to remove 'expression(' and 'url(javascript:', but this was bypassable via CSS unicode escapes (e.g., '\65xpression('), null bytes, or CSS comments (e.g., 'exp/**/ression('). This could allow CSS injection attacks, classified under CWE-79 (Cross-site Scripting). However, these injection methods only work on legacy browsers (IE6-IE10), which are not the target environment for SpecifyJS. The vulnerability is addressed in version 0.2.136 by enhancing sanitization to normalize unicode escapes, remove CSS comments before pattern matching, and detect additional risky CSS properties like 'behavior:', '-moz-binding', and '-o-link'.
Potential Impact
The vulnerability allows bypassing CSS sanitization, potentially enabling CSS injection attacks. However, the impact is limited because the injection vectors only work on legacy browsers (IE6-IE10), which SpecifyJS does not target. There are no known exploits in the wild. The CVSS 4.0 vector indicates network attack vector, low complexity, no privileges or user interaction required, and low scope and impact, resulting in a moderate severity rating.
Mitigation Recommendations
A fix is available in @asymmetric-effort/specifyjs version 0.2.136. Users should upgrade to version 0.2.136 or later to benefit from improved CSS sanitization that normalizes unicode escapes, strips CSS comments before matching, and checks for additional dangerous CSS patterns. No other mitigation is required as the vulnerability is fixed in this version.
GHSA-93q6-wwjh-jc6h: @asymmetric-effort/specifyjs: CSS expression sanitization is bypassable in renderToString
Description
A vulnerability in @asymmetric-effort/specifyjs prior to version 0.2.136 allows bypass of CSS expression sanitization in the renderToString function. The sanitization attempted to strip dangerous CSS expressions like 'expression(' and 'url(javascript:' using simple regex, but attackers could bypass this using CSS unicode escapes, null bytes, or CSS comments. These injection vectors only affect legacy browsers (IE6-IE10), while SpecifyJS targets modern browsers. The issue is fixed in version 0.2.136 by normalizing unicode escapes, stripping CSS comments before matching, and checking additional dangerous CSS patterns.
CVSS v4.0
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability exists in the renderToString method of @asymmetric-effort/specifyjs where CSS value sanitization was insufficient. The original sanitization used simple regex patterns to remove 'expression(' and 'url(javascript:', but this was bypassable via CSS unicode escapes (e.g., '\65xpression('), null bytes, or CSS comments (e.g., 'exp/**/ression('). This could allow CSS injection attacks, classified under CWE-79 (Cross-site Scripting). However, these injection methods only work on legacy browsers (IE6-IE10), which are not the target environment for SpecifyJS. The vulnerability is addressed in version 0.2.136 by enhancing sanitization to normalize unicode escapes, remove CSS comments before pattern matching, and detect additional risky CSS properties like 'behavior:', '-moz-binding', and '-o-link'.
Potential Impact
The vulnerability allows bypassing CSS sanitization, potentially enabling CSS injection attacks. However, the impact is limited because the injection vectors only work on legacy browsers (IE6-IE10), which SpecifyJS does not target. There are no known exploits in the wild. The CVSS 4.0 vector indicates network attack vector, low complexity, no privileges or user interaction required, and low scope and impact, resulting in a moderate severity rating.
Mitigation Recommendations
A fix is available in @asymmetric-effort/specifyjs version 0.2.136. Users should upgrade to version 0.2.136 or later to benefit from improved CSS sanitization that normalizes unicode escapes, strips CSS comments before matching, and checks for additional dangerous CSS patterns. No other mitigation is required as the vulnerability is fixed in this version.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-93q6-wwjh-jc6h
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-50290"]
- Ecosystems
- ["npm"]
- Database Specific Severity
- MODERATE
- Cvss Version
- 4.0
Threat ID: 6a46ecbb27e9c7971943cdf2
Added to database: 07/02/2026, 22:56:59 UTC
Last enriched: 07/02/2026, 23:14:28 UTC
Last updated: 07/02/2026, 23:14:28 UTC
Views: 2
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.