NextCloud and OwnCloud suffer from a cross site scripting vulnerability in their error pages. OwnCloud versions 9.1.5 and below are affected. NextCloud versions prior to 11.0.3, 10.0.5, and 9.0.58 are affected.
90a88078574ed841e7ddfd88ba6d1a4e
==================================================================
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 hasn't 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 doesn't 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.