University researchers have built an Android app that secretly snatches valuable personal data from other mobile apps, such as webmail, shopping and online banking.
The app, demonstrated Friday at the USENIX Security Conference in San Diego, stole login credentials from Google Gmail, a social security number from an H&R Block app, a credit card number from a NewEgg app and a bank-check image from a Chase Bank app.
The attack developed by researchers from the University of Michigan and the University of California, Riverside, did not exploit a flaw in any of the apps.
Instead, the researchers took advantage of the operating system's graphical user interface (GUI) design. While the malicious app was demonstrated on Android, it could theoretically work on iOS, Mac OS X and Windows, which use the same GUI design.
Because the weakness is a design problem, there is no easy fix, Zhiyun Qian, a co-author of the research, said. The GUI portion of the OS would have to be redesigned, which would cause compatibility problems for apps already in the market.
"There're no easy, perfect solution for this problem," Qian said. "It's not entirely clear to us how to fix the problem easily."
Google did not respond to a request for comment.
The design flaw is in letting apps share memory on a smartphone or other device for mundane tasks, such as the use of an app's GUI.
The amount of memory taken by the GUI fluctuates according to the task being performed by the user. After closely monitoring memory usage of the target app for no longer than a day, the researchers' app can figure out when a user is about to type in a user name and password or fill out a form.
At that exact moment, the malicious app delivers a fraudulent screen identical to the one in the target app and captures the inputted data.
Once the data is collected, the app hides its tracks by returning an error message to trick the user into retyping the data in the target app as if nothing unusual happened.
For capturing images, such as a bank-check image, the researchers' app exploits the device's photo preview function to capture its own image.
The research app runs in the background and does not get in the way of any other activity on the phone. To operate, it only needs access to the device's Internet connection.
"We do not require a lot of permissions," Qian said. "We only require the Internet permission, which is a very typical permission that is not suspicious at all."
The research app, which was tested on seven popular Android apps, had an average success rate ranging from 83 to 94 percent. The only exception was Amazon's mobile app. The complexity of its operation made it more difficult for the research app to determine user activity.
The other apps tested were from WebMD and Hotel.com
The Infection rate of Android devices is estimated to be as high as 4 percent and as low as 0.0009 of a percent, depending on the study. On iOS devices the rate is even lower, because Apple vets all apps, which are only available through the App Store.
The most likely scenario for getting malware on an Android device is through a third-party app store, which are common in Eastern Europe and Asia. In the U.S., most Android apps are downloaded from the more secure Google Play store.
A video demonstration of the researchers' malware is available online.