目次(5)

CVE-2026-46350
dcmjs(医用画像の標準形式 DICOM を JavaScript で扱うライブラリ)の 0.52.0 より前に、数値項目の検証不足の欠陥(CVE-2026-46350)が NVD に登録されました。登録は 2026-11-05 で、NVD の状態は Received(受付済み)です。0.52.0 で修正されたと記載されています。
何が起きるか
- DICOM の小数項目(DecimalString)と整数項目(IntegerString)を読み込む処理が、ゆるい正規表現で文字を整えたあと、JavaScript の Number に渡しています。有限の数かどうか、DICOM の規則に合うかは確認していません。
- 指数表記で桁があふれると、正の無限大・負の無限大(Infinity)になります。符号付きの無限大の文字から英字を取り除くと、符号だけが残って NaN(数でない値)になる場合もあります。
- 整数項目は指数表記や、符号付き 32 ビット整数の範囲外の値も受け入れます。
- この値を信用するアプリでは、空間の位置計算、画面の明るさ・コントラストの設定、線量の換算、フレーム数、リスケール、3D の再構成に不正な数が入り、計算が誤ったり、処理が止まったりする恐れがあります。
- 弱点の種別は CWE-20(入力検証の不備)と CWE-1284(量の指定の検証不備)です。
影響を受ける版
| 対象 | 影響する版 | 修正版 |
|---|---|---|
| dcmjs | 0.52.0 より前 | 0.52.0 |
評価
| 評価元 | 版 | 点数 | ベクターの要点 |
|---|---|---|---|
| NVD に載る GitHub の評価(Secondary) | CVSS v3.1 | 9.1 | AV:N/AC:L/PR:N/UI:N・機密性 なし・完全性 高・可用性 高 |
- 認証なし(PR:N)かつ 9 以上のため、基準では severity は critical が案になります。
- ただし、影響は「誤った数値による計算の誤りや処理の中断」で、情報の漏えいやコード実行の記載はありません。実際の深刻さは、dcmjs の使い方(外部から受け取った DICOM ファイルをそのまま診断や線量の計算に使うか)で大きく変わります。点数どおりに critical とするか、high に下げるかは、オーナーの判断待ちです。
- FIRST の EPSS は、取得時点(2026-11-06)で値が算出されていません。CISA の KEV には、手元の状態ファイル上で掲載がありません。
対策として考えられること
- dcmjs を 0.52.0 以降に更新します。
- 外部から受け取った DICOM ファイルは、読み込み後に数値項目が有限の数であることを自分のコードでも確かめます。
- 診断や線量の計算など、結果が人の判断に直結する処理では、入力の範囲確認と結果の妥当性確認を入れます。
- dcmjs をどの製品が使っているかを洗い出し、更新の対象に含めます。
未確認の点
- 実際の悪用の有無(NVD の記述に悪用の記載はありません)。
- 参照先の勧告(GHSA-px68-xx5g-48q5)・修正のコミットとプルリクエスト・v0.52.0 リリースの中身(本稿では開いていません)。
- 影響版の下限、dcmjs を組み込んだ製品の範囲。
- NVD の最終評価(現在は Received で、変わる可能性があります)。
この記事について
- 執筆・編集
- World Security 編集部
- AI の利用
- 本記事は AI が NVD などの公開情報をもとに作成しました。数値は取得時点(2026-11-06)のもので、未確認の点は本文に明記しています。
出典
- NVD CVE-2026-46350(NIST NVD)
- GitHub Security Advisory GHSA-px68-xx5g-48q5(NVD の参照先。未取得)(GitHub)
- dcmjs v0.52.0 リリース(NVD の参照先。未取得)(GitHub)
- FIRST EPSS API(FIRST)




