CVE-2021-32921
NixOS vulnerability analysis and mitigation

Overview

A timing-dependent string comparison vulnerability (CVE-2021-32921) was discovered in Prosody before version 0.11.9. The issue stems from the software not using a constant-time algorithm for comparing certain secret strings when running under Lua 5.2 or later. This vulnerability was discovered in May 2021 and affects all versions of Prosody prior to 0.11.9 (Prosody Blog, OSS Security).

Technical details

The vulnerability occurs because Prosody does not implement constant-time string comparison for sensitive data. While Lua 5.1 utilized a technique called 'string interning' that protected string comparisons from timing attacks, in Lua 5.2 and later versions, strings over 40 bytes in length are excluded from interning. This makes any secret string over 40 bytes vulnerable to potential timing attacks. Additionally, if a secret string contains non-ASCII (unicode) characters, it may be longer than 40 bytes when encoded as UTF-8 even if it is fewer than 40 characters long. The vulnerability has been assigned a CVSS score of 4.7 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N/E:U/RL:O/RC:U) (OSS Security).

Impact

The vulnerability could potentially allow an attacker to reveal the contents of secret strings through timing attacks. This particularly affects modules like mod_auth_internal_plain, where an attacker might discover a user's password if it's longer than 40 bytes, and mod_muc, where MUC passwords could be exposed through timing attacks. However, a successful timing attack would require a significant number of failed attempts to guess the contents of the secret string (OSS Security).

Exploitability

The vulnerability requires a high level of sophistication to exploit, as indicated by its CVSS score. No known proof-of-concept exploit exists, and there are no reported cases of this vulnerability being exploited in the wild. To successfully perform a timing attack, an attacker would need to make a significant number of failed attempts to guess the contents of the secret string (OSS Security).

Mitigation and workarounds

For mod_auth_internal_plain, it is recommended to upgrade to mod_auth_internal_hashed. For mod_muc, users should use affiliations to grant access instead of passwords, or ensure passwords are shorter than 40 bytes. Rate limits can be enabled to greatly increase the time required to successfully complete a timing attack. The vulnerability is fully patched in Prosody version 0.11.9, which implements constant-time string comparison for secrets (OSS Security, Debian LTS).

Community reactions

The vulnerability was addressed promptly by major Linux distributions including Debian, Fedora, and Gentoo, which released security updates to patch the vulnerability. Debian issued security advisory DSA-4916-1, while Fedora released updates for versions 32, 33, and 34 (Debian Security, Gentoo Security).

Additional resources


SourceThis report was generated using AI

Related NixOS vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-75874CRITICAL10
  • NixOS logoNixOS
  • cpe:2.3:a:mozilla:firefox
NoYesAug 18, 2026
CVE-2026-74990CRITICAL9.8
  • NixOS logoNixOS
  • firefox-esr
NoYesAug 18, 2026
CVE-2026-74989CRITICAL9.8
  • NixOS logoNixOS
  • MozillaFirefox-translations-common
NoYesAug 18, 2026
CVE-2026-74988CRITICAL9.8
  • NixOS logoNixOS
  • cpe:2.3:a:mozilla:firefox
NoYesAug 18, 2026
CVE-2026-74987CRITICAL9.8
  • NixOS logoNixOS
  • firefox-esr
NoYesAug 18, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management