Categories
Arval Technologies

Why is API security important today?

Based on OWASP API Security Project “the APIs are a critical part of modern mobile, SaaS and web applications and can be found in customer-facing, partner-facing and internal applications. By nature, APIs expose application logic and sensitive data such as Personally Identifiable Information (PII) and because of this have increasingly become a target for attackers. Without secure APIs, rapid innovation would be impossible.

Application programming interface (API) security is the practice of protecting web and mobile applications’ backend framework, which is referred to as the application programming interface. API security refers to the practices and tools used to protect this data.

Why is API security important for business?

Today, companies are somehow connected in the digital value chain. The business uses APIs to connect different services and to interchange data.

The organizations are improving their business model, transforming their architecture based on monolithic web applications to API/microservice architecture. All services are now reduced to a few microservices, which are used many times.

A hacked API can lead to a security breach of your data

An insecure API is an easy point to be attacked for hackers to gain access to business digital assets. The attackers could perform any kind of threat, like DDoS, any injection, broken access control, etc.

What is OWASP API Security Top 10?

API Security focuses on strategies and solutions to understand and mitigate the vulnerabilities and security risks of Application Programming Interfaces (APIs).

The first step is understanding the security risk in the system. To identify vulnerability points OWASP developed the TOP 10, that show as follow:

APIs tend to expose endpoints that handle object identifiers, creating a wide attack surface Level Access Control issue. Object level authorization checks should be considered in every function that accesses a data source using an input from the user. Read more.

API1:2019 Broken Object Level Authorization

Authentication mechanisms are often implemented incorrectly, allowing attackers to compromise authentication tokens or to exploit implementation flaws to assume other user’s identities temporarily or permanently. Compromising a system’s ability to identify the client/user, compromises API security overall. Read more.

API3:2019 Excessive Data Exposure

Looking forward to generic implementations, developers tend to expose all object properties without considering their individual sensitivity, relying on clients to perform the data filtering before displaying it to the user. Read more.

API4:2019 Lack of Resources & Rate Limiting

Quite often, APIs do not impose any restrictions on the size or number of resources that can be requested by the client/user. Not only can this impact the API server performance, leading to Denial of Service (DoS), but also leaves the door open to authentication flaws such as brute force. Read more.

API5:2019 Broken Function Level Authorization

Complex access control policies with different hierarchies, groups, and roles, and an unclear separation between administrative and regular functions, tend to lead to authorization flaws. By exploiting these issues, attackers gain access to other users’ resources and/or administrative functions. Read more.

API6:2019 Mass Assignment

Binding client provided data (e.g., JSON) to data models, without proper properties filtering based on an allowlist, usually leads to Mass Assignment. Either guessing objects properties, exploring other API endpoints, reading the documentation, or providing additional object properties in request payloads, allows attackers to modify object properties they are not supposed to. Read more.

API7:2019 Security Misconfiguration

Security misconfiguration is commonly a result of unsecure default configurations, incomplete or ad-hoc configurations, open cloud storage, misconfigured HTTP headers, unnecessary HTTP methods, permissive Cross-Origin resource sharing (CORS), and verbose error messages containing sensitive information. Read more.

API8:2019 Injection

Injection flaws, such as SQL, NoSQL, Command Injection, etc., occur when untrusted data is sent to an interpreter as part of a command or query. The attacker’s malicious data can trick the interpreter into executing unintended commands or accessing data without proper authorization. Read more.

API9:2019 Improper Assets Management

APIs tend to expose more endpoints than traditional web applications, making proper and updated documentation highly important. Proper hosts and deployed API versions inventory also play an important role to mitigate issues such as deprecated API versions and exposed debug endpoints. Read more.

API10:2019 Insufficient Logging & Monitoring

Insufficient logging and monitoring, coupled with missing or ineffective integration with incident response, allows attackers to further attack systems, maintain persistence, pivot to more systems to tamper with, extract, or destroy data. Most breach studies demonstrate the time to detect a breach is over 200 days, typically detected by external parties rather than internal processes or monitoring. Read more.

References:

  • OWASP API Security (2019): https://owasp.org/www-project-api-security/
  • OWASP API Security Top 10 (2019): https://github.com/OWASP/API-Security/raw/master/2019/en/dist/owasp-api-security-top-10.pdf
  • ARVAL Tech (2022): https://arval.tech/

#ArvalTech #cybersecurity #infosec #technology