CVE-2019-9010
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedAn issue was discovered in 3S-Smart CODESYS V3 products. The CODESYS Gateway does not correctly verify the ownership of a communication channel. All variants of the following CODESYS V3 products in all versions prior to v3.5.14.20 that contain the CmpGateway component are affected, regardless of the CPU type or operating system: CODESYS Control for BeagleBone, CODESYS Control for emPC-A/iMX6, CODESYS Control for IOT2000, CODESYS Control for Linux, CODESYS Control for PFC100, CODESYS Control for PFC200, CODESYS Control for Raspberry Pi, CODESYS Control V3 Runtime System Toolkit, CODESYS Gateway V3, CODESYS V3 Development System.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceThe CODESYS Gateway V3 component fails to properly verify the ownership of communication channels, allowing an attacker to potentially hijack or impersonate legitimate communication sessions. This authentication/authorization bypass in the gateway affects all affected CODESYS V3 products regardless of CPU or OS platform.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data>= 3.0, < 3.5.14.20>= 3.0, < 3.5.14.20>= 3.0, < 3.5.14.20>= 3.0, < 3.5.14.20>= 3.0, < 3.5.14.20>= 3.0, < 3.5.14.20>= 3.0, < 3.5.14.20>= 3.0, < 3.5.14.20CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify installed CODESYS productsLocate CODESYS installation directories or check system for CODESYS Control runtime packages. Common locations include /opt/codesys, /etc/codesys, or C:\Program Files\CODESYS on Windows. Look for executables named CmpGateway, CODESYSControl, or gateway-related components.Affected if CODESYS Gateway V3 or any listed CODESYS Control runtime (Beaglebone, Empc, IoT2000, Linux, PFC100, PFC200, Raspberry Pi) is present on the system
-
Determine CODESYS Gateway versionQuery the installed CmpGateway component version. This may be available via: 1) gateway configuration file or log, 2) the CODESYS Development System under 'Gateway' properties, 3) running gateway status command if available, or 4) checking version metadata of the gateway executable or DLL.Affected if The retrieved Gateway version falls within range >= 3.0 and < 3.5.14.20
-
Determine CODESYS Control runtime versionFor runtime systems, check the version of the CODESYS Control component. This may appear in system information, runtime logs, or can be queried through the CODESYS gateway when connected to the target device. Compare against the installed package version if visible in the system package manager.Affected if The runtime version is >= 3.0 and < 3.5.14.20 for any of the affected product lines (Beaglebone SL, Empc A/imx6 SL, IoT2000 SL, Linux SL, PFC100 SL, PFC200 SL, Raspberry Pi SL, or Runtime Toolkit)
-
Verify gateway service status and configurationCheck if the CODESYS Gateway service is running and listening on configured ports (typically TCP ports 1217, 1743, or 1740). Examine gateway configuration files for authentication and channel ownership settings. The vulnerability requires the gateway to be active and accessible.Affected if The gateway service is active and accessible, making the authentication bypass exploitable in practice
A system is affected if it runs any CODESYS V3 product with Gateway or Control Runtime version 3.0 or higher but below 3.5.14.20, with the gateway service enabled and reachable on the network.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scoped3.5.14.20
Upgrade all affected CODESYS V3 products (runtime systems and gateway) to version v3.5.14.20 or later to obtain the patched CmpGateway component.
CODESYS V3 version 3.5.14.20
- Identify the specific CODESYS V3 product(s) in your environment from the affected list (CODESYS Control for BeagleBone, emPC-A/iMX6, IOT2000, Linux, PFC100, PFC200, Raspberry Pi, or Control Runtime Toolkit)
- Determine the currently installed version of the affected CODESYS product(s)
- If the installed version is >= 3.0 and < 3.5.14.20, the system is vulnerable
- Obtain the fixed version 3.5.14.20 from the official CODESYS download source (customers.codesys.com)
- Review the release notes for version 3.5.14.20 to check for any compatibility considerations or migration requirements
- Plan an upgrade window and backup the current configuration
- Upgrade the CODESYS product(s) to version 3.5.14.20 or later
- Verify the upgrade was successful and the version is correctly reported
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation4.0 h
- Implementation8.0 h
- Testing6.0 h
- Review / QA3.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $5,888.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2019-9010 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2019-9010 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data