---
title: "OpenEMR の CVE-2026-102940: 8.4.0 より前で、文書の移動処理が権限を確認せず、低権限の利用者が任意の文書を付け替えて読み出せる恐れ（CVSS 9.6）"
url: https://n-t-p.io/worldsecurity/articles/openemr-cve-2026-102940-document-move-missing-authz-patient-reassign-read
lang: ja
kind: 速報
category: 脆弱性・CVE
author: World Security 編集部
published: 2026年11月7日
updated: 2026年11月7日
severity: 高
cve: CVE-2026-102940
---

# OpenEMR の CVE-2026-102940: 8.4.0 より前で、文書の移動処理が権限を確認せず、低権限の利用者が任意の文書を付け替えて読み出せる恐れ（CVSS 9.6）

> **TL;DR:** OpenEMR 8.4.0 より前で、文書の移動処理が元・現在・移動先の患者とカテゴリーへの権限を確認せず、低権限の利用者が任意の文書を付け替えて読み出せる恐れ。付け替えは一覧のチェックより前に行われ、応答が 403 でも書き込みは止まらない。NVD 評価は CVSS v3.1 9.6（PR:L）。8.4.0 で修正。

**要点**
- controllers/C_Document.class.php の move_action_process() などが、Document::change_patient() の前に、元の文書・現在の患者とカテゴリー・移動先の患者とカテゴリーのアクセス権を確認しない（CWE-639）。
- 低権限の認証済み利用者が、任意の文書を自分がアクセスできる患者またはカテゴリーに付け替え、通常は保護された読み出し経路で取得できる。
- 付け替えは後段の一覧表示のチェックより前に起きるため、応答が HTTP 403 でも不正な書き込みが止まったとは限らない。
- 評価は CVSS v3.1 9.6（AV:N・PR:L・S:C）。PR:L のため severity 案は high。CISA の SSVC では悪用は PoC あり・自動化なし。
- 修正版は 8.4.0。更新と、低権限アカウントの見直し、文書の付け替えの記録の点検を。悪用の実態・参照先の勧告は未確認。

OpenEMR（電子カルテと診療所の管理を行うオープンソースのアプリ）の 8.4.0 より前で、文書の付け替え処理が権限を確認しない欠陥（**CVE-2026-102940**）が NVD に登録されました。登録は 2026-11-05 で、評価はまだ確定していない状態（Received）です。

## 何が起きるか
- 対象は `controllers/C_Document.class.php` の書き込み系の処理（`move_action_process()` など）です。文書を別の患者やカテゴリーへ付け替える `Document::change_patient()` を呼ぶ前に、元の文書・現在の患者とカテゴリー・移動先の患者とカテゴリーへのアクセス権を確認していません。
- ログインできる低い権限の利用者が、任意の文書を、自分がアクセスできる患者またはカテゴリーに付け替えられます。付け替えたあとは、通常は保護されている読み出しの経路で、その文書を取得できます。
- 付け替えは、あとで行われる一覧表示のチェックより前に実行されます。最終的な応答が HTTP 403 でも、不正な書き込みが止まったとは限りません。
- 弱点の種別は CWE-639（利用者が指定した鍵による認可の回避）です。
- CISA の SSVC 評価（NVD に掲載）では、悪用は「PoC あり」、自動化は「なし」、技術的な影響は「全面的」とされています。

## 影響を受ける版
| 対象 | 影響する版 | 修正版 |
|---|---|---|
| OpenEMR | 8.4.0 より前 | 8.4.0 |

## 評価
| 評価元 | 版 | 点数 | ベクター |
|---|---|---|---|
| NVD（Secondary: GitHub） | CVSS v3.1 | 9.6（Critical） | AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N |

- ベクターは低い権限（PR:L）が前提です。認証不要ではないため、severity は **high** を案とします（点数は 9.6 ですが、基準では PR:L を critical にしません）。確定はオーナーの判断待ちです。
- 患者の診療情報を扱うシステムのため、診療所の内部の利用者による文書の取り違えや持ち出しが起きた場合の影響は小さくありません。
- FIRST の EPSS は、取得時点（2026-11-06）でまだ値がありません。CISA の KEV には、手元の状態ファイル上で掲載がありません。

## 対策として考えられること
1. OpenEMR を 8.4.0 以降へ更新します。
2. すぐ更新できない場合は、低権限のアカウントを必要な人に絞り、文書管理の機能を使えるロールを見直します。
3. 文書の付け替えの記録（アクセスログ・監査ログ）に、見覚えのない患者間の移動がないかを調べます。
4. 外部公開している OpenEMR は、接続元を制限します。

## 未確認の点
- 実際の悪用の有無（NVD の記述に悪用の記載はなく、SSVC の「PoC あり」の中身は確認していません）。
- 参照先の GitHub 勧告（GHSA-92rh-g949-4mvv）・修正のコミット・PR #13353 の中身（本稿では開いていません）。参照先にはリリースタグ v8_3_0 もあり、修正版の記述との関係は確かめていません。
- 影響する版の下限。
- NVD の最終評価。


## 出典
- [NVD CVE-2026-102940](https://nvd.nist.gov/vuln/detail/CVE-2026-102940) — NIST NVD
- [OpenEMR セキュリティ勧告 GHSA-92rh-g949-4mvv（NVD の参照先。未取得）](https://github.com/openemr/openemr/security/advisories/GHSA-92rh-g949-4mvv) — OpenEMR
- [OpenEMR 修正 PR #13353（NVD の参照先。未取得）](https://github.com/openemr/openemr/pull/13353) — OpenEMR
- [FIRST EPSS API](https://api.first.org/data/v1/epss?cve=CVE-2026-102940) — FIRST

---
出典: World Security（株式会社NTP） https://n-t-p.io/worldsecurity/articles/openemr-cve-2026-102940-document-move-missing-authz-patient-reassign-read