Vulnerability Note VU#675052

Medicomp MEDCIN Engine contains multiple vulnerabilities

Original Release date: 20 Oct 2015 | Last revised: 20 Oct 2015

Overview

Medicomp's MEDCIN Engine provide electronic health records (EHR) tools and information to medical professionals. MEDCIN Engine versions before version 2.22.20153.226 are vulnerable to several buffer overflows.

Description

Medicomp MEDCIN Engine prior to version 2.22.20153.226 is vulnerable to several buffer overflows and an out-of-bounds write.

CWE-121: Stack-based Buffer Overflow - CVE-2015-2898, CVE-2015-2901

An unauthenticated remote attacker may send a specially crafted packet over port 8190 and cause a stack buffer overflow.

The API functions SetGroupSequenceEx's na_setgroupsequenceex, FormatDate's julptostr, and UserFindingCodes's addtocl are vulnerable, and are identified by CVE-2015-2898. These functions do not properly check input sizes, allowing buffer overflows. This vulnerability affects version 2.22.20142.166 and previous versions.

The API functions GetProperty's info_getproperty and UdfCodeList are vulnerable, and are identified by CVE-2015-2901. These functions do not properly check input sizes, allowing buffer overflows. This vulnerability only affects version 2.22.20142.166.

CWE-122: Heap-based Buffer Overflow - CVE-2015-2899

An unauthenticated remote attacker may send a specially crafted packet over port 8190 and cause a heap buffer overflow. The QualifierList API function retrieve_qualifier_list may be overflowed if a list name is too long. This vulnerability affects version 2.22.20142.166 and previous versions.

CWE-787: Out-of-bounds Write - CVE-2015-2900

An unauthenticated remote attacker may send a specially crafted packet over port 8190 and may overwrite data in memory. The AddUserFinding API function add_userfinding2 may be used to overwrite memory. This vulnerability affects version 2.22.20142.166 and previous versions.

CWE-197: Numeric Truncation Error
CWE-680: Integer Overflow to Buffer Overflow - CVE-2015-6006

An unauthenticated remote attacker may send a specially crafted packet over port 8190 that may allow writing to out of bounds memory due to improper integer truncation. AddUserFinding accepts a user-controlled string and uses the length of the string to calculate where in the buffer to place data. If this string is above a length of 0x7fff, it will be truncated to a negative value and allow an attacker to write to memory outside of the bounds of the buffer. An attacker may be able to gain control of the flow of the program. This vulnerability was introduced in version 2.22.20153.223.

Impact

An unauthenticated remote attacker sending a specially crafted packet may be able to overwrite data in memory, cause the software to leak information to the attacker, and/or cause a denial of service. A remote attacker may also be able to execute code.

Solution

Apply an update

Medicomp has released version 2.22.20153.226 which addresses these issues. Affected users are encouraged to update as soon as possible.

Vendor Information (Learn More)

VendorStatusDate NotifiedDate Updated
MedicompAffected27 Jul 201506 Aug 2015
If you are a vendor and your product is affected, let us know.

CVSS Metrics (Learn More)

Group Score Vector
Base 6.8 AV:N/AC:M/Au:N/C:P/I:P/A:P
Temporal 5.8 E:POC/RL:U/RC:UR
Environmental 5.0 CDP:ND/TD:M/CR:H/IR:H/AR:ND

References

Credit

Thanks to Ryan Wincey for reporting this vulnerability.

This document was written by Garret Wassermann.

Other Information

Feedback

If you have feedback, comments, or additional information about this vulnerability, please send us email.