CVE-2026-27480
Timing-Based Username Enumeration in Static Web Server Basic Auth
Publication date: 2026-02-21
Last updated on: 2026-02-24
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| static-web-server | static_web_server | From 2.1.0 (inc) to 2.41.0 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-204 | The product provides different responses to incoming requests in a way that reveals internal state information to an unauthorized actor outside of the intended control sphere. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
CVE-2026-27480 is a timing-based username enumeration vulnerability in the Basic Authentication mechanism of the Static Web Server (SWS) versions 2.1.0 through 2.40.1.
The vulnerability occurs because the server checks if a username exists before verifying the password. If the username is invalid, the server immediately returns a 401 Unauthorized response. If the username is valid, it proceeds to verify the password using a computationally expensive method (bcrypt hashing), which takes longer.
This difference in response times allows attackers to measure and distinguish valid usernames from invalid ones by analyzing how long the server takes to respond, enabling targeted brute-force or credential-stuffing attacks.
The issue was fixed in version 2.41.0 by modifying the authentication logic to always perform password verification regardless of username validity, ensuring consistent response times and preventing timing-based enumeration.
How can this vulnerability impact me? :
[{'type': 'paragraph', 'content': "This vulnerability allows attackers to identify valid usernames on a system using Static Web Server's Basic Authentication."}, {'type': 'paragraph', 'content': 'By enumerating valid usernames through timing analysis, attackers can focus brute-force or credential-stuffing attacks more effectively on those accounts, increasing the risk of unauthorized access.'}, {'type': 'paragraph', 'content': 'The vulnerability has a moderate severity with a CVSS v3.1 base score of 5.3, indicating a significant but not critical risk.'}] [2]
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
[{'type': 'paragraph', 'content': "This vulnerability can be detected by measuring the response times of authentication attempts with different usernames. Specifically, by sending multiple authentication requests with both valid and invalid usernames and analyzing the timing differences in the server's responses, an attacker or tester can identify valid usernames due to the timing discrepancy."}, {'type': 'paragraph', 'content': 'A proof-of-concept approach involves sending repeated requests (e.g., 100 iterations) with various usernames and measuring the average response time for each. Valid usernames will show a different average response time compared to invalid ones.'}, {'type': 'paragraph', 'content': 'While no exact commands are provided in the resources, a practical method would be to use tools like curl in a loop combined with timing measurements, for example:'}, {'type': 'list_item', 'content': 'Use curl with the -w option to measure time_total for authentication attempts: curl -w "%{time_total}\\n" -u username:password -o /dev/null -s http://target-server/'}, {'type': 'list_item', 'content': 'Automate multiple requests with a script (bash, Python, or Rust) to collect timing data for different usernames.'}, {'type': 'paragraph', 'content': 'By comparing the average response times, you can detect the timing discrepancy indicative of this vulnerability.'}] [2]
What immediate steps should I take to mitigate this vulnerability?
The primary mitigation step is to upgrade the Static Web Server (SWS) to version 2.41.0 or later, where the vulnerability has been fixed.
The fix ensures that the server performs bcrypt password verification regardless of username validity, eliminating timing differences that allow username enumeration.
Until the upgrade can be applied, consider implementing additional protective measures such as rate limiting authentication attempts and monitoring for suspicious login patterns to reduce the risk of brute-force or credential-stuffing attacks.