UnratednpmAmendedPublished
dcmjs: DS/IS VALUE REPRESENTATION INPUT VALIDATION BYPASS
CVE-2026-46350 · GHSA-px68-xx5g-48q5
- Affected
- npm dcmjs < 0.52.0
- Fixed in
- 0.52.0· Vendor fix available
- Issue
- dcmjs, a JavaScript library for DICOM manipulation used in web-based medical imaging viewers, contains an input validation bypass in its handling of DS (Decimal String) and IS (Integer String) value representations. The DecimalString and IntegerString classes in ValueRepresentation.js use a regex sanitizer followed by JavaScript's Number() constructor. While the regex strips direct NaN/Infinity strings, it preserves scientific notation (including the 'e' character), enabling: 1. Infinity injection via scientific notation overflow (1e999999) 2. NaN injection via sign-only remnants from stripped inf strings ("-inf" -> "-") 3. IS accepting scientific notation in violation of PS3.5 AFFECTED PRODUCT ================ Product: dcmjs (JavaScript DICOM manipulation library) Repository: https://github.com/dcmjs-org/dcmjs npm: https://www.npmjs.com/package/dcmjs Affected Versions: 100000) in violation of PS3.5 Section 6.2, which restricts IS to characters 0-9, +, -. (d) No range validation…
Recommended action: Upgrade to 0.52.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.