Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain read-only Dolibarr API credentials
-
DeliveryEnumerate valid document module parts and file paths
-
ExploitSend DELETE /api/index.php/documents with read-only token
-
Executiondol_check_secure_access_document() passes 'read' check
-
ImpactDocuments permanently deleted across targeted modules
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a valid Dolibarr REST API user account with at least one read-level permission grant for a document-bearing module - specifically any of: societe:lire (third-party files), facture:lire (invoices), commande:lire (orders), propal:lire (proposals), or projet:lire (project files). The Dolibarr REST API must be enabled and network-accessible, which is not the default in all deployment configurations. No write, delete, create, or admin permission is required - the incorrect mode argument means read-only grants are sufficient to pass the authorization gate. Exploitation is limited to authenticated users; unauthenticated access to the endpoint is not possible. Additionally, the attacker must be able to supply valid module part names and relative file paths to target specific documents, which may require prior reconnaissance of the document storage layout or API enumeration. |
| Impact | The CVSS 4.0 score of 7.1 accurately characterizes the attack surface: network-reachable (AV:N), low complexity (AC:L), no special attack conditions (AT:N), low privilege required (PR:L), no user interaction (UI:N), and high integrity impact on the vulnerable system (VI:H) with no confidentiality or availability loss. The PR:L requirement is the primary limiting factor - unauthenticated exploitation is not possible, which reduces the opportunistic attack surface compared to PR:N flaws. However, in multi-tenant or partner-integrated Dolibarr deployments where read-only API accounts are distributed to third parties, the privilege bar is readily met. The integrity impact is severe and irreversible: there is no recovery path for deleted documents, making this a data-destruction risk rather than a data-exfiltration one. No EPSS score was provided; no CISA KEV listing is present, indicating no confirmed active exploitation at time of analysis. The publicly committed diff is a meaningful exploitation-enablement signal - any API user aware of the flaw can act on it immediately without further research. Organizations running the Dolibarr REST API with distributed accounts should treat this as high operational priority despite the absence of KEV. |
| Exploit ScenarioDerived | An attacker holding a legitimate read-only partner API account (e.g., with societe:lire for CRM access) authenticates to the Dolibarr REST API and sends DELETE /api/index.php/documents requests targeting third-party files or invoice PDFs. The authorization check passes because it evaluates only read-level grants, and the documents are permanently deleted with no recovery path. The publicly visible one-line commit diff at the fix commit makes the necessary request structure straightforward to derive for any holder of API credentials. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 27, 2026
Incorrect authorization in Dolibarr's REST API before version 23.0.4 allows authenticated users holding only read-level module permissions to permanently delete documents via the DELETE /api/index.php/documents endpoint. The flaw in Documents::delete() at htdocs/api/class/api_documents.class.php passes the mode argument 'read' rather than 'write' to dol_check_secure_access_document(), meaning any API account with societe:lire, facture:lire, or equivalent read-only grants can irrecoverably destroy third-party files, invoices, orders, proposals, project files, and generated PDFs. No public exploit has been identified at time of analysis, but the corrective one-line commit diff is publicly visible on GitHub, making the flaw trivial to weaponize for any holder of low-privilege API credentials.
RemediationAI
Upgrade Dolibarr to version 23.0.4 or later; this release introduces the corrected 'write' mode argument to dol_check_secure_access_document() in the DELETE handler, as confirmed by commit de1d7a623e98484cc71fe43e93fdd5cd796abee5 at https://github.com/Dolibarr/dolibarr/commit/de1d7a623e98484cc71fe43e93fdd5cd796abee5. For deployments where immediate upgrade is blocked, the most targeted compensating control is to disable or firewall the Dolibarr REST API entirely at the reverse proxy or WAF layer, blocking HTTP DELETE requests to /api/index.php/documents - note that this will break any legitimate integration relying on document deletion. A less disruptive alternative is to audit all API user accounts and revoke REST API access from any account holding only read-level grants (societe:lire, facture:lire, etc.), retaining API access only for accounts with full write or admin privileges; the trade-off is potential disruption to read-only reporting integrations. Refer to the VulnCheck advisory at https://www.vulncheck.com/advisories/dolibarr-before-23.0.4-incorrect-authorization-on-rest-api-document-deletion for further guidance.
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
Dolibarr is an open-source ERP/CRM platform written in PHP (CPE: cpe:2.3:a:dolibarr:dolibarr:*:*:*:*:*:*:*:*). Its REST API is a first-class integration path and is exposed at /api/index.php. The vulnerability maps to CWE-863 (Incorrect Authorization): the authorization gate dol_check_secure_access_document() is a mode-sensitive function that accepts either 'read' or 'write' to enforce distinct permission tiers. In the DELETE handler (api_documents.class.php:1276 in 23.0.3), the caller erroneously passes 'read', which resolves against the user's read-level grants rather than the write/delete grants the operation actually requires. The sibling builddoc() code path correctly passes 'write', confirming the intended design - this is a copy-paste or refactoring error, not a design ambiguity. The upstream fix (commit de1d7a623e98484cc71fe43e93fdd5cd796abee5) is a single-character-level change: substituting 'write' for 'read' at the call site, demonstrating the root cause is isolated and surgical.
Know when Dolibarr 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:H/VA:N/SC:N/SI:N/SA:N
Network-accessible REST API; PR:L because valid API credentials are required; deletion-only impact yields I:H with no confidentiality or availability loss.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Dolibarr before 23.0.4 authorizes REST API document deletion against the wrong permission. Documents::delete() in htdocs/api/class/api_documents.class.php calls dol_check_secure_access_document() with the mode argument 'read' when handling DELETE /api/index.php/documents, while the sibling builddoc() path passes 'write', the correct mode for an operation that modifies stored data. An authenticated API user who holds only a read permission for a document-bearing module, for example societe:lire or facture:lire, and no create, write, delete or admin permission, therefore passes the check and can permanently delete that module's documents: third-party files, invoices, orders, proposals, project files and generated PDFs, with no recovery path. The call site is htdocs/api/class/api_documents.class.php:1276 in 23.0.3 and passes 'write' from 23.0.4 onward.
Executive ViewAI
Dolibarr's REST API before version 23.0.4 contains an authorization flaw allowing authenticated users with read-only API access to permanently delete critical business documents including invoices, orders, proposals, and project files. Organizations using Dolibarr with API integrations face data loss and compliance risks from insider threat actors or compromised low-privilege API credentials.
Apply vendor patch: Dolibarr version 23.0.4 or later. Until patching is complete, restrict all API credentials to read-only scope and implement comprehensive audit logging for document operations.
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.
An issue in Dolibarr ERP CRM v.17.0.1 and before allows a remote privileged attacker to execute arbitrary code via a cra
Dolibarr before 17.0.1 allows remote code execution by an authenticated user via an uppercase manipulation: <?PHP instea
Dolibarr ERP/CRM 4.0.4 has SQL Injection in doli/theme/eldy/style.css.php via the lang parameter. Rated critical severit
Cross Site Scripting vulnerability in Dolibarr ERP CRM v.17.0.1 and before allows a remote attacker to obtain sensitive
Dolibarr ERP/CRM 4.0.4 stores passwords with the MD5 algorithm, which makes brute-force attacks easier. Rated critical s
SQL injection attacks can result in unauthorized access to sensitive data, such as passwords, credit card details, or pe
Dolibarr Open Source ERP & CRM for Business before v14.0.1 allows attackers to escalate privileges via a crafted API. Ra
Dolibarr ERP & CRM <=15.0.3 is vulnerable to Eval injection. Rated critical severity (CVSS 9.8), this vulnerability is r
The website builder module in Dolibarr 13.0.2 allows remote PHP code execution because of an incomplete protection mecha
The htdocs/index.php?mainmenu=home login page in Dolibarr 10.0.6 allows an unlimited rate of failed authentication attem
SQL injection vulnerability in Dolibarr before 7.0.2 allows remote attackers to execute arbitrary SQL commands via vecto
Dolibarr ERP CRM 7.0.3 contains a remote code evaluation vulnerability that allows unauthenticated attackers to execute
EUVD-2026-67234
GHSA-4c6q-r9ww-p823
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB