Summary
The CODESYS Control V3 runtime system does not restrict the memory accesses of the PLC application code to the PLC application data and does not sufficiently check the integrity of the application code by default. This could be exploited by authenticated PLC programmers.
Details
Impact
The CODESYS Control runtime system enables embedded or PC-based devices to be a programmable industrial controller. Control programs (PLC application code) can access local or remote IOs, communication interfaces such as serial or sockets, or the file system.
Mitigation
To exploit these vulnerabilities, a successful login to the affected product is required. The online user management therefore protects from exploiting these security vulnerabilities.
CODESYS GmbH strongly recommends using the online user management. This not only prevents from downloading malicious code or boot application files, but also suppresses starting, stopping, debugging or other actions on a known working application that could potentially disrupt a machine or system. As of version 3.5.17.0, the online user management is enforced by default.
In addition, the CODESYS Development System and the CODESYS Control runtime system support optional signing and encryption of the application code loaded on the controller. This feature also prevents the loading and execution of untrusted or modified boot files. If the application code security policy is set to "Enforced Signing", a modified or untrusted application will be detected due to a missing signature and will not be loaded and executed.
Vulnerabilities 1
-
High 8.8
CODESYS: Improper memory restrictions fro CODESYS Control
In CODESYS Control in multiple versions a improper restriction of operations within the bounds of a memory buffer allow an remote attacker with user privileges to gain full access of the device.
Revision history
-
#1
Initial revision.
References
-
VDE-2023-025: CODESYS: Control runtime system memory and integrity check vulnerabilities - HTML
https://certvde.com/en/advisories/VDE-2023-025/
-
Vendor PSIRT
https://www.codesys.com
-
CERT@VDE Security Advisories for CODESYS GmbH
https://certvde.com/en/advisories/vendor/codesys/