Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach public Bambuddy web endpoint
-
DeliveryFlood /api/v1/auth/login to exhaust file descriptors
-
ExploitForce SQLite connect() to raise, tripping fail-open auth
-
ExecutionSend token-less requests to protected endpoints
-
ImpactDownload DB backup / create admin / control printers
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Fail-secure design
|
| Exploitation Conditions | Exploitation requires network reach to a Bambuddy instance running a version >= 0.1.6 and < 0.2.4.4 with authentication enabled. The attacker does not need credentials, but must first induce a database exception during the auth probe - the documented path is flooding the public /api/v1/auth/login endpoint until the process runs out of file descriptors so the next SQLite connect() raises. The auth bypass is only available during that transient fail-open window, and protected-endpoint requests must be timed into it, so the resource-exhaustion prerequisite and timing race are the main practical limiters. Patched instances (0.2.4.4+) return 503 on probe failure and fail closed, eliminating the condition. |
| Impact | This is a genuine high-priority issue backed by concrete source-code evidence (the patch commit 845ad39 modifies the actual auth-decision functions), not a speculative high-CVSS inflation. The vendor CVSS 4.0 vector (9.3, AV:N/AC:L/PR:N/UI:N/VC:H/VI:H/VA:N) and the advisory's stated CVSS 9.8 both mark it critical and unauthenticated. However, the AC:L rating is arguably optimistic: exploitation is not a single clean request - the attacker must first flood /api/v1/auth/login hard enough to exhaust the process's file-descriptor budget so the next SQLite connect() raises, then race protected requests into the transient fail-open window, which in practice raises attack complexity (assessed AC:H). No EPSS score, no CISA KEV listing, and no independent exploit-code artifact are provided in the input; the only exploitation signal is that the reporter (@wondercrash) documented a reproducible PoC methodology in the advisory. So this is 'documented PoC technique exists' rather than confirmed active exploitation - treat the automatable/targeted distinction as unresolved. Once the window is open the impact is severe (full unauthenticated access to every protected endpoint), so the confidentiality/integrity ratings are well-founded; the main calibration caveat is attack complexity, not impact. |
| Exploit ScenarioDerived | An unauthenticated attacker on the network floods the public /api/v1/auth/login endpoint until the Bambuddy process exhausts its file-descriptor budget, causing the next SQLite connection to raise an exception. Because both is_auth_enabled() and the global auth_middleware caught all exceptions and 'failed open,' the attacker then sends token-less requests to protected endpoints during that window and downloads the database backup (hashed passwords, encryption keys, printer access codes, MFA secrets), creates a persistent admin account/API key, or directly controls printers. A reproducible PoC methodology is documented in the vendor advisory (GHSA-6mf4-q26m-47pv), though no standalone weaponized exploit is referenced in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 16, 2026
Bambuddy, a self-hosted print archive and management system for Bambu Lab 3D printers, fails open when its database is unavailable: versions from 0.1.6 up to (but not including) 0.2.4.4 catch every exception in the authentication probe and treat the failure as 'auth disabled', granting unauthenticated access to every protected endpoint. A remote attacker with no credentials can force the condition by flooding the public /api/v1/auth/login endpoint until the process exhausts its file-descriptor budget so the next SQLite connect() raises, then timing requests into that transient window to create a persistent admin account or API key, download the database backup (hashed passwords, encryption keys, printer access codes, MFA secrets), alter settings, or control printers. Vendor/CISA scoring is critical (CVSS 4.0 9.3; vendor advisory states 9.8), while independent assessment rates it high with high attack complexity because the bypass exists only during the resource-exhaustion window; no public exploit code identified at time of analysis, no KEV listing, and CWE-636 (Failing Open) is the root class.
RemediationAI
Upgrade Bambuddy to version 0.2.4.4 or later, which is the vendor-released patch - it is delivered by commit 845ad39b19bf99afeea571c6bae09695777e1460 (see the GHSA-6mf4-q26m-47pv advisory at https://github.com/maziggy/bambuddy/security/advisories/GHSA-6mf4-q26m-47pv and the release at https://github.com/maziggy/bambuddy/releases/tag/v0.2.4.4) and makes the auth probe fail closed, returning HTTP 503 instead of dispatching protected routes when the database is unreachable. If immediate upgrade is not possible, the practical compensating controls are: rate-limit and cap concurrent connections on /api/v1/auth/login at a reverse proxy (nginx limit_req/limit_conn) - this blunts the file-descriptor exhaustion trigger but may throttle legitimate login bursts and does not address other exception sources; raise the process file-descriptor budget (systemd LimitNOFILE or ulimit -n) to make exhaustion harder - it only widens the margin, it does not remove the fail-open path; and block untrusted network access to the Bambuddy instance (LAN-only, VPN, or an authenticating reverse proxy) to prevent remote flooding at all, at the cost of remote accessibility. Because an exploited window can yield a downloaded database backup containing hashed passwords, encryption keys, printer access codes, and MFA secrets, treat any instance that was exposed while unpatched as potentially compromised: review users and API keys for rogue admin accounts, rotate authentication and encryption secrets plus printer access codes, and monitor logs for auth-probe errors and 503 responses on protected endpoints.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Bambuddy is a FastAPI/Starlette application backed by SQLAlchemy async sessions over SQLite. Authentication state is not stored in configuration but looked up per request from a Settings table, and two auth-decision points mishandled failures. The helper is_auth_enabled() in backend/app/core/auth.py (around lines 473-483) wrapped its SELECT of the 'auth_enabled' settings row in a bare except Exception that returned False, conflating 'the settings row is absent, so auth was never configured' with 'the database raised, so auth must be off'. The global auth_middleware in backend/app/main.py (around lines 5314-5316) similarly caught every exception from the probe and called await call_next(request) with an explicit 'fail open for DB issues' comment, dispatching protected routes without a token. This is CWE-636 (Failing Open) compounded by CWE-755 (Improper Handling of Exceptional Conditions). The trigger is resource exhaustion rather than a memory-safety or injection flaw: flooding /api/v1/auth/login consumes file descriptors until the subsequent SQLite connect() raises, and during that window authentication decisions silently return 'allow'. The fix in commit 845ad39b19bf99afeea571c6bae09695777e1460 makes is_auth_enabled() propagate real exceptions (returning False only for the legitimate no-row case) and makes auth_middleware return HTTP 503 with a generic detail message on any probe failure, with regression tests in backend/tests/unit/test_auth_fail_closed.py pinning the fail-closed contract; the patched CPE mapping is cpe:2.3:a:maziggy:bambuddy:*:*:*:*:*:*:*:*.
Know when Bambuddy gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Unauthenticated and network-reachable (PR:N/AV:N), but requires forcing fd exhaustion and racing the transient fail-open window (AC:H); grants full read/write of protected data (C:H/I:H), availability impact incidental.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Bambuddy is a self-hosted print archive and management system for Bambu Lab 3D printers. Starting in version 0.1.6 and prior to version 0.2.4.4, a fail-open in the authentication code allows any attacker to bypass authentication by flooding a public endpoint to exhaust resources causing database access to fail, granting unauthenticated access to all protected endpoints. Version 0.2.4.4 patches the issue.
Articles & Coverage 1
Executive ViewAI
Bambuddy, a self-hosted 3D printer management platform, suffers from a critical authentication bypass that can allow attackers to gain full administrative control and exfiltrate sensitive data such as encryption keys, printer access codes, and MFA secrets. Organizations using affected versions (0.1.6 through 0.2.4.3) face risks including unauthorized production disruption, intellectual property theft, and compromised supply chain integrity. While no public exploit identified at time of analysis, the vulnerability is severe and easily triggered during resource exhaustion, so leadership should act immediately to patch to version 0.2.4.4.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
EUVD-2026-78895
NVD
CVE.org
EPSS
GitHub
Exploit-DB