{"id":"CVE-2026-104135","kind":"vulnerability","aliases":["CVE-2026-104135"],"related":[],"title":"OpenEMR: any logged-in user can list patient names and birth dates","description":"OpenEMR is a free and open source electronic health records and medical practice management application. Prior to 8.3.0, library/ajax/payment_ajax.php validates a CSRF token but performs no AclMain authorization check before executing a wildcard search of patient_data. Any authenticated user, including a non-clinical role, can enumerate patient identifiers, full names, and dates of birth through the set_patient branch. This issue is fixed in version 8.3.0.","summary":"OpenEMR, an electronic health records application, has a missing authorization check in its payment AJAX endpoint before version 8.3.0. An authenticated user, including a non-clinical role, can enumerate patient identifiers, full names and dates of birth.","severity":"medium","cvss":6.5,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["healthcare","openemr","php","runtime","self-hosted"],"not_affected_if":["version-8.3.0-or-later"],"how_to_check":"- Check the installed OpenEMR version and confirm whether it is below `8.3.0`.\n- Look at `library/ajax/payment_ajax.php` for an AclMain authorization check before the patient_data search.","fix":"- Upgrade OpenEMR to `8.3.0` or later.","status":"open","published_at":"2026-11-05T20:17:38+00:00","first_seen_at":"2026-11-05T20:40:43+00:00","triaged_at":"2026-11-05T20:43:21+00:00","updated_at":"2026-11-05T20:43:21+00:00","category":"runtime","confidence":0.6,"triage":{"at":"2026-11-05T20:43:21Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade OpenEMR to `8.3.0` or later.","reach":"network","title":"OpenEMR: any logged-in user can list patient names and birth dates","impact":"medium","summary":"OpenEMR, an electronic health records application, has a missing authorization check in its payment AJAX endpoint before version 8.3.0. An authenticated user, including a non-clinical role, can enumerate patient identifiers, full names and dates of birth.","audience":"businesses","category":"runtime","nicknames":[],"who_cares":["openemr","healthcare","self-hosted","php"],"confidence":0.6,"fix_status":"available","needs_auth":"yes","worst_case":"Patient names and birth dates readable by any staff account","analyst_note":"Confirm affected version range and whether the vendor advisory names other endpoints; the linked advisory was not provided in the text.","how_to_check":"- Check the installed OpenEMR version and confirm whether it is below `8.3.0`.\n- Look at `library/ajax/payment_ajax.php` for an AclMain authorization check before the patient_data search.","plain_action":"","needs_analyst":true,"not_affected_if":["version-8.3.0-or-later"],"who_is_affected":"Any practice or hospital running OpenEMR before 8.3.0 where staff accounts exist, including non-clinical roles such as front desk or billing. Exposure is through the logged-in application, so the risk is internal account misuse rather than anonymous internet access. Installations already on 8.3.0 or later are not affected.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"unknown"},"cost_usd":0.000714,"input_tokens":4302,"output_tokens":568,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-104135':16A,19A '-2026':15A,18A '8.3.0':45B,82C,132C 'aclmain':91C 'ajax':41B 'applic':32B,79C 'authent':47B,103C 'author':36B,92C 'birth':12A,64B,120C 'branch':125C 'check':37B,93C 'clinic':53B,109C 'csrf':86C 'cve':14A,17A 'data':101C 'date':13A,62B,118C 'electron':29B,72C 'endpoint':42B 'enumer':56B,112C 'execut':95C 'fix':129C 'free':68C 'full':59B,115C 'health':30B,73C 'healthcar':20B 'host':26B 'identifi':58B,114C 'includ':49B,105C 'issu':127C 'library/ajax/payment_ajax.php':83C 'list':8A 'log':4A 'logged-in':3A 'manag':78C 'medic':76C 'miss':35B 'name':10A,60B,116C 'non':52B,108C 'non-clin':51B,107C 'open':70C 'openemr':1A,21B,27B,65C 'patient':9A,57B,100C,113C,124C 'payment':40B 'perform':89C 'php':22B 'practic':77C 'prior':80C 'record':31B,74C 'role':54B,110C 'runtim':23B 'search':98C 'self':25B 'self-host':24B 'set':123C 'sourc':71C 'token':87C 'user':6A,48B,104C 'valid':84C 'version':44B,131C 'wildcard':97C","nicknames":[],"mitigations":[],"who_affected":"Any practice or hospital running OpenEMR before 8.3.0 where staff accounts exist, including non-clinical roles such as front desk or billing. Exposure is through the logged-in application, so the risk is internal account misuse rather than anonymous internet access. Installations already on 8.3.0 or later are not affected.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["healthcare","medium","openemr","php","runtime","selfhosted"],"campaign_type":null,"first_public_at":"2026-08-18T08:51:47+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-104135","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-104135","severity":null,"published_at":"2026-11-05T20:17:38+00:00","modified_at":"2026-11-05T20:17:38+00:00","first_seen_at":"2026-11-05T20:40:43+00:00","fetched_at":"2026-11-05T20:40:43+00:00","note":null}],"documents":[{"id":79813,"url":"https://github.com/openemr/openemr/commit/7973cab3fe3f2fd2374ed71c02605e3c93491c36","title":"Patch: github.com","kind":"other","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Patch: github.com"},{"id":79793,"url":"https://github.com/openemr/openemr/releases/tag/v8_3_0","title":"Release notes: github.com","kind":"release","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Release notes: github.com"},{"id":79821,"url":"https://github.com/openemr/openemr/security/advisories/GHSA-4269-grc6-qr62","title":"Vendor advisory: github.com","kind":"vendor","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-08-18T08:51:47+00:00","relation":"advisory","confidence":null,"note":"Vendor advisory: github.com"}],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}