CVE-2019-5185: Buffer Overflow
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 0x1ea28 the extracted state value from the xml file is used as an argument to /etc/config-tools/configinterfaces interface=X1 state=<contents of state node> using sprintf(). The destination buffer sp+0x40 is overflowed with the call to sprintf() for any state values that are greater than 512-len("/etc/config-tools/configinterfaces interface=X1 state=") 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 state value of length 0x3c9 will cause the service to crash.
Affected Software
Event History
Frequently Asked Questions
What is CVE-2019-5185?
CVE-2019-5185 is a stack buffer overflow vulnerability in the iocheckd service "I/O-Check" functionality of WAGO PFC 200.
How does CVE-2019-5185 affect WAGO PFC 200?
CVE-2019-5185 allows an attacker to trigger a stack buffer overflow by sending a specially crafted packet to the iocheckd service.
What is the severity of CVE-2019-5185?
CVE-2019-5185 has a severity rating of high.
How can I fix CVE-2019-5185?
To fix CVE-2019-5185, it is recommended to update the WAGO PFC 200 firmware to version 03.02.02(14) or later.
What are the references for CVE-2019-5185?
For more information about CVE-2019-5185, you can refer to the following link: [CVE-2019-5185](https://talosintelligence.com/vulnerability_reports/TALOS-2019-0966).