Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Application Security

6/4/2015
06:30 PM
Connect Directly
Twitter
LinkedIn
RSS
E-Mail
100%
0%

Web App Developers Putting Millions At Risk

German security researchers find 56 million data records lying unprotected in cloud back-end databases.

A troubling failure by many web application developers to properly secure how their apps connect to mobile backend-as-a-service systems like Facebook’s Parse and Amazon’s AWS could be leaving sensitive information on millions of Internet users vulnerable to compromise.

Researchers at Germany’s LOEWE Center for Advanced Security Research Darmstadt (CASED) recently issued an alert on the issue, claiming they had found a stunning 56 million sets of unprotected data in cloud databases like Parse and AWS. The exposed records included email addresses, passwords, health records, and other sensitive data belonging to hapless users of web applications that use these backend web databases, the researchers said.

At issue is the manner in which many web developers integrate support for BaaS in their applications, Eric Bodden, principal investigator in secure services at CASED said in a FAQ on the topic.

Cloud databases like Parse and AWS make it easy for web application developers to enable data storage and synchronization across multiple platforms like iOS, Android, Windows, and OS X.  Backend-as-a-service technologies eliminate the need for application developers to set up their own servers for storing and synchronizing user data. Instead, with just a few lines of authenticating code, the developers can connect their apps to backend systems like Parse and AWS and enable the same capability for users. The weakest form of authentication uses a simple API-token or a number that is embedded into the app's code. 

“With BaaS, app developers can simply connect to pre-configured servers using a few lines of program code,” Bodden noted. “This makes data storage and synchronization through the cloud very easy,” he said.

The problem lies in the cavalier manner in which many developers integrate this code into their software. Though cloud providers like Facebook and AWS have published extensive documentation on how to securely include support for BaaS systems in web applications, many developers ignore the information completely, Bodden said.

CASED researchers scanned about 750,000 applications from Google’s Play Store and Apple’s App Store, using internally developed tools.

“In virtually all apps the research team investigated, access to the data associated with the app is secured only by a secret key, which is directly embedded into the app,” Budden wrote. Anyone that knows how to extract the key can then use it to access all the data stored in the backend database that is associated with the application. This can expose anything that the users of the app store in the databases -- including names, address, photos, and other sensitive data.

The research report highlights the risks associated with Application Programming Interface (API)-based application authentication and permission settings, says Alex Held, chief of research for SecurityScorecard.

Because of the manner in which many application developers build in support for BaaS, it becomes trivially easy for an attacker to decompile an application, find the API that is being used to connect to the backend system, and build a rogue app using the same API.

If the developer has not taken the effort to properly secure access to the BaaS systems, the rogue application will have the same access to the database as the original application, he says. The Parse or AWS database will simply assume that the rogue application is the legitimate application based on the API that is being used to make the connection.

Ideally, if developers implement the proper access controls, the rogue application should not have access to database, Held said. Troublingly, it is not very difficult for a threat actor to decompile web apps using Parse or AWS as backend to see if they are vulnerable to the issue, Held added.

According to Bodden, though CASED researchers found thousands of applications that are vulnerable to the issue,  there’s little that users can do in terms of mitigating risk. The fault primarily lies with the developers and not the providers of the backend systems, he wrote.

CASED has contacted Facebook, Amazon, Google, and Apple and provided them with a list of developers whose applications were found to be vulnerable, he said.

Meanwhile, developers themselves should follow the security documentation provided by BaaS providers and implement the proper access control lists for their apps, he said.

 

Jai Vijayan is a seasoned technology reporter with over 20 years of experience in IT trade journalism. He was most recently a Senior Editor at Computerworld, where he covered information security and data privacy issues for the publication. Over the course of his 20-year ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Threaded  |  Newest First  |  Oldest First
Why Cyber-Risk Is a C-Suite Issue
Marc Wilczek, Digital Strategist & CIO Advisor,  11/12/2019
DevSecOps: The Answer to the Cloud Security Skills Gap
Lamont Orange, Chief Information Security Officer at Netskope,  11/15/2019
Unreasonable Security Best Practices vs. Good Risk Management
Jack Freund, Director, Risk Science at RiskLens,  11/13/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
Navigating the Deluge of Security Data
In this Tech Digest, Dark Reading shares the experiences of some top security practitioners as they navigate volumes of security data. We examine some examples of how enterprises can cull this data to find the clues they need.
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-19040
PUBLISHED: 2019-11-17
KairosDB through 1.2.2 has XSS in view.html because of showErrorMessage in js/graph.js, as demonstrated by view.html?q= with a '"sampling":{"value":"<script>' substring.
CVE-2019-19041
PUBLISHED: 2019-11-17
An issue was discovered in Xorux Lpar2RRD 6.11 and Stor2RRD 2.61, as distributed in Xorux 2.41. They do not correctly verify the integrity of an upgrade package before processing it. As a result, official upgrade packages can be modified to inject an arbitrary Bash script that will be executed by th...
CVE-2019-19012
PUBLISHED: 2019-11-17
An integer overflow in the search_in_range function in regexec.c in Oniguruma 6.x before 6.9.4_rc2 leads to an out-of-bounds read, in which the offset of this read is under the control of an attacker. (This only affects the 32-bit compiled version). Remote attackers can cause a denial-of-service or ...
CVE-2019-19022
PUBLISHED: 2019-11-17
iTerm2 through 3.3.6 has potentially insufficient documentation about the presence of search history in com.googlecode.iterm2.plist, which might allow remote attackers to obtain sensitive information, as demonstrated by searching for the NoSyncSearchHistory string in .plist files within public Git r...
CVE-2019-19035
PUBLISHED: 2019-11-17
jhead 3.03 is affected by: heap-based buffer over-read. The impact is: Denial of service. The component is: ReadJpegSections and process_SOFn in jpgfile.c. The attack vector is: Open a specially crafted JPEG file.