CVE-2026-44596: Yamcs: No Rate Limiting on Authentication Endpoint

Published May 27, 2026
·
Updated

Summary

The authentication endpoint POST /auth/token in yamcs-core lacks any form of rate limiting, account lockout, or failed attempt throttling. As a result, an unauthenticated remote attacker can perform unlimited password guessing attempts against any user account.

This missing rate limiting vulnerability (CWE-307) significantly increases the risk of successful brute-force attacks.

Root Cause

File: yamcs-core/src/main/java/org/yamcs/http/auth/AuthHandler.java

POST /auth/token has no rate limiting, no lockout after failed attempts, and no CAPTCHA. The handler processes unlimited authentication requests without any throttling mechanism:

java // AuthHandler.java — handleToken() // No throttle, no failed attempt counter, no lockout private void handleToken(HandlerContext ctx) { ... getSecurityStore().login(token).whenComplete((info, err) -> { // Directly attempts authentication with no rate check }); }

This is absent by default — the official quickstart and documentation contain no guidance on configuring rate limiting.

Impact

An attacker can make unlimited authentication attempts against any account. This enables efficient brute-force attacks against any account.

Proof of Concept

bash 20 attempts — zero rate limiting for i in $(seq 1 20); do curl -s -o /dev/null -w "Attempt $i: HTTP %{httpcode}\n" \ -X POST "http://TARGET:8090/auth/token" \ -d "granttype=password&username=operator&password=operator12$i" done All return HTTP 401 — no HTTP 429 ever

Confirmed: 20 attempts in 0.07 seconds, no rate limiting enforced.

Fix

Implement DRF-style throttling on /auth/token:

java // Track failed attempts per IP private static final Cache<String, Integer> FAILEDATTEMPTS = CacheBuilder.newBuilder().expireAfterWrite(15, TimeUnit.MINUTES).build();

private static final int MAXATTEMPTS = 10;

private void handleToken(HandlerContext ctx) { String ip = ctx.getRemoteAddress(); int attempts = Optional.ofNullable(FAILEDATTEMPTS.getIfPresent(ip)).orElse(0); if (attempts >= MAXATTEMPTS) { throw new TooManyRequestsException("Rate limit exceeded"); } // ... existing auth logic // On failure: FAILEDATTEMPTS.put(ip, attempts + 1) }

Other sources

Yamcs is a mission control framework. Prior to 5.12.7, the authentication endpoint POST /auth/token in yamcs-core, handled by yamcs-core/src/main/java/org/yamcs/http/auth/AuthHandler.java, lacked any rate limiting, account lockout, or failed-attempt throttling, so an unauthenticated remote attacker could perform unlimited password-guessing attempts against any user account, significantly increasing the risk of successful brute-force attacks. This issue is fixed in versions 5.12.7 and 5.13.0.

MITRE

Affected Software

2 affected componentsFixes available
maven/org.yamcs:yamcs-core<5.12.7
5.12.7
Spaceapplications Yamcs<5.12.7

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade maven/org.yamcs:yamcs-core to a version that resolves this vulnerability.

    Fixed in 5.12.7
  2. Upgrade

    Upgrade yamcs-core to a version that resolves this vulnerability.

    Fixed in 5.12.7
  3. Upgrade

    Upgrade yamcs-core to a version that resolves this vulnerability.

    Fixed in 5.13.0

Event History

May 27, 2026
Advisory Published
via GitHub·12:04 AM
Data Sourced
via GitHub·12:04 AM
DescriptionSeverityWeaknessAffected Software
May 30, 2026
Exploit Published
via ExploitDB·12:00 AM
Known Exploited
03:06 PM
Jul 16, 2026
CVE Published
via MITRE·04:04 PM
Data Sourced
via MITRE·04:04 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·05:16 PM
RemedyDescriptionSeverityWeaknessAffected Software
Sep 22, 58512
Event
via NVD·10:14 AM

Frequently Asked Questions

1

What is the severity of CVE-2026-44596?

The severity of CVE-2026-44596 is medium with a score of 6.5.

2

How does CVE-2026-44596 pose a security risk?

CVE-2026-44596 allows unauthenticated remote attackers to perform unlimited password guessing attempts due to the lack of rate limiting on the authentication endpoint.

3

What software is affected by CVE-2026-44596?

The vulnerability CVE-2026-44596 affects the software package maven/org.yamcs:yamcs-core.

4

How can organizations mitigate the risk of CVE-2026-44596?

Organizations can mitigate the risk of CVE-2026-44596 by implementing rate limiting, account lockout mechanisms, and failed attempt throttling on the authentication endpoint.

5

When was CVE-2026-44596 published?

CVE-2026-44596 was published on May 27, 2026.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203