OpenEMR Vulnerabilities Endanger Patient Information

Description

FortiGuard Labs is aware of a report that OpenEMR (Electronic Medical Records) released a patch for three vulnerabilities on November 30, 2022, two of which can be chained for remote code execution. Since OpenEMR is used to digitally manage health records of patient and supports electronic billing, successful exploitation can result in a confidential data leak.


Why is this Significant?

This is significant because approximately 100,000 healthcare institutions reportedly use OpenEMR to manage 200 million patients. Failing to update OpenEMR to the latest version can lead to significant data breach.


What is OpenEMR?

OpenEMR is a popular open source software that does not only digitally manage health records of patients but also support other features such as electronic billing, patient scheduling, drug and product inventory, and prescriptions. OpenEMR is designed to run on wide range of platforms such as Windows, MacOS and Linux, and supports more than 30 languages.


What are the Vulnerabilities?

According to SonarSource, they reported three vulnerabilities to OpenEMR:

  1. Unauthenticated file read vulnerability that allows an unauthenticated attacker to use a fraudulent MySQL server to read files from an OpenEMR instance.
  2. Authenticated local file inclusion vulnerability that allows an attacker to access files in directories which access is restricted by a .htaccess file.
  3. Authenticated reflected XSS vulnerability that allows an attacker to execute unauthenticated, arbitrary code in the context of the victim's browser.

The second and third vulnerability can be chained to achieve remote code execution, which can lead to information breach and potential system takeover.

Note that CVE number is not available for all vulnerabilities.


Has the Vendor Released a Patch for the Vulnerabilities?

Yes, OpenEMR released a patch in version 7.0.0 on November 30th, 2022.


What is the Status of Protection?

FortiGuard Labs have the following IPS signatures in place for the OpenEMR vulnerabilities:

  • OpenEMR.eye_mag_functions.php.Reflected.XSS (default action is set to "pass")
  • OpenEMR.new.php.File.Inclusion (default action is set to "pass")