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.

Cloud

3/12/2019
10:30 AM
Ory Segal
Ory Segal
Commentary
Connect Directly
Twitter
LinkedIn
RSS
E-Mail vvv
50%
50%

The 12 Worst Serverless Security Risks

A new guide from the Cloud Security Alliance offers mitigations, best practices, and a comparison between traditional applications and their serverless counterparts.

Serverless computing has seen tremendous growth in recent years. This growth was accompanied by a flourishing rich ecosystem of new solutions that offer observability, real-time tracing, deployment frameworks, and application security.

As awareness around serverless security risks started to gain attention, scoffers, and cynics repeated the age-old habit of calling "FUD" — fear, uncertainty and doubt — on any attempt to point out that while serverless offers tremendous value in the form of rapid software development and huge reduction in TCO, there are also new security challenges.

The Evolving Serverless Ecosystem
One of the key indicators for a mature technology is the ecosystem that evolves around it. Having a thriving community, extensive documentation, best-practices guides, and tooling is what will drive organizations to trust new technologies and adopt them.

Recently, the Cloud Security Alliance (CSA) joined forces with PureSec, where I am CTO and co-founder, to develop an extensive serverless security guide. The guide draws much of its content from last year's effort, but with the addition of two important risk classes.

The guide, titled "The 12 Most Critical Risks for Serverless Applications," was written for both security and development audiences dealing with serverless applications but goes well beyond pointing the risks. It also provides best practices for all major platforms. The risk categories are defined as follows:

Risk 1: Function Event-Data Injection
Serverless functions can consume input from different types of event sources, and each event source has its own message format and encoding schemes. Various parts of these event messages may contain attacker-controlled or untrusted inputs that should be carefully inspected.

Risk 2: Broken Authentication
Since serverless promotes a microservices-oriented system design, applications may contain dozens or even hundreds of functions. Applying robust authentication can easily go awry if not executed carefully.

Risk 3: Insecure Serverless Deployment Configuration
Cloud providers offer many configuration settings to adapt services for specific needs. Out-of-the-box settings are not necessarily always the most secure. As more organizations are migrating to the cloud, cloud configuration flaws will become more prevalent.

Risk 4: Overprivileged Function Permissions and Roles
Managing function permissions and roles is one of the most daunting security tasks organizations are facing when deploying applications to the cloud. It is quite common to see developers cut corners and apply a "wildcard" (catch-all) permission model.

Risk 5: Inadequate Function Monitoring and Logging
While most cloud vendors provide extremely capable logging facilities, these logs are not always suitable for the purpose of providing a full security event audit trail at the application layer.

Risk 6: Insecure Third-Party Dependencies
While the problem of insecure third-party libraries is not specific to serverless, being able to detect malicious packages is more complex in serverless environments given the lack of ability to apply network and behavioral security controls.

Risk 7: Insecure Application Secrets Storage
One of the most frequently recurring mistakes related to application secrets storage, is to simply store these secrets in a plain text configuration file that is a part of the software project. Another common mistake is to store these secrets in plain text, as environment variables.

Risk 8: Denial-of-Service and Financial Resource Exhaustion
Serverless architectures bring promises of automated scalability and high availability; however, as with any other type of application, it is critical to apply best practices and good design in order to avoid bottlenecks.

Risk 9: Serverless Business Logic Manipulation
Business logic manipulation is a common problem in many types of software. However, serverless applications are unique, as they often follow the microservices design and contain numerous functions chained together to form the overall logic. Without proper enforcement, attackers may be able to tamper with the intended logic. 

Risk 10: Improper Exception Handling and Verbose Error Messages
Line-by-line debugging options for serverless-based applications are limited (and more complex) when compared with debugging capabilities for standard applications. As a result, developers frequently adopt the use of verbose error messages, which may leak sensitive data.

Risk 11: Legacy/Unused Functions & Cloud Resources
Over time, serverless functions and related cloud resources may become obsolete and should be decommissioned. The reason behind pruning obsolete components is to reduce unnecessary costs and eliminate avoidable attack surfaces. Obsolete serverless application components may include deprecated serverless function versions, unused cloud resources, unnecessary event sources, unused roles or identities, and unused dependencies.

Risk 12: Cross-Execution Data Persistency
Serverless platforms offer application developers local disk storage, environment variables, and memory to perform their tasks. To make serverless platforms efficient in handling new invocations, cloud providers might reuse the execution environment for subsequent invocations. If the serverless execution environment is reused for subsequent invocations, belonging to different users or sessions, it is possible that sensitive data will be left behind and might be exposed.

It's important to note that the purpose of the guide is to raise awareness and help organizations innovate with serverless securely, not to spread fear. Security risks exist in any type of platform, and serverless is no different. CSA's goal in raising these issues is to encourage organizations to adopt new technologies while avoiding risks and common mistakes.

Editors' note: Ory Segal is a CSA Israel chapter board member. He led the effort behind the "The 12 Most Critical Risks for Serverless Applications" guide.

Related Content:

 

 

 

Join Dark Reading LIVE for two cybersecurity summits at Interop 2019. Learn from the industry's most knowledgeable IT security experts. Check out the Interop agenda here.

Ory Segal is a world-renowned expert in application security, with 20 years of experience in the field. Ory is the CTO and co-founder of PureSec, a start-up that enables organizations to secure serverless applications. Prior to PureSec, Ory was senior director of threat ... View Full Bio
 

Recommended Reading:

Comment  | 
Print  | 
More Insights
Comments
Oldest First  |  Newest First  |  Threaded View
News
Inside the Ransomware Campaigns Targeting Exchange Servers
Kelly Sheridan, Staff Editor, Dark Reading,  4/2/2021
Commentary
Beyond MITRE ATT&CK: The Case for a New Cyber Kill Chain
Rik Turner, Principal Analyst, Infrastructure Solutions, Omdia,  3/30/2021
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
2021 Top Enterprise IT Trends
We've identified the key trends that are poised to impact the IT landscape in 2021. Find out why they're important and how they will affect you today!
Flash Poll
How Enterprises are Developing Secure Applications
How Enterprises are Developing Secure Applications
Recent breaches of third-party apps are driving many organizations to think harder about the security of their off-the-shelf software as they continue to move left in secure software development practices.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2021-30477
PUBLISHED: 2021-04-15
An issue was discovered in Zulip Server before 3.4. A bug in the implementation of replies to messages sent by outgoing webhooks to private streams meant that an outgoing webhook bot could be used to send messages to private streams that the user was not intended to be able to send messages to.
CVE-2021-30478
PUBLISHED: 2021-04-15
An issue was discovered in Zulip Server before 3.4. A bug in the implementation of the can_forge_sender permission (previously is_api_super_user) resulted in users with this permission being able to send messages appearing as if sent by a system bot, including to other organizations hosted by the sa...
CVE-2021-30479
PUBLISHED: 2021-04-15
An issue was discovered in Zulip Server before 3.4. A bug in the implementation of the all_public_streams API feature resulted in guest users being able to receive message traffic to public streams that should have been only accessible to members of the organization.
CVE-2021-30487
PUBLISHED: 2021-04-15
In the topic moving API in Zulip Server 3.x before 3.4, organization administrators were able to move messages to streams in other organizations hosted by the same Zulip installation.
CVE-2020-36288
PUBLISHED: 2021-04-15
The issue navigation and search view in Jira Server and Data Center before version 8.5.12, from version 8.6.0 before version 8.13.4, and from version 8.14.0 before version 8.15.1 allows remote attackers to inject arbitrary HTML or JavaScript via a DOM Cross-Site Scripting (XSS) vulnerability caused ...