REDHAT-BUG-2531344: Buffer Overflow
A vulnerability was found in the BusyBox TLS implementation (networking/tlspstmmontgomeryreduce.c). A unit confusion error exists in the buffer allocation for the Montgomery reduction operation. The code calls xzalloc(2pa+1) where pa is measured in pstmdigit units (4 or 8 bytes each), but the allocation treats this value as a byte count. This results in an allocation approximately 4x to 8x smaller than required.
When a TLS client sends a crafted ClientKeyExchange message with an all-zeros payload, the RSA decryption path triggers the Montgomery reduction, which writes digit-sized elements beyond the allocated buffer boundary. This constitutes a pre-authentication out-of-bounds heap write.
The confirmed impact is a pre-authentication denial of service (crash). While the heap buffer overflow is theoretically exploitable for remote code execution, this was not demonstrated. On Fedora, system-level mitigations including ASLR, PIE, full RELRO, and SELinux confinement make practical code execution extremely unlikely.
Affected Software
Event History
Frequently Asked Questions
What must an attacker be able to do to trigger the issue?
An attacker must be able to send a crafted TLS ClientKeyExchange message to a service using the affected BusyBox TLS RSA decryption path. The triggering payload is all zeros, and no prior authentication is required.
What is the confirmed impact in practice?
The confirmed impact is a remote pre-authentication denial of service through a crash caused by an out-of-bounds heap write. Remote code execution is theoretically possible for this class of flaw but was not demonstrated.
Are there platform protections that reduce the likelihood of code execution?
On Fedora, ASLR, PIE, full RELRO, and SELinux confinement make practical code execution extremely unlikely. These protections do not prevent the confirmed denial-of-service condition.