CVE-2014-3783
Description
SQL injection vulnerability in admin/categories.php in Dotclear before 2.6.3 allows remote authenticated users with the manage categories permission to execute arbitrary SQL commands via the categories_order parameter.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
45cpe:2.3:a:dotclear:dotclear:*:*:*:*:*:*:*:*+ 44 more
- cpe:2.3:a:dotclear:dotclear:*:*:*:*:*:*:*:*range: <=2.6.2
- cpe:2.3:a:dotclear:dotclear:1.2.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:1.2.2:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:1.2.3:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:1.2.4:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:1.2.5:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:1.2.6:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:1.2.7:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:1.2.8:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0.2:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:beta_2:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:beta_3:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:beta_4:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:beta_5.2:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:beta_5.4:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:beta_6:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:beta_7:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:rc1:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.0:rc2:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.1.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.1.3:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.1.4:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.1.5:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.1.6:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.1.7:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.2:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.2.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.2.2:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.2.3:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.3.0:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.3.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.4.2:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.4.3:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.4.4:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.5.0:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.5.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.5.2:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.5.3:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.6:-:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.6.1:*:*:*:*:*:*:*
- cpe:2.3:a:dotclear:dotclear:2.6:rc:*:*:*:*:*:*
- (no CPE)range: <2.6.3
Patches
Vulnerability mechanics
Root cause
"Missing input sanitization on the categories_order POST parameter before it is used in an SQL UPDATE statement."
Attack vector
An attacker must be authenticated with the "manage categories" permission [ref_id=1][ref_id=2]. The attacker sends a crafted POST request with `save_order` and `categories_order` parameters. The `categories_order` value is a JSON array whose `item_id`, `left`, and `right` properties are injected into an SQL UPDATE statement without sanitization [ref_id=1][ref_id=2]. By embedding SQL metacharacters in these JSON fields, the attacker can execute arbitrary SQL commands against the database [CWE-89].
Affected code
The vulnerable code is in `/admin/categories.php` at lines 70-82 [ref_id=1][ref_id=2]. User input from `$_POST['categories_order']` is passed unsanitized to `$core->blog->updCategoryPosition()` (line 76), which ultimately reaches the `nestedTree::updatePosition()` method where an UPDATE statement is constructed without proper escaping [ref_id=1][ref_id=2].
What the fix does
The advisory states that version 2.6.3 fixes the vulnerability, but no patch diff is included in the bundle [ref_id=1][ref_id=2]. The fix presumably adds proper input sanitization or parameterized queries to the `updCategoryPosition()` or `nestedTree::updatePosition()` methods so that user-supplied values from the JSON-decoded `categories_order` parameter are safely escaped before being used in the SQL UPDATE statement.
Preconditions
- authAttacker must have a valid account with the 'manage categories' permission
- networkAttacker must be able to send HTTP POST requests to /admin/categories.php
- inputThe categories_order POST parameter must contain a crafted JSON payload with SQL injection in item_id, left, or right fields
Generated on May 25, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
5News mentions
0No linked articles in our index yet.