Executive brief
open62541 is an open-source implementation of the OPC UA industrial communication protocol used in manufacturing and automation. A vulnerability in the client library allows a malicious server to crash any application connecting to it. This results in a denial-of-service, potentially disrupting industrial monitoring or control operations that rely on these connections.
Technical details
A null pointer dereference exists in the `responseReadNamespacesArray` function within `src/client/ua_client_connect.c`. When a client automatically reads the `Server_NamespaceArray` after session activation, a malicious server can return a successful `ReadResponse` with a `resultsSize` of 0 but an encoded empty array. The client library decodes this as `UA_EMPTY_ARRAY_SENTINEL` (0x01) and subsequently attempts to dereference the first element of the results array without verifying the size. This leads to an invalid memory read and a deterministic process crash. The attack is reachable remotely during the standard OPC UA handshake but requires a high level of complexity to exploit.
Affected products
- open62541 open62541 up to 1.5.5
Timeline
- 2026-07-14: advisory: NVD publication date
- 2026-07-14: disclosed: VulDB entry created