CVE-2026-71268
CriticalCVSS 9.9Exploitation Probability (EPSS)
Low risk44th percentile - higher than 44% of all known CVEs
Summary
OpenPLC Runtime v3's compile_program function parses directives from uploaded Structured Text (.st) files and writes referenced content without validating that the file path stays within the ./core directory. A path-validation function exists but is never invoked from compile_program.
Risk Assessment
An attacker can upload a malicious .st file that causes file writes outside the allowed directory, potentially leading to overwriting critical system files or code execution.
Recommendation
Integrate path validation into compile_program to ensure files are only written within the allowed directory. Also update to the latest OpenPLC version.
Original NVD description (English source)
OpenPLC Runtime v3's compile_program function (webserver/openplc.py) parses directives from uploaded Structured Text (.st) program files and writes the referenced content to with no validation that file_path stays within the ./core directory. A path-validation function, validate_file_path, exists elsewhere in the codebase (webserver/credentials.py) but is never invoked from compile_program, leaving the sink unprotected.

