CVE-2023-28831
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 · uneditedThe OPC UA implementations (ANSI C and C++) in affected products contain an integer overflow vulnerability that could cause the application to run into an infinite loop during certificate validation. This could allow an unauthenticated remote attacker to create a denial of service condition by sending a specially crafted certificate.
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 OPC UA implementations in ANSI C and C++ contain an integer overflow vulnerability in the certificate validation logic. When processing a specially crafted certificate, the overflow causes the validation loop to become infinite, resulting in a denial of service condition. This can be exploited remotely by an unauthenticated attacker.
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< 2.2< 2.2< 2.2< 2.9.7< 2.9.7< 3.0.3< 2.9.7< 3.0.3CVSS 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
- None
- Integrity
- None
- Availability
- High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/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 the exact Simatic device modelLocate the device nameplate or check the device configuration in TIA Portal or the device's web interface. Confirm it matches one of: Simatic Cloud Connect 7 Cc712, Simatic Cloud Connect 7 Cc716, Simatic Drive Controller Cpu 1504d Tf, Simatic Drive Controller Cpu 1507d Tf, Simatic Et 200sp Open Controller Cpu, Simatic S7 1200 Cpu, Simatic S7 1500 Cpu 1510sp 1 Pn, or Simatic S7 1500 Cpu 1510sp F 1 Pn.Affected if The device model is one of the eight listed products.
-
Check the installed firmware versionAccess the device via TIA Portal, the device's web interface, or the PLC console and navigate to the firmware or version information section. Note the exact firmware version number.Affected if The firmware version is below 2.2 (for Cc712/Cc716/1504d Tf), below 2.9.7 (for 1507d Tf/Et 200sp/1510sp 1 Pn), or below 3.0.3 (for S7 1200/1510sp F 1 Pn).
-
Verify OPC UA communication is enabledCheck the device configuration in TIA Portal under OPC UA settings, or access the device web interface and look for OPC UA server settings. Confirm that OPC UA server or client functionality is activated.Affected if OPC UA is enabled on the device (the vulnerability exists in the OPC UA certificate validation logic).
-
Confirm network exposure to untrusted clientsReview network configuration and firewall rules to determine whether the OPC UA port (typically 4840) is accessible from untrusted or external networks.Affected if The OPC UA interface is reachable from network segments that could contain malicious certificate sources.
You are affected if your device is one of the eight listed Simatic models, runs firmware below the specified thresholds, has OPC UA enabled, and the OPC UA interface is network-accessible to untrusted sources.
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 · scoped2.22.9.73.0.3
Apply vendor-supplied patches or updates to the OPC UA implementation. Consider implementing network-level controls to limit exposure to untrusted certificate sources until the patch is deployed.
Firmware version 2.2, 2.9.7, or 3.0.3 depending on product model (Cc712/Cc716/1504d Tf: 2.2; 1507d Tf/ET200sp/1510sp 1Pn: 2.9.7; S7-1200/1510sp F 1Pn: 3.0.3)
- Identify the specific Simatic product model from the affected list (S7-1200, S7-1500, ET 200sp, Cloud Connect 7, Drive Controller)
- Determine the current firmware version installed on the device
- Download the corresponding firmware update from Siemens support (cert-portal.siemens.com)
- Review Siemens firmware update instructions and ensure proper backup procedures
- Update the device firmware to version 2.2, 2.9.7, or 3.0.3 as specified for the product model
- Verify the firmware update was successful and the device operates normally
- Test that OPC UA certificate validation functions properly after the update
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation4.0 h
- Implementation8.0 h
- Testing8.0 h
- Review / QA4.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $6,656.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2023-28831 — 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-2023-28831 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