CVE-2026-31156

OpenPLC v3 Path Injection Allows Arbitrary File Read via Command-Line Parameters

Published May 13, 2026 CVSS 3.1 · 6.5 Medium EPSS < 1% KEV · Not listed
Description
A path injection vulnerability exists in OpenPLC v3 (2c82b0e79c53f8c1f1458eee15fec173400d6e1a) as the binary program compiled from glue_generator.cpp does not perform any validation on the file path parameters passed via the command line. The user-controlled input parameters are directly passed to the underlying file operation functions (fopen/ifstream/ofstream) for file reading and writing. An attacker can exploit this vulnerability by constructing a malicious path to read arbitrary readable files.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
First Time appeared Openplcproject
Openplcproject openplc V3
Openplcproject openplc V3 Firmware
CPEs cpe:2.3:h:openplcproject:openplc_v3:-:*:*:*:*:*:*:*
cpe:2.3:o:openplcproject:openplc_v3_firmware:2024-03-09:*:*:*:*:*:*:*
Vendors & Products Openplcproject
Openplcproject openplc V3
Openplcproject openplc V3 Firmware
Type Values Removed Values Added
First Time appeared Openplc
Openplc openplc
Vendors & Products Openplc
Openplc openplc
Type Values Removed Values Added
Title OpenPLC v3 Path Injection Allows Arbitrary File Read via Command-Line Parameters
Type Values Removed Values Added
Title OpenPLC v3 Path Injection Leading to Arbitrary File Read via Command-Line Parameters
Weaknesses CWE-20
Type Values Removed Values Added
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}

ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Title OpenPLC v3 Path Injection Leading to Arbitrary File Read via Command-Line Parameters
Weaknesses CWE-20
CWE-22
Type Values Removed Values Added
Description A path injection vulnerability exists in OpenPLC v3 (2c82b0e79c53f8c1f1458eee15fec173400d6e1a) as the binary program compiled from glue_generator.cpp does not perform any validation on the file path parameters passed via the command line. The user-controlled input parameters are directly passed to the underlying file operation functions (fopen/ifstream/ofstream) for file reading and writing. An attacker can exploit this vulnerability by constructing a malicious path to read arbitrary readable files.
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
mitre
Published
Updated
Jul 5, 2026, 1:35 AM
Reserved
Mar 9, 2026, 12:00 AM
Status
Modified
Published
May 13, 2026, 4:16 PM
Modified
Oct 19, 2026, 10:10 PM