SB2018081317 - Multiple vulnerabilities in OpenEMR OpenEMR
Published: August 13, 2018 Updated: July 17, 2020
Breakdown by Severity
- Low
- Medium
- High
- Critical
Description
This security bulletin contains information about 12 secuirty vulnerabilities.
1) Improper Authentication (CVE-ID: CVE-2018-15152)
The vulnerability allows a remote non-authenticated attacker to read and manipulate data.
Authentication bypass vulnerability in portal/account/register.php in versions of OpenEMR before 5.0.1.4 allows a remote attacker to access (1) portal/add_edit_event_user.php, (2) portal/find_appt_popup_user.php, (3) portal/get_allergies.php, (4) portal/get_amendments.php, (5) portal/get_lab_results.php, (6) portal/get_medications.php, (7) portal/get_patient_documents.php, (8) portal/get_problems.php, (9) portal/get_profile.php, (10) portal/portal_payment.php, (11) portal/messaging/messages.php, (12) portal/messaging/secure_chat.php, (13) portal/report/pat_ledger.php, (14) portal/report/portal_custom_report.php, or (15) portal/report/portal_patient_report.php without authenticating as a patient.
2) OS Command Injection (CVE-ID: CVE-2018-15153)
The vulnerability allows a remote authenticated user to execute arbitrary code.
OS command injection occurring in versions of OpenEMR before 5.0.1.4 allows a remote authenticated attacker to execute arbitrary commands by making a crafted request to interface/main/daemon_frame.php after modifying the "hylafax_server" global variable in interface/super/edit_globals.php.
3) OS Command Injection (CVE-ID: CVE-2018-15154)
The vulnerability allows a remote authenticated user to execute arbitrary code.
OS command injection occurring in versions of OpenEMR before 5.0.1.4 allows a remote authenticated attacker to execute arbitrary commands by making a crafted request to interface/billing/sl_eob_search.php after modifying the "print_command" global variable in interface/super/edit_globals.php.
4) OS Command Injection (CVE-ID: CVE-2018-15155)
The vulnerability allows a remote authenticated user to execute arbitrary code.
OS command injection occurring in versions of OpenEMR before 5.0.1.4 allows a remote authenticated attacker to execute arbitrary commands by making a crafted request to interface/fax/fax_dispatch.php after modifying the "hylafax_enscript" global variable in interface/super/edit_globals.php.
5) OS Command Injection (CVE-ID: CVE-2018-15156)
The vulnerability allows a remote authenticated user to execute arbitrary code.
OS command injection occurring in versions of OpenEMR before 5.0.1.4 allows a remote authenticated attacker to execute arbitrary commands by making a crafted request to interface/fax/faxq.php after modifying the "hylafax_server" global variable in interface/super/edit_globals.php.
6) Arbitrary file upload (CVE-ID: CVE-2018-15139)
The vulnerability allows a remote authenticated user to execute arbitrary code.
Unrestricted file upload in interface/super/manage_site_files.php in versions of OpenEMR before 5.0.1.4 allows a remote authenticated attacker to execute arbitrary PHP code by uploading a file with a PHP extension via the images upload form and accessing it in the images directory.
7) Path traversal (CVE-ID: CVE-2018-15140)
The vulnerability allows a remote authenticated user to gain access to sensitive information.
Directory traversal in portal/import_template.php in versions of OpenEMR before 5.0.1.4 allows a remote attacker authenticated in the patient portal to read arbitrary files via the "docid" parameter when the mode is set to get.
8) Path traversal (CVE-ID: CVE-2018-15141)
The vulnerability allows a remote authenticated user to manipulate data.
Directory traversal in portal/import_template.php in versions of OpenEMR before 5.0.1.4 allows a remote attacker authenticated in the patient portal to delete arbitrary files via the "docid" parameter when the mode is set to delete.
9) Path traversal (CVE-ID: CVE-2018-15142)
The vulnerability allows a remote authenticated user to execute arbitrary code.
Directory traversal in portal/import_template.php in versions of OpenEMR before 5.0.1.4 allows a remote attacker authenticated in the patient portal to execute arbitrary PHP code by writing a file with a PHP extension via the "docid" and "content" parameters and accessing it in the traversed directory.
10) SQL injection (CVE-ID: CVE-2018-15143)
The vulnerability allows a remote attacker to execute arbitrary SQL queries in database.
The vulnerability exists due to insufficient sanitization of user-supplied data passed via the (1) catid or (2) providerid parameter. A remote attacker can send a specially crafted request to the affected application and execute arbitrary SQL commands within the application database.
Successful exploitation of this vulnerability may allow a remote attacker to read, delete, modify data in database and gain complete control over the affected application.
11) SQL injection (CVE-ID: CVE-2018-15144)
The vulnerability allows a remote attacker to execute arbitrary SQL queries in database.
The vulnerability exists due to insufficient sanitization of user-supplied data passed via the search_term parameter. A remote attacker can send a specially crafted request to the affected application and execute arbitrary SQL commands within the application database.
Successful exploitation of this vulnerability may allow a remote attacker to read, delete, modify data in database and gain complete control over the affected application.
12) SQL injection (CVE-ID: CVE-2018-15145)
The vulnerability allows a remote attacker to execute arbitrary SQL queries in database.
The vulnerability exists due to insufficient sanitization of user-supplied data passed via the (1) eid, (2) userid, or (3) pid parameter. A remote attacker can send a specially crafted request to the affected application and execute arbitrary SQL commands within the application database.
Successful exploitation of this vulnerability may allow a remote attacker to read, delete, modify data in database and gain complete control over the affected application.
Remediation
Install update from vendor's website.
References
- https://github.com/openemr/openemr/pull/1758/files
- https://insecurity.sh/reports/openemr.pdf
- https://www.databreaches.net/openemr-patches-serious-vulnerabilities-uncovered-by-project-insecurity/
- https://www.open-emr.org/wiki/index.php/OpenEMR_Patches
- https://github.com/openemr/openemr/pull/1757
- https://www.exploit-db.com/exploits/45161/
- https://github.com/openemr/openemr/pull/1757/commits/c2808a0493243f618bbbb3459af23c7da3dc5485
- https://github.com/openemr/openemr/pull/1765/files
- https://www.exploit-db.com/exploits/45202/
- https://github.com/openemr/openemr/pull/1757/files