Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
Remote single-request Host-header spoof with no auth or UI; high confidentiality from actuator data exposure, low integrity from writable actuators, no availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
3DescriptionCVE.org
Steeltoe is an open source project that provides a collection of libraries that helps users build cloud-native applications. When Steeltoe management endpoints versions 3.2.2 through 3.3.0 and 4.1.0 are configured to listen on an alternate port (Management:Endpoints:Port is configured), the middleware responsible for restricting access to the endpoints uses the Host HTTP header rather than the actual network socket port. Versions 3.4.0 and 4.2.0 patch the issue. If an immediate upgrade to a patched version is not possible, add explicit ASP.NET Core authorization (RequireAuthorization) to all sensitive actuator endpoints as a defense-in-depth measure independent of port isolation and/or configure the reverse proxy or load balancer to enforce the Host header value and prevent clients from setting an arbitrary port.
AnalysisAI
Improper authentication in Steeltoe management endpoints versions 3.2.2 through 3.3.0 and 4.1.0 allows remote unauthenticated attackers to reach actuator endpoints intended to be isolated on a separate management port by spoofing the HTTP Host header. The middleware trusted the client-supplied Host header port instead of the actual TCP socket port, defeating port-based access restrictions and enabling information disclosure from sensitive actuator endpoints. No public exploit identified at time of analysis, though the fix commit and a regression test demonstrating Host-header spoofing are publicly available on GitHub.
Technical ContextAI
Steeltoe is a .NET library suite that brings Spring-Boot-style cloud-native primitives - including management/actuator endpoints - to ASP.NET Core applications. The flaw lives in ManagementPortMiddleware.cs (EndpointCore), which gates actuator routes by comparing the request's port to the configured Management:Endpoints:Port value. The vulnerable code read context.Request.Host.Port, a value parsed from the inbound HTTP Host header and fully attacker-controllable, instead of context.Connection.LocalPort, the real Kestrel socket port. This is a textbook CWE-288 (Authentication Bypass Using an Alternate Path or Channel): a security decision is made on untrusted client-supplied input. The patch commits (4cbc352f and b7ca93c5) swap to Connection.LocalPort and add a regression test (AddAllActuators_WebApplication_IgnoresSpoofedHostHeader) that explicitly issues a Host: anything:9090 spoof against the public port and asserts a 404.
RemediationAI
Vendor-released patch: upgrade Steeltoe Management to 3.4.0 (3.x line) or 4.2.0 (4.x line), which replace the Host-header-port check with context.Connection.LocalPort per commits https://github.com/SteeltoeOSS/Steeltoe/commit/4cbc352fe89ac2e6c609554e435ab28996fec5e9 and https://github.com/SteeltoeOSS/Steeltoe/commit/b7ca93c510aaa08d7e4ebec40ce20c5811c2c4b6. If an immediate upgrade is not possible, the vendor advisory (https://github.com/SteeltoeOSS/security-advisories/security/advisories/GHSA-58f6-6rj2-3v8r) recommends two compensating controls: add explicit ASP.NET Core authorization via RequireAuthorization on every sensitive actuator endpoint so authentication - not port isolation - gates access (trade-off: requires an identity provider configured for actuators and may break monitoring tooling that scrapes anonymously), and/or configure the upstream reverse proxy or load balancer to strip or override the Host header so clients cannot supply an arbitrary port (trade-off: requires every ingress path to enforce the rule and may interfere with virtual-host routing).
More in Steeltoe Management Endpoint
View allSensitive credential disclosure in Steeltoe.Management.Endpoint before 4.2.0 and Steeltoe.Management.EndpointCore before
Sensitive actuator endpoints in Steeltoe.Management.Endpoint and Steeltoe.Management.EndpointCore expose heap dumps, env
Same technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-37801
GHSA-58f6-6rj2-3v8r