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
Newest First  |  Oldest First  |  Threaded View
Why Cyber-Risk Is a C-Suite Issue
Marc Wilczek, Digital Strategist & CIO Advisor,  11/12/2019
Unreasonable Security Best Practices vs. Good Risk Management
Jack Freund, Director, Risk Science at RiskLens,  11/13/2019
Breaches Are Inevitable, So Embrace the Chaos
Ariel Zeitlin, Chief Technology Officer & Co-Founder, Guardicore,  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-2016-5285
PUBLISHED: 2019-11-15
Null pointer dereference vulnerability exists in K11_SignWithSymKey / ssl3_ComputeRecordMACConstantTime in NSS before 3.26, which causes the TLS/SSL server using NSS to crash.
CVE-2009-5047
PUBLISHED: 2019-11-15
Jetty 6.x before 6.1.22 suffers from an escape sequence injection vulnerability from two different vectors: 1) "Cookie Dump Servlet" and 2) Http Content-Length header. 1) A POST request to the form at "/test/cookie/" with the "Age" parameter set to a string throws a &qu...
CVE-2013-4584
PUBLISHED: 2019-11-15
Perdition before 2.2 may have weak security when handling outbound connections, caused by an error in the STARTTLS IMAP and POP server. ssl_outgoing_ciphers not being applied to STARTTLS connections
CVE-2013-7087
PUBLISHED: 2019-11-15
ClamAV before 0.97.7 has WWPack corrupt heap memory
CVE-2013-7088
PUBLISHED: 2019-11-15
ClamAV before 0.97.7 has buffer overflow in the libclamav component