Nextcloud/Owncloud - Reflected Cross Site Scripting in error pages

==================================================================
Nextcloud/Owncloud - Reflected Cross Site Scripting in error pages
==================================================================

Information
------------------------------------------------------------------
Name: Nextcloud/Owncloud - Reflected Cross Site Scripting in error pages
Affected Versions:  Nextcloud Server < 11.0.3
                    Nextcloud Server < 10.0.5
                    Nextcloud Server < 9.0.58
                    Owncloud <= 9.1.5
Vendor Homepage : https://nextcloud.com/
                  https://owncloud.org/
Vulnerability Type: Reflected Cross Site Scripting
Severity: Low
CVE: CVE-2017-0891


Product
-------------------

Nextcloud is a open source software for cloud storage service. Also,
this software are more features for synchronizing. e.g. Calendar,
contacts, tasks or RSS readers.
It is a fork from Owncloud. Currently, Owncloud is working on
backporting this vulnerability to be fixed in the next release, I
hope.                                                                                                                                                                                                           

                                                                                                                                                                                                                  

                                                                                                                                                                                                                  

Description                                                                                                                                                                                                       

-------------------                                                                                                                                                

A HTML injection vulnerability flaw in the Nextcloud and Owncloud.
Through this vulnerability an attacker could manipulate the website.
This vulnerability could affect to the logged users. An attacker could
send a malicious link (that contains the manipulated URL) to a
legitimate user that he is logged in and simulate the login screen to
stole the password (phishing), or multiple attacks more, like XSS.
Nextcloud and ownCloud use Content-Security-Policy which prevents
execution of inline JavaScript. However, as of  now prominently Internet
Explorer hasnt implemented Content-Security-Policy thus being at risk
against this reflected Cross-Site Scripting

Exist more options to attack, for example, redirect the content of an
<object> or <script> to a saved and shared items of your directory.
Also, the mimetypes are well configured and the most browsers will not
execute a javascript file that doesnt have the javascript content-type.

                                                                                                                                                                                                                                                                                                                                                                                                                                    

Source
code:                                                                                                                                                                                                

https://github.com/nextcloud/server/pull/4228
https://github.com/owncloud/core/pull/27723                                                                                                                 

                                                                                                                                                                                                                  

                                                                                                                                                                                                                  

Proof of
Concept                                                                                                                                                                                                  

-------------------
PoC:
https://site/index.php/apps/files/ajax/download.php?files=%00&dir=HTMLCODE




Solution
-------------------
Update to the latest versions.


More info:
https://nextcloud.com/security/advisory/?id=nc-sa-2017-008
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-0891
https://hackerone.com/reports/216812




Advisory Timeline
--------------------

22/03/2017 - Informed to Owncloud about the issue via Hackerone.
28/03/2017 - Informed to Nextcloud about the issue via Hackerone.
28/03/2017 - Nextcloud answered me and confirmed the vulnerability.
20/04/2017 - Send an email to Owncloud security...
21/04/2017 - Owncloud confirmed the vulnerability via HackerOne and they
are working on the fix.
21/04/2017 - Nextcloud awarded me with 450$!
24/04/2017 - Nextcloud released new versions with the vulnerabilty fixed.
08/05/2017 - Nextcloud released the security advisories.
15/05/2017 - Public disclosure.



Both are very good software. The vulnerability is not very risky. I
guess Owncloud will release a new version this month. :)


Credits & Authors
--------------------
Manuel Mancera (@sinkmanu)


Thanks to Lukas Reschke from Nextcloud for the fast replies and
commitment with the security. A good transparency and collaboration
makes the software better.


Disclaimer
-------------------
All information is provided without warranty. The intent is to provide
information to secure infrastructure and/or systems, not to be able to
attack or damage.