lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date: Fri, 19 Oct 2012 12:14:38 +0200
From: Roi Saltzman <roisaltzman@...il.com>
To: bugtraq <bugtraq@...urityfocus.com>
Subject: Old Habits Die Hard: Cross-Zone Scripting in Dropbox & Google Drive
 Mobile Apps

1 Introduction
================================================
Recently, I discovered a security vulnerability in several file-sharing apps:
DropBox iOS app, DropBox Android app and Google Drive iOS app.

Exploiting this vulnerability, an attacker could steal arbitrary files
from a DropBox / Google Drive user by tricking him into viewing a malicious
HTML file inside the mobile app.

The full blog post, including the advisories, can be found at:
http://bit.ly/R6nNee


2 Vulnerability
================================================
A significant feature of file-sharing apps is allowing a user to view either
his files or files shared with him. The apps achieve this by using an embedded
browser (using the UIWebView/WebView classes in iOS/Android respectively)
to display the contents of these files. Amongst numerous file types,
these apps allow the user to view HTML files in a rendered format.
To do so, these apps use an embedded browser window to render the
locally stored HTML file.

The method in which these apps render an HTML file has two side effects:
	1. JavaScript code contained in the HTML file is automatically executed
	2. The HTML content is loaded in a privileged file zone

Execution of malicious JavaScript code allows an attacker to steal potentially
valuable information from the DOM of the embedded browser, an attack dubbed
"Cross-Application Scripting" (XAS). However, because these apps load the HTML
file from a privileged zone such as
"file:///var/mobile/Applications/APP_UUID/…/maliciousfile.html"
(in iOS), the malicious JavaScript can also access the file system with the
same permissions as the app.


3 Impact
================================================
By exploiting this vulnerability, an attacker could read and retrieve files
that the apps themselves can access. For instance, previously cached files,
application configuration files, the device's address book, etc.
Furthermore, additional access can be achieved pending on the OS:

	- In iOS, read access to the user's DropBox unencrypted credentials
	(../Library/Preferences/com.getdropbox.Dropbox.plist). Having access to
	the user's credentials allows the attacker to retrieve arbitrary files from
	the user's account as well as to persist the attack by modifying other
	HTML files.

	- In Android, read access to the device's SD card is possible if the app
	has	permission to do so.

Once the HTML file is rendered, the JavaScript code executes immediately.
However, when the user has finished viewing the file (e.g. pressed the
Home button),
code execution is suspended until the user views the file again.


4 Vulnerable versions
================================================
DropBox:
	- Version 1.4.6 (iOS)
	- Version 2.0.1 (Android)
Google Drive:
	- Version 1.0.1 (iOS)


5 Credit
================================================
Discovered by Roi Saltzman <roisaltzman () [google's mail server] com>


6 Acknowledgments
================================================
I'd like to thank the DropBox / Google  security response teams for
the quick fixes!

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ