SB2017110217 - Multiple vulnerabilities in Cesanta Mongoose



SB2017110217 - Multiple vulnerabilities in Cesanta Mongoose

Published: November 2, 2017

Security Bulletin ID SB2017110217
CSH Severity
High
Patch available
YES
Number of vulnerabilities 8
Exploitation vector Remote access
Highest impact Code execution

Breakdown by Severity

High 63% Low 38%
  • Low
  • Medium
  • High
  • Critical

Description

This security bulletin contains information about 8 vulnerabilities.


1) Use-after-free error (CVE-ID: CVE-2017-2891)

CWE-ID: CWE-416 - Use After Free

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber


The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The weakness exists due to use-after-free error in the HTTP server implementation. A remote attacker can send an ordinary HTTP POST request with a CGI target, cause a reuse of previously freed pointer, trigger memory corruption and execute arbitrary code with privileges of the current user.

Successful exploitation of the vulnerability may result in system compromise.

2) Improper input validation (CVE-ID: CVE-2017-2892)

CWE-ID: CWE-20 - Improper input validation

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber


The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The weakness exists in the MQTT packet parsing functionality due to improper input validation. A remote attacker can send a specially crafted MQTT packet over network to cause an arbitrary out-of-bounds memory read and write potentially resulting in information disclosure, denial of service and remote code execution.

Successful exploitation of the vulnerability may result in system compromise.

3) Null pointer dereference (CVE-ID: CVE-2017-2893)

CWE-ID: CWE-476 - NULL Pointer Dereference

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U/U:Clear


The vulnerability allows a remote attacker to cause DoS condition on the target system.

The weakness exists in the MQTT packet parsing functionality due to improper input validation. A remote attacker can send a specially crafted MQTT SUBSCRIBE packet, trigger null pointer dereference and cause the server to crash.

Successful exploitation of the vulnerability results in denial of service.

4) Stack-based buffer overflow (CVE-ID: CVE-2017-2894)

CWE-ID: CWE-121 - Stack-based buffer overflow

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber


The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The weakness exists due to stack buffer overflow vulnerability exists in the MQTT packet parsing functionality. A remote attacker can send a specially crafted MQTT SUBSCRIBE packet, trigger memory corruption and execute arbitrary code with privileges of the current user.

Successful exploitation of the vulnerability may result in system compromise.

5) Out-of-bounds read (CVE-ID: CVE-2017-2895)

CWE-ID: CWE-125 - Out-of-bounds read

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N/E:U/U:Clear


The vulnerability allows a remote attacker to obtain potentially sensitive information or cause DoS condition on the target system.

The weakness exists in the MQTT packet parsing functionality due to out-of-bounds memory read. A remote attacker can send a specially crafted MQTT packet over network to cause an arbitrary out-of-bounds memory read and write potentially resulting in information disclosure and denial of service.

6) Infinite loop (CVE-ID: CVE-2017-2909)

CWE-ID: CWE-835 - Loop with Unreachable Exit Condition ('Infinite Loop')

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U/U:Clear


The vulnerability allows a remote attacker to cause DoS condition on the target system.

The weakness exists in the DNS server functionality due to improper input validation. A remote attacker can send a specially crafted DNS request, trigger an infinite loop programming error, cause an infinite loop resulting in high CPU usage and the server crash.

Successful exploitation of the vulnerability results in denial of service.

7) Memory corruption (CVE-ID: CVE-2017-2921)

CWE-ID: CWE-119 - Memory corruption

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber


The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The weakness exists in the Websocket protocol implementation due to boundary error. A remote attacker can send a specially crafted websocket packet over network to cause an an integer overflow leading to heap buffer overflow resulting in denial of service and potential remote code execution.

Successful exploitation of the vulnerability may result in system compromise.

8) Use-after-free error (CVE-ID: CVE-2017-2922)

CWE-ID: CWE-416 - Use After Free

CVSSv4: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber


The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The weakness exists in the Websocket protocol implementation due to use-after-free error. A remote attacker can send a specially crafted websocket packet, cause a buffer to be allocated while leaving stale pointers, trigger memory corruption and execute arbitrary code with privileges of the current user.

Successful exploitation of the vulnerability may result in system compromise.

Remediation

Install update from vendor's website.