Skip to main content

Steeltoe Eureka CVE-2026-81515

| EUVDEUVD-2026-81901 HIGH
Improper Handling of Exceptional Conditions (CWE-755)
2026-09-17 GitHub_M GHSA-hr73-3gpv-hh6q
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain ability to register/update a Eureka instance
  2. Delivery
    Submit registration with malformed actionType/status/timestamp field
  3. Exploit
    Client deserialization of full response throws JsonException
  4. Execution
    All Steeltoe clients receive empty/stale instance list
  5. Impact
    Service discovery outage until record removed

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling procedures
Exploitation Conditions

Requires that the attacker be a principal able to register or update an instance in the Eureka service registry that Steeltoe clients consume, and that victim applications use Steeltoe EurekaDiscoveryClient versions 4.0.0 through 4.2.x. The specific trigger is a single instance record whose actionType or status is unrecognized, whose isCoordinatingDiscoveryServer is non-Boolean, or whose timestamp is nonnumeric - parsed by JsonInstanceInfoConverter, BoolStringJsonConverter, or LongStringJsonConverter. Limiting factors: impact is confined to service-discovery availability (no data exposure or code execution), the malformed effect is transient (self-heals once the bad registration is removed), and practical exploitation depends on the Eureka deployment allowing the attacker to write a registration - many deployments keep Eureka registration inside a trusted network, which reduces real-world exposure despite the PR:N vendor rating.

Impact

This is a genuine but bounded availability-only issue. The vendor CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5) rates it network-exploitable, low-complexity, and unauthenticated with high availability impact and no confidentiality or integrity effect. There is no EPSS score, no CISA KEV listing, and no public exploit provided - so exploitation status is 'no public exploit identified at time of analysis.' The most important nuance is a signal conflict: the vector claims PR:N (unauthenticated), but the description explicitly requires 'a principal that can register or update an instance,' which is a privilege on the Eureka registry - verify with vendor, as I assess PR:L is more accurate. CWE-755 (improper handling of exceptional conditions) fits precisely: one malformed field aborts deserialization of the whole registry response. The 7.5 score is honest for the impact class but should not be read as a mass-exploitable internet-facing bug - it requires access to a Eureka registration path and only degrades service discovery, not data. Priority is moderate for organizations running Steeltoe-based .NET microservices behind a shared Eureka server; low for everyone else.

Exploit ScenarioDerived

An attacker who can register or update a service instance in the shared Eureka registry (a rogue or compromised microservice, or anyone with reachable registration endpoints) submits a registration containing an unrecognized actionType/status, a non-Boolean isCoordinatingDiscoveryServer, or a nonnumeric timestamp. Because Steeltoe deserializes the entire registry response as one unit, this single malformed record throws a JsonException that aborts parsing of the whole response, so every connected Steeltoe client receives an empty or stale instance list until the bad registration is removed. No public proof-of-concept is provided, though the fix commit ships a test payload (actionType 'SOMETHING_ELSE') that demonstrates the trigger.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 17, 2026

Malformed service-registry records can blank out service discovery for Steeltoe-based cloud-native applications: EurekaDiscoveryClient versions 4.0.0 through 4.2.x deserialize the entire Eureka registry response as one atomic unit, so a single instance entry with an unrecognized actionType or status, a non-Boolean isCoordinatingDiscoveryServer, or a nonnumeric timestamp aborts the whole payload and leaves every connected client with an empty or stale instance list. The vendor rates this 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) while the independent assessment rates the vector with PR:L and scope changed, reflecting that a practical attacker must be a principal able to register or update an instance in the Eureka registry that victim clients consume; impact is availability-only, with no data exposure or code execution, and the effect self-heals once the bad registration is removed. No public exploit code has been identified at time of analysis and the issue is fixed in Steeltoe 4.3.0.

RemediationAI

Vendor-released patch: upgrade Steeltoe to 4.3.0 (https://github.com/SteeltoeOSS/Steeltoe/releases/tag/4.3.0), which is the release containing upstream commit bc1c3763 that isolates per-instance deserialization failures in JsonInstanceInfoConverter and replaces throwing bool.Parse/long.Parse calls in BoolStringJsonConverter and LongStringJsonConverter with TryParse; see advisory GHSA-hr73-3gpv-hh6q for the vendor writeup. Because the trigger is a write to the shared Eureka registry rather than a direct request to the victim application, the effective compensating controls are on the registry side: restrict who can POST/PUT instance registrations (authentication on the Eureka server, mTLS or network ACLs so only trusted application hosts can reach the registration endpoints, and disabling unauthenticated self-registration), accepting that this can break dynamic autoscaling or unmanaged client registration in environments that rely on open self-registration; segment the Eureka server onto a trusted internal network with no internet exposure, noting that this raises operational overhead and complicates multi-cluster or hybrid discovery topologies; and monitor or audit registry mutations for unknown actionType/status values, non-Boolean isCoordinatingDiscoveryServer fields, or nonnumeric timestamps, then evict the malformed registration - this restores discovery but is a manual, reactive step and only an interim measure until clients are upgraded. Note that the denial of discovery is transient and clears once the poisoned registration is removed, and that no public exploit code was identified at time of analysis.

Affected VersionsENISA

security-advisories 4.0.0, < 4.3.0

Affected Packages

nuget steeltoe.discovery.eureka fix: 4.3.0
euvd security_advisories_4_0_0 fix: 4.3.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in nuget, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Steeltoe is an open source .NET library collection for building cloud-native applications, and its Eureka client implements service discovery against a Netflix Eureka-compatible registry. The vulnerable path uses System.Text.Json with custom converters - JsonInstanceInfoConverter, BoolStringJsonConverter, and LongStringJsonConverter - and the deserializer previously materialized the whole List<JsonInstanceInfo?> in one pass. Root cause class is CWE-755, Improper Handling of Exceptional Conditions: Converters called bool.Parse and long.Parse on string-typed registry fields and threw JsonException on unknown enum values or unexpected token types, and because one converter failure propagated out of the array-level deserialization, a single poisoned instance record terminated parsing for the entire response body. The fix in upstream commit bc1c3763 (released in 4.3.0) restructures JsonInstanceInfoConverter to parse the payload into a JsonDocument and then deserialize each array element individually inside a TryDeserializeInstance helper that catches JsonException and FormatException and skips only the offending entry; BoolStringJsonConverter and LongStringJsonConverter were converted to bool.TryParse / long.TryParse with explicit JsonException on failure, and the array-level [JsonSerializable(typeof(List<JsonInstanceInfo?>))] registration was removed. The vulnerability is explicitly distinct from the earlier DataCenterInfo.name parsing issue, and the referenced CPE entry (cpe:2.3:a:steeltoeoss:security-advisories) reflects publication through the SteeltoeOSS security-advisories repository rather than a version-bound product CPE.

Know when Security Advisories gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.7 HIGH

Attacker needs registry write access so PR:L not PR:N; a malformed registration on the Eureka server degrades all other connected clients, a cross-component scope change (S:C); availability-only impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:N/SI:N/SA:H

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Sep 17, 2026 - 17:19 EUVD
CVE Published
Sep 17, 2026 - 15:40 cve.org
HIGH 7.5

DescriptionCVE.org

Steeltoe is an open source project that provides a collection of libraries that helps users build cloud-native applications. From 4.0.0 until 4.3.0, EurekaDiscoveryClient deserializes the registry response as one unit, and an unrecognized actionType or status, a non-Boolean isCoordinatingDiscoveryServer, or a nonnumeric timestamp can abort the entire response. A principal that can register or update an instance can cause all connected Steeltoe clients to receive an empty or stale instance list until the malformed registration is removed. The JsonInstanceInfoConverter, BoolStringJsonConverter, and LongStringJsonConverter parsing paths are affected. This issue is distinct from the earlier DataCenterInfo.name parsing vulnerability. This issue is fixed in version 4.3.0.

Technical POC Analysis

CWE-755 (Improper Handling of Exceptional Conditions).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Steeltoe's EurekaDiscoveryClient (versions 4.0.0 through 4.2.x) can blank out service discovery for all connected cloud-native applications when a malformed registry record is processed, causing availability-only outages across microservice routing. The vendor CVSS vector indicates unauthenticated (PR:N) exploitation, while an independent assessment and the practical attack path require a principal able to register or update an instance (PR:L), and no public exploit identified at time of analysis. Leadership should care because a single bad registration can disrupt service lookups organization-wide until removed, though the effect self-heals and no data exposure or code execution is involved.

Business Impact: High
Compensating Controls

Restrict Eureka registry write access to trusted principals; deploy a filtering proxy or input validation to reject malformed payloads (unrecognized actionType/status, non-Boolean isCoordinatingDiscoveryServer, nonnumeric timestamp); monitor for empty or stale instance lists and alert; maintain a runbook to remove bad registrations since the effect self-heals; implement redundant service-discovery fallbacks. No vendor-released patch identified at time of analysis.

Threat Intelligence Overview

EPSS Score
0.3%
Top 73% exploitable
Prevalence
Low
niche .NET Spring-Cloud-style microservices library, limited enterprise footprint
Threat Intel
1
1 source
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0
CVE-2026-75523 MEDIUM POC
5.9 Sep 17

Information disclosure in Steeltoe's Management Endpoint actuator (Steeltoe.Management.Endpoint) prior to 4.3.0 allows a

CVE-2026-45284 HIGH
8.8 Jun 01

Authentication bypass in the Nextcloud user_oidc app (versions 1.3.6 up to but not including 8.4.0) lets users that were

CVE-2026-45545 HIGH
8.2 Jun 01

SQL injection in the Nextcloud Tables app allows authenticated users with access to the Tables feature to execute arbitr

CVE-2026-45156 HIGH
8.1 Jun 01

Authentication bypass in Nextcloud's User OIDC app (versions 0.3.0-3.0.x, 5.0.0-5.0.x, and 6.0.0-6.3.x) allows a malicio

CVE-2026-45281 HIGH
8.1 Jun 01

Improper authorization in the Nextcloud Server CalDAV backend allows an authenticated user who knows another user's prin

CVE-2026-81516 HIGH
7.5 Sep 17

Consul service discovery in Steeltoe 4.0.0 through 4.2.x can be rendered persistently unusable by a single malformed ser

CVE-2026-45722 HIGH
7.1 Jun 01

Blind SQL injection in the Nextcloud Tables app affects versions 0.9.0 through 0.9.6 and 1.0.0 through 1.0.1, allowing a

CVE-2026-45810 MEDIUM
6.8 Jun 01

Comment authorization bypass in Nextcloud Server 31.x and 32.x allows authenticated low-privilege users to read all file

CVE-2026-81868 MEDIUM
6.5 Sep 17

Authentication bypass in Steeltoe.Security.Authorization.Certificate (Steeltoe prior to 4.3.0) lets remote unauthenticat

CVE-2026-45279 MEDIUM
6.5 Jun 01

Path traversal in Nextcloud Server 31.x and 32.x allows authenticated non-admin users to copy arbitrary server-side file

CVE-2026-45282 MEDIUM
6.5 Jun 01

Nextcloud Server's link share attachment access bypasses password protection and download restrictions for authenticated

CVE-2026-45275 MEDIUM
6.5 Jun 01

Privilege escalation in the Nextcloud Approval app (prior to version 2.7.2) allows authenticated users who lack sharing

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy