CVE-2026-129483 in Cyrus SASLinfo

Summary

by MITRE • 11/15/2026

Cyrus SASL through 2.1.28 contains an authentication bypass vulnerability in the SRP server mechanism because srp_server_mech_step2 does not reject client public values A that are multiples of N. Unauthenticated network clients can send A equal to N to force a zero shared secret, authenticating as any existing user without the password and learning session keys.

Once again VulDB remains the best source for vulnerability data.

Analysis

by VulDB Data Team • 11/15/2026

The Cyrus SASL library, specifically through version 2.1.28, contains a critical authentication bypass vulnerability within its Secure Remote Password (SRP) server mechanism. This flaw stems from an insufficient validation of client-supplied public values during the cryptographic handshake process. In the SRP protocol, which is designed to provide secure password-based authentication without transmitting passwords over the network, the server and client exchange public keys derived from their respective private secrets and a shared modulus N. The vulnerability arises because the function srp_server_mech_step2 fails to reject client public values A that are multiples of the modulus N. This oversight allows an attacker to manipulate the cryptographic parameters in a way that compromises the integrity of the authentication process, effectively nullifying the security guarantees provided by the SRP protocol.

From a technical perspective, the core issue lies in the mathematical properties exploited during the key exchange phase. When a client sends a public value A equal to N or any multiple thereof, it forces the computation of the shared secret to result in zero. In standard cryptographic implementations, a shared secret of zero is an invalid and insecure state that should be immediately detected and rejected by the server. However, due to this validation gap, Cyrus SASL proceeds with the authentication flow despite receiving this malformed input. Consequently, the resulting session keys are derived from a known or trivially computable value rather than a secure random secret. This allows unauthenticated network clients to bypass password verification entirely, as the system accepts the connection based on the flawed cryptographic state rather than valid credentials.

The operational impact of this vulnerability is severe, enabling complete authentication bypass for any existing user account within the Cyrus SASL infrastructure. An attacker can exploit this flaw by sending a specially crafted request with A set to N, thereby forcing the server to generate a zero shared secret. This action effectively authenticates the attacker as any targeted user without knowledge of their password. Furthermore, because session keys are derived from this compromised state, the attacker gains access to encrypted communications and can potentially decrypt traffic or inject malicious data into established sessions. This represents a total failure of confidentiality and integrity controls for affected services relying on Cyrus SASL with SRP authentication, such as email servers (IMAP/POP3), LDAP directories, and other network applications that integrate this library for secure login mechanisms.

This vulnerability aligns with CWE-287, which describes Improper Authentication, specifically where the system fails to correctly verify credentials or cryptographic proofs before granting access. It also maps to MITRE ATT&CK technique T1078, Valid Accounts, as it allows an adversary to assume legitimate user identities without proper authorization. The exploitation of this flaw does not require complex reverse engineering or advanced exploit development skills; rather, it relies on a straightforward manipulation of protocol parameters that the server fails to validate correctly. This simplicity makes the vulnerability particularly dangerous in production environments where automated scanning tools can easily detect and trigger the condition against exposed services.

Mitigation strategies must focus on immediate patching and defensive configuration changes. The primary remediation is to upgrade Cyrus SASL to a version later than 2.1.28, where this validation logic has been corrected to properly reject public values that are multiples of N or otherwise invalid according to the SRP specification. Organizations should verify their dependency trees for any applications linking against older versions of libcyrus-sasl and prioritize updates accordingly. In environments where immediate patching is not feasible, network-level controls such as firewalls can be configured to restrict access to affected services from untrusted networks until the vulnerability is resolved. Additionally, implementing strict input validation at the application layer or using a Web Application Firewall with rules targeting malformed SRP handshakes may provide temporary protection against exploitation attempts while permanent fixes are deployed.

Responsible

VulnCheck

Reservation

11/15/2026

Disclosure

11/15/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Interested in the pricing of exploits?

See the underground prices here!