Buffer overflow in Wago Pfc200
CVE-2019-5185
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/config_interfaces 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/config_interfaces 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.
Vulnerability class: Buffer Overflow
EPSS: 0.008 (54.3th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 7.0 (High). Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H.
Affected products
- Wago Pfc200
- Wago Pfc200_firmware — versions 03.02.02\(14\)
- N/a Wago — versions WAGO PFC200 Firmware version 03.02.02(14)
Weakness classification (CWE)
Public proof-of-concept exploits
References
- talos-cna@cisco.com (Exploit, Third Party Advisory, x_refsource_MISC)
Frequently asked questions
- What is CVE-2019-5185?
- CVE-2019-5185 is a high-severity vulnerability in Wago Pfc200, classified under Out-of-bounds Write. CVSS score: 7.0/10. Published 2020-03-23.
- How severe is CVE-2019-5185?
- High severity. CVSS v3 base score is 7.0 out of 10.
- Is CVE-2019-5185 known to be exploited?
- 1 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.