← Back to CVE Explorer

CVE-2026-102940

Full vulnerability record from the local CVENow database.

Description

OpenEMR is a free and open source electronic health records and medical practice management application. Prior to 8.4.0, controllers/C_Document.class.php write actions, including move_action_process(), do not verify the caller's access to the source document, current patient and category, or destination patient and category before Document::change_patient() performs the mutation. A low-privilege authenticated user can reassign an arbitrary document to a patient or category the user can access and then retrieve it through the normally protected read path. The reassignment occurs before a later list rendering check, so a final HTTP 403 response does not mean the unauthorized write was blocked. This issue is fixed in version 8.4.0.

Severity
CRITICAL
CVSS score
9.6 (v3.1)
Vulnerability status
Received
Source identifier
Published
2026-11-05 20:17:37.543000
Last modified
2026-11-05 21:18:34.653000
View original CVE JSON
{
  "id": "CVE-2026-102940",
  "sourceIdentifier": "[email protected]",
  "published": "2026-11-05T20:17:37.543",
  "lastModified": "2026-11-05T21:18:34.653",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "OpenEMR is a free and open source electronic health records and medical practice management application. Prior to 8.4.0, controllers/C_Document.class.php write actions, including move_action_process(), do not verify the caller's access to the source document, current patient and category, or destination patient and category before Document::change_patient() performs the mutation. A low-privilege authenticated user can reassign an arbitrary document to a patient or category the user can access and then retrieve it through the normally protected read path. The reassignment occurs before a later list rendering check, so a final HTTP 403 response does not mean the unauthorized write was blocked. This issue is fixed in version 8.4.0."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "openemr",
          "product": "openemr",
          "versions": [
            {
              "version": "< 8.4.0",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N",
          "baseScore": 9.6,
          "baseSeverity": "CRITICAL",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "LOW",
          "userInteraction": "NONE",
          "scope": "CHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "NONE"
        },
        "exploitabilityScore": 3.1,
        "impactScore": 5.8
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-11-05T21:02:14.936697Z",
          "id": "CVE-2026-102940",
          "options": [
            {
              "exploitation": "poc"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-639"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/openemr/openemr/commit/312b5d042f7fa49cc78ebed041155fba339a991c",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openemr/openemr/pull/13353",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openemr/openemr/releases/tag/v8_3_0",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openemr/openemr/security/advisories/GHSA-92rh-g949-4mvv",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openemr/openemr/security/advisories/GHSA-92rh-g949-4mvv",
      "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
    }
  ]
}