Description
OpenPLC Runtime v3 contains an input validation flaw in the /upload-program-action endpoint: the epoch_time field supplied during program uploads is not validated and can be crafted to induce corruption of the programs database. After a successful malformed upload the runtime continues to operate until a restart; on restart the runtime can fail to start because of corrupted database entries, resulting in persistent denial of service requiring complete rebase of the product to recover. This vulnerability was remediated by commit 095ee09623dd229b64ad3a1db38a901a3772f6fc.
Problem types
CWE-664 Improper Control of a Resource Through Its Lifetime
CWE-20 Improper Input Validation
Product status
3.0 before commit 095ee09623dd229b64ad3a1db38a901a3772f6fc
Credits
Eyodav (Mike G.A)
References
autonomylogic.com/
openplc.discussion.community/...ing-openplc-runtime-13722844
github.com/...mmits/095ee09623dd229b64ad3a1db38a901a3772f6fc
www.vulncheck.com/...runtime-v3-persistent-denial-of-service