Vulnerability Details CVE-2026-81728
Dolibarr before 24.0.0 contains a SQL injection in its CSV and XLSX import wizard. The wizard reads its update keys with GETPOST('updatekeys', 'array') in htdocs/imports/import.php, which applies only the generic alphanohtml filter: that strips HTML but leaves SQL keywords, comment markers, parentheses, spaces and quotes intact. import_insert() in htdocs/core/modules/import/import_csv.modules.php then iterates the submitted values and builds a filter with $where[] = $key.' = '.$data[$key], having first applied preg_replace('/^.*\./i', '', $key), an alias strip that does nothing to a value containing no dot. The assembled string is executed through $this->db->query(). The injected SELECT resolves the row id that the import then assigns to $lastinsertid, which becomes the WHERE target of a subsequent UPDATE, so a UNION SELECT returning an attacker-chosen integer both exfiltrates arbitrary table content and redirects which row the import overwrites; for category link tables the raw filter array is spliced into that UPDATE directly. The interface offers a fixed list of legitimate column codes but the server never checks the submitted values against it. A user holding the import permission can exploit this. Release 23.0.4 does not carry the fix; the allow-list test was added in 24.0.0.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.003
EPSS Ranking 17.0%
CVSS Severity
CVSS v3 Score 8.1
Products affected by CVE-2026-81728
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:-
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:10.0.7
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:11.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:11.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:11.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:11.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:11.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:11.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:12.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:12.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:12.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:12.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:12.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:12.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:13.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:13.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:13.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:13.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:13.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:13.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:14.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:14.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:14.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:14.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:14.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:14.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:15.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:15.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:15.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:15.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:16.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:16.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:16.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:16.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:16.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:16.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:17.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:17.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:17.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:17.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:17.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.10
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.7
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.8
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:18.0.9
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:19.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:19.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:19.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:19.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:19.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.5.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.6.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.6.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.7.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.7.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.8.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.8.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:2.9.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:20.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:20.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:20.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:20.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:20.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:21.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:21.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:21.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:21.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:21.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:22.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:22.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:22.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:22.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:22.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:22.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:23.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:23.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:23.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:23.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:23.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.1.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.1.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.1.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.1.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.2.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.2.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.2.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.2.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.3.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.3.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.3.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.3.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.4.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.4.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.4.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.7
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.5.8
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.6.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.6.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.6.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.6.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.6.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.6.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.6.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.7.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.7.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.7.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.7.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.7.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.8.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.8.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.8.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.8.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.8.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.9.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.9.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.9.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.9.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:3.9.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:4.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:4.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:4.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:4.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:4.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:4.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:4.0.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:5.0.7
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.7
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:6.0.8
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:7.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:7.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:7.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:7.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:7.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:7.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:8.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:8.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:8.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:8.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:8.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:8.0.5
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:8.0.6
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:9.0.0
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:9.0.1
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:9.0.2
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:9.0.3
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:9.0.4
-
cpe:2.3:a:dolibarr:dolibarr_erp/crm:9.0.5