Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as user with attachment edit rights
-
ExploitCreate attachment with large external URL, 'Download external file' enabled
-
ExecutionServer streams unbounded remote file to disk
-
ImpactRepeat downloads until disk exhausted, denial of service
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires two concrete preconditions stated in the advisory: (1) the deployment must have server-side attachment downloads enabled via ALLOW_ATTACHMENT_DOWNLOADS=1 - the vulnerable downloadURL() path is unreachable otherwise; and (2) the attacker must be an authenticated Part-DB user holding permission to create or edit attachments (PR:L), so this is not exploitable by anonymous/remote-unauthenticated actors. No user interaction by a victim is needed (UI:N). The advisory explicitly notes that ALLOW_ATTACHMENT_DOWNLOADS_FROM_LOCALNETWORK=1 was used only for the local PoC and is NOT the root cause, so exploitation does not depend on that setting - the attacker simply supplies any reachable external URL serving a large response. Limiting factors for defenders: instances that keep server-side downloads disabled are not affected, and the account/permission requirement restricts the attacker set to provisioned users. |
| Impact | This is a genuinely moderate, not critical, issue and the signals are internally consistent rather than conflicting. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) scores 5.3 (Medium) and the vuln.today priority is 'this_month' - not 'act_now' or 'emergency' - which aligns with the impact being availability-only disk exhaustion (VC:N/VI:L/VA:L, no confidentiality compromise and no code execution). It is NOT in CISA KEV, so there is no confirmed active exploitation. No EPSS score was provided, so exploitation-probability modeling cannot be cited. The PR:L metric confirms an authenticated attacker with attachment create/edit rights is required, which meaningfully narrows the threat population to users who already hold accounts and attachment permissions on the instance. A detailed, reproducible proof-of-concept is published directly in the GHSA advisory (Docker setup, a Python oversized-file server, and verification queries), so exploitation is well understood even though it is not a packaged weaponized exploit. The practical risk is bounded further because it is only reachable when server-side attachment downloads are explicitly enabled (ALLOW_ATTACHMENT_DOWNLOADS=1). Net assessment: a real but lower-tier priority - patch within a normal maintenance cycle; it is not a drop-everything emergency, but the clear public PoC and trivial complexity mean it should not be deferred indefinitely on instances with downloads enabled. |
| Exploit ScenarioDerived | An authenticated Part-DB user with permission to create or edit attachments creates an attachment pointing to an attacker-controlled external URL and checks 'Download external file'; because the server-side download path never enforces MAX_ATTACHMENT_FILE_SIZE, Part-DB streams the entire oversized remote file to disk. By repeating this against an endpoint that serves arbitrarily large responses, the user fills available disk space and degrades or halts the service for everyone. A full, working proof-of-concept - including a Python server returning a 5 MB file that is stored despite a 1M limit - is published in the GHSA advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 23, 2026
Authenticated users with attachment create/edit permissions can bypass the configured MAX_ATTACHMENT_FILE_SIZE limit in Part-DB when server-side attachment downloads are enabled, because the 'Download external file' code path (downloadURL() in src/Services/Attachments/AttachmentSubmitHandler.php) streams the remote response directly to disk without checking Content-Length or counting bytes. Repeatedly storing oversized files can exhaust disk space, causing failed uploads, database or cache write failures, and denial of service for other users. The issue affects Part-DB versions through 2.13.1 (composer package part-db/part-db-server, CPE cpe:2.3:a:part-db:part-db-server) and is fixed in 2.13.2; no public exploit code is confirmed beyond the advisory's own proof of concept, and EPSS/KEV data were not provided in the source material.
RemediationAI
Upgrade to Part-DB 2.13.2 or later; the 2.13.2 release notes state that attachment file limits are now respected when Part-DB downloads a file (the same fix also covers base64-encoded API uploads), and the advisory confirms the patch. The fixed release is available at https://github.com/Part-DB/Part-DB-server/releases/tag/v2.13.2, with details in https://github.com/Part-DB/Part-DB-server/security/advisories/GHSA-2whx-2cx7-qvq6. If upgrading cannot be done immediately, the advisory's precondition points to the practical compensating control: keep server-side attachment downloads disabled (do not set ALLOW_ATTACHMENT_DOWNLOADS=1) so the vulnerable downloadURL() branch is unreachable; the trade-off is that users lose the 'Download external file' convenience feature and must upload attachments directly, which remains subject to the enforced MAX_ATTACHMENT_FILE_SIZE limit. Additionally, restrict attachment create/edit permissions to trusted users and monitor disk usage on the media and uploads volumes; the trade-off there is reduced self-service for less-privileged inventory users.
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
Part-DB is a PHP/Symfony inventory management application for electronic components. Attachments are handled by AttachmentSubmitHandler::handleUpload(), which normally enforces size limits through Symfony's File(maxSize: ...) constraint plus getMaximumAllowedUploadSize() (the minimum of post_max_size, upload_max_filesize and the Part-DB MAX_ATTACHMENT_FILE_SIZE setting). That enforcement is skipped on the alternate branch: when an attachment has an external URL and the 'downloadUrl' option is checked, the application calls downloadURL(), which verifies only that server-side downloads are allowed (ALLOW_ATTACHMENT_DOWNLOADS=1), issues a Symfony HttpClient GET to the user-supplied URL, and then loops over $this->httpClient->stream($response) writing each chunk with fwrite() to a temporary file. Neither the Content-Length header nor an accumulated byte counter is checked, so the response body is written in full regardless of size, after which the file is moved into the media directory. The root cause maps to CWE-400 (Uncontrolled Resource Consumption) and, as the GitHub advisory also lists, CWE-770 (Allocation of Resources Without Limits or Throttling): an unbounded write to local storage. The advisory states the ALLOW_ATTACHMENT_DOWNLOADS_FROM_LOCALNETWORK setting was used only to support the local PoC and is not the root cause. CVSS v4.0 scores this 5.3 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L); the independent assessment uses CVSS 3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L, consistent with a low-impact availability issue requiring an authenticated, attachment-capable account.
Know when Part Db 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:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
Network-reachable web form, low complexity, but requires an authenticated user with attachment edit rights (PR:L); impact is disk-exhaustion availability only, so C:N/I:N/A:L.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Part-DB is an open source inventory management system for electronic components. Prior to version 2.13.2, Part-DB allows authenticated users to bypass the configured maximum attachment file size when using the server-side “Download external file” attachment feature. When server-side attachment downloads are enabled, Part-DB downloads the remote file and streams it directly to disk without enforcing the configured MAX_ATTACHMENT_FILE_SIZE limit. As a result, an authenticated user who can create or edit attachments can cause Part-DB to store files larger than the configured maximum attachment size, potentially exhausting disk space and causing a denial of service. This issue has been patched in version 2.13.2.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
OS Command Injection in GitHub repository part-db/part-db prior to 0.5.11. Rated critical severity (CVSS 9.8), this vuln
Authenticated file upload in Part-DB Server 2.12.0 and earlier lets any member of the default users group obtain remote
Password-reset link poisoning in Part-DB Server (through 2.13.2) lets an unauthenticated remote attacker who can reach t
Part-DB is an open source inventory management system for your electronic components. Rated medium severity (CVSS 6.1),
Stored HTML injection in Part-DB through 2.12.0 lets an authenticated user with edit rights on an entity store a crafted
Stored cross-user HTML injection in Part-DB's BOM validation results allows a user who can create or edit a Part name to
Stored cross-site scripting in Part-DB Server 2.12.2 and earlier allows an authenticated user with attachment-upload per
Authenticated users holding the API access permission can bypass the configured maximum attachment file size in Part-DB
Spreadsheet formula injection in Part-DB through 2.13.1 lets an authenticated user who holds the '@parts.import' permiss
Part-DB is an open source inventory management system for electronic components. Rated medium severity (CVSS 5.7), this
EUVD-2026-108578
NVD
CVE.org
EPSS
GitHub
Exploit-DB