API Security Weekly: Issue 162
Google Cloud accounts compromised through APIs, GraphQL as an API gateway, a mega-guide for API security, and a new API security training course announced.
Join the DZone community and get the full member experience.Join For Free
This week, we have details of compromised Google Cloud accounts being used to mine cryptocurrency (mainly with weak or no passwords on API connections), there’s an article on how GraphQL can be used as an API gateway (including security controls), a very comprehensive guide to all things relating to API security, and a new API security training course from AppSecEngineer.
Vulnerability: Compromised Google Cloud Accounts Used to Mine Cryptocurrency
The main story this week comes from HackerNews and describes how attackers are able to exploit improperly secured Google Cloud Platform (GCP) tenants. The impact on affected users included compromising their cloud resources, like uploading cryptocurrency mining software, and ransomware and phishing attacks.
Of greatest concern is that the accounts could be compromised due to a lack of basic hygiene on the cloud tenants. The most common issue as well as exploit — affecting 48% of the instances — was weak or no password on user accounts and API connections that allowed attackers easy access to the cloud instances. Other exploits included installing third-party software in the cloud instances and leaking credentials through GitHub repositories.
The key takeaway here is that whilst cloud platforms are a great business enabler, their complexity frequently leads to misconfiguration which results in potentially vulnerable deployments. Additionally, many skilled attackers will know what the common misconfigurations are and home in on them, allowing them to easily exploit them in the attacks on systems.
Article: GraphQL as an API Gateway
An interesting article this week by Tj Blogumas describes a novel approach to using GraphQL as an API gateway.
Blogumas describes a typical design problem encountered in the adoption of a microservices architecture: how to present a single fronted to consumers without exposing the complexity of the backing microservices mesh. Traditionally, this has been the domain of the API gateways, but Blogumas demonstrates how a GraphQL frontend can achieve the same effect.
Of interest here is how you can implement security controls at the GraphQL gateway level rather than in the backing microservice APIs. The key advantage to this approach is that key security controls are centralized in one place — implemented only once at the gateway level, rather than at in individual APIs. This reduces the burden on development teams and reduces the likelihood that such controls get accidentally omitted.
Blogumas provides several examples of the type of security controls that can be implemented, such as:
- Depth limiting: Reduce the depth of allowed queries to reduce the impact of Denial of Service (DoS) based attacks.
- Rate limiting: Reduce the rate at which requests can be made to specific API endpoints to mitigate the effect of DoS or brute force attacks.
- Query cost limitations: Reduce excessively complex queries to mitigate DoS attacks.
An interesting take on API architecture that we will surely hear more about.
Guide: "Awesome API Security" Guide
This vastly comprehensive guide covers, for example, the following topics:
- Mind mapping
- Checklists and cheatsheets
- Training, walkthroughs, and laboratories
- Enumeration and scanning
- Fuzzing and API keys
- Presentations, videos, playlists, and podcasts
- Design and architecture
This is bound to prove an invaluable resource for anyone working in or around API security — thanks to André for this great resource!
Training: AppSecEngineer’s 2021 Guide to API Security
Finally, for this week, we have news of upcoming API security training courses by the AppSecEngineer team, featured in their review of API security in 2021.
The course includes a deep dive into both offensive and defensive techniques for API developers. On offense, it covers typical vulnerabilities specific to REST APIs and how malicious actors can exploit them. On defense, it focuses on defensive techniques in a hands-on laboratory environment that follows the OWASP API Security Top 10 as a content outline.
It’s always good to see new API security training and — based on previous AppSecEngineer courses — this should prove to be a great success.
You can subscribe to this newsletter at APIsecurity.io.
Published at DZone with permission of Colin Domoney. See the original article here.
Opinions expressed by DZone contributors are their own.