{"vuid":"VU#675052","idnumber":"675052","name":"Medicomp MEDCIN Engine contains multiple vulnerabilities","keywords":["medicomp","buffer overflow","truncation","CWE-121","CWE-122","CWE-787"],"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.","clean_desc":"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\nCWE-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.","resolution":"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.","workarounds":"","sysaffected":"","thanks":"Thanks to Ryan Wincey for reporting this vulnerability.","author":"This document was written by Garret Wassermann.","public":["http://www.securifera.com/advisories/CVE-2015-2898-2901","http://cwe.mitre.org/data/definitions/121.html","http://cwe.mitre.org/data/definitions/122.html","http://cwe.mitre.org/data/definitions/197.html","http://cwe.mitre.org/data/definitions/680.html","http://cwe.mitre.org/data/definitions/787.html"],"cveids":["CVE-2015-2898","CVE-2015-2899","CVE-2015-2900","CVE-2015-2901","CVE-2015-6006"],"certadvisory":"","uscerttechnicalalert":null,"datecreated":"2015-07-08T15:47:23Z","publicdate":"2015-10-20T00:00:00Z","datefirstpublished":"2015-10-20T15:31:57Z","dateupdated":"2015-10-20T15:33:11Z","revision":81,"vrda_d1_directreport":"1","vrda_d1_population":"3","vrda_d1_impact":"3","cam_widelyknown":"0","cam_exploitation":"0","cam_internetinfrastructure":"0","cam_population":"0","cam_impact":"0","cam_easeofexploitation":"0","cam_attackeraccessrequired":"0","cam_scorecurrent":"0","cam_scorecurrentwidelyknown":"0","cam_scorecurrentwidelyknownexploited":"0","ipprotocol":"","cvss_accessvector":"N","cvss_accesscomplexity":"M","cvss_authentication":null,"cvss_confidentialityimpact":"P","cvss_integrityimpact":"P","cvss_availabilityimpact":"P","cvss_exploitablity":null,"cvss_remediationlevel":"U","cvss_reportconfidence":"UR","cvss_collateraldamagepotential":"ND","cvss_targetdistribution":"M","cvss_securityrequirementscr":"H","cvss_securityrequirementsir":"H","cvss_securityrequirementsar":"ND","cvss_basescore":"6.8","cvss_basevector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","cvss_temporalscore":"5.8","cvss_environmentalscore":"5.00210942343962","cvss_environmentalvector":"CDP:ND/TD:M/CR:H/IR:H/AR:ND","metric":0.0,"vulnote":null}