[DSECRG-08-017] Flyspray 0.9.9.4 Multiple Security Vulnerabilities
Digital Security Research Group [DSecRG] Advisory #DSECRG-08-017
Application: Flyspray (web-based bug tracking system)
Versions Affected: 0.9.9.4
Vendor URL: http://www.flyspray.org
Bugs: SiXSS, Stored XSS, Brute Force
Exploits: YES
Reported: 08.02.2008
Vendor response: 08.02.2008
Solution: 24.02.2008
Date of Public Advisory: 03.03.2008
Author: Digital Security Research Group [DSecRG]
(research [at] dsec [dot] ru)
Description
***********
Flyspray system has multiple security vulnerabilities:
1. SiXSS in POST
2. Stored XSS in POST
3. Login Error Messages Credential Enumeration
Details
*******
1. SiXSS in POST, attacker can inject XSS code in SQL Error.
1.1 Vulnerabilities found in script index.php?do=myprofile.
POST parameters "tasks_perpage", "time_zone", "account_enabled", "notify_own".
Example:
tasks_perpage = <script>alert('DSecRG XSS')</script>
time_zone = <img src="javascript:alert('DSecRG XSS')">
1.2 Vulnerabilities found in script index.php?do=admin&area=newproject.
POST parameters "anon_open", "others_view".
Example:
anon_open = <img src="javascript:alert('DSecRG XSS')">
1.3 Vulnerabilities found in script index.php?do=admin&area=cat.
POST parameters "lft[4]", "rgt[4]".
Example:
rgt[4] = <script>alert('DSecRG XSS')</script>
1.4 Vulnerabilities found in script index.php?do=pm&area=prefs.
POST parameters "comment_closed", "project_is_active".
Example:
project_is_active = <img src="javascript:alert('DSecRG XSS')">
1.5 Vulnerabilities found in script index.php?do=details.
POST parameters "closedby_version", "edit", "edit_start_time",
"find_user", "item_status", "operating_system", "percent_complete",
"product_category", "project_id", "reportedver", "task_priority",
"task_severity", "task_type", .
Example:
project_id = <script>alert('DSecRG XSS')</script>
item_status = <img src="javascript:alert('DSecRG XSS')">
---------------------------------------------------------------------
2. Vulnerability found in script index.php?do=details in task details page.
POST parameter "item_summary".
Example:
item_summary = <script>alert('DSecRG XSS')</script>
---------------------------------------------------------------------
3. Login Error Messages Credential Enumeration
When trying to login using bad credentials, the application generates different
error messages when the user inputs an invalid username and an invalid password
separately.
Attacker ca use the brute force technique to establish valid usernames, before
proceeding to attempt discovery of the associated password.
Fix Information
***************
Flyspray was altered to fix this flaw on 24.02.2008. Updated version (0.9.9.5)
can be downloaded here:
http://www.flyspray.org/download/
Vendor advisory
***************
http://flyspray.org/fsa:3
About
*****
Digital Security is leading IT security company in Russia, providing
information security consulting, audit and penetration testing services, risk
analysis and ISMS-related services and certification for ISO/IEC 27001:2005 and
PCI DSS standards. Digital Security Research Group focuses on web application
and database security problems with vulnerability reports, advisories and
whitepapers posted regularly on our website.
Contact: research [at] dsec [dot] ru
http://www.dsec.ru (in Russian)
--
Digital Security Research Group mailto:research@xxxxxxx