First published: Mon Mar 23 2020(Updated: )
An exploitable stack buffer overflow vulnerability vulnerability exists in the iocheckd service "I/O-Check" functionality of WAGO PFC 200. An attacker can send a specially crafted packet to trigger the parsing of this cache file.At 0x1eb9c the extracted interface element name from the xml file is used as an argument to /etc/config-tools/config_interfaces interface=<contents of interface element> using sprintf(). The destination buffer sp+0x40 is overflowed with the call to sprintf() for any interface values that are greater than 512-len("/etc/config-tools/config_interfaces interface=") in length. Later, at 0x1ea08 strcpy() is used to copy the contents of the stack buffer that was overflowed sp+0x40 into sp+0x440. The buffer sp+0x440 is immediately adjacent to sp+0x40 on the stack. Therefore, there is no NULL termination on the buffer sp+0x40 since it overflowed into sp+0x440. The strcpy() will result in invalid memory access. An interface value of length 0x3c4 will cause the service to crash.
Credit: talos-cna@cisco.com
Affected Software | Affected Version | How to fix |
---|---|---|
WAGO PFC200 | =03.02.02\(14\) | |
WAGO PFC 200 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2019-5186 is a stack buffer overflow vulnerability in the iocheckd service I/O-Check functionality of WAGO PFC 200.
CVE-2019-5186 has a severity level of high (7 out of 10).
WAGO PFC200 Firmware version 03.02.02(14) is affected by CVE-2019-5186.
An attacker can exploit CVE-2019-5186 by sending a specially crafted packet to trigger the parsing of a cache file, leading to a stack buffer overflow.
No, WAGO PFC200 itself is not vulnerable to CVE-2019-5186.