ZeroHour

CVE-2026-90782

PoC niche

Null Pointer Dereference DoS in Systerel S2OPC through 1.7.3

CVSS 4.0
6.0 medium
EPSS
<1%p25
Published
()
Modified
AI analysis

S2OPC through version 1.7.3 contains a null pointer dereference (CWE-476) in msg_subscription_publish_bs__alloc_notification_message_items(), a code path that builds publish notifications for OPC UA subscriptions. If the heap allocation for a DataChangeNotification fails, the error state is clobbered by a subsequent successful allocation for an EventNotificationList, so the original failure goes unhandled and the null pointer is later dereferenced, terminating the server process. An authenticated attacker (PR:L) on a session with both data-change and event subscriptions can deliberately induce heap allocation failures — for example via memory exhaustion — to crash the server, affecting only availability (VA:H, CVSS 4.0 medium, 6.0). Anyone operating an S2OPC-based OPC UA server at or below 1.7.3 is affected, which is common in industrial and embedded deployments. A public PoC exists on GitHub, but the flaw is not in the CISA KEV catalog and there are no reports of in-the-wild exploitation.

What to do: Upgrade to a S2OPC release newer than 1.7.3 as soon as the vendor ships a fix, since no fixed version is listed in the current advisory. In the interim, restrict OPC UA access (TCP 4840 and secure endpoints) to trusted engineering networks, enforce authentication with least-privilege user roles so untrusted clients cannot hold subscriptions, and monitor server memory usage and process restarts for signs of heap-exhaustion DoS. Validate that no internet-facing S2OPC servers expose sessions combining data-change and event subscriptions to untrusted users.

Affected
Systerel S2OPCthrough 1.7.3 (<= 1.7.3)
Estimated exposure
nicheunknown; plausibly on the order of hundreds to low thousands of S2OPC-based OPC UA server deployments, most on private industrial networks — S2OPC is an open-source OPC UA toolkit with no published install or market-share counts, and while internet-wide scans show tens of thousands of OPC UA endpoints (port 4840) overall, S2OPC's share of those and of embedded/ICS deployments…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

S2OPC through 1.7.3 contains a null pointer dereference in msg_subscription_publish_bs__alloc_notification_message_items() where a failed allocation for DataChangeNotification is overwritten by a successful allocation for EventNotificationList. Attackers can trigger heap allocation failures on sessions with both data-change and event notifications to cause the server process to terminate.

Weakness
CWE-476
Vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.