API Security

What is API Security?

API security is the practice of protecting application programming interfaces (APIs) — the communication layer through which software components, microservices, mobile apps, and third-party integrations exchange data and invoke functionality — from unauthorized access, misuse, data leakage, and exploitation. APIs have become the dominant attack surface in modern application environments: Akamai reports that API traffic now represents over 83% of all internet traffic, and Salt Security's 2025 State of API Security report found that 94% of organizations experienced API security incidents in the prior year. The OWASP API Security Top 10 provides the canonical taxonomy of the most critical API vulnerability classes.

Description

The OWASP API Security Top 10 (2023) defines the most prevalent and impactful API vulnerabilities, several of which appear consistently in application penetration testing findings. Broken Object Level Authorization (BOLA) — ranked #1 — allows attackers to access other users' data by manipulating resource identifiers in API requests. A caller authenticated as user A substitutes user B's ID in the request URL and retrieves their data because the API checks authentication but not ownership. Broken Authentication (#2) covers insecure credential handling, weak JWT security implementations, and missing rate limiting that enables credential stuffing against API endpoints. Broken Object Property Level Authorization (#3) exposes sensitive data fields through APIs that return more information than the caller is authorized to see — a common flaw in GraphQL implementations where introspection is left enabled and field-level authorization is not enforced per resolver. Unrestricted Resource Consumption (#4) enables denial-of-service through deeply nested queries, missing pagination limits, or absent rate controls. The convergence of API sprawl, microservices architectures, and rapid development cycles means many APIs are deployed without security review, tested only for functionality, and left undocumented — creating shadow IT-equivalent risk in the API layer.

Usage and Examples

A healthcare organization's patient portal API exposes a GET /patients/{id}/records endpoint. Authentication is required — callers must present a valid JWT. But the endpoint performs no ownership check: it returns records for any patient ID, not just the authenticated user's own records. An attacker who creates a legitimate account and iterates through sequential patient IDs extracts the complete record set. This is BOLA — OWASP API #1 — and it appears in virtually every comprehensive API penetration test. API security requires controls at multiple layers: authentication (who are you?), authorization (are you allowed to do this to this specific resource?), rate limiting (how fast?), input validation (what can you send?), and output filtering (what should you receive?). An API gateway enforces the first three; object-level and property-level authorization must be implemented in application code. SQL injection tools are frequently applicable at API endpoints that pass SQL queries.

How Does This Relate to Penetration Testing?

API penetration testing is one of the highest-value application security assessments organizations can commission. Modern applications are almost entirely API-driven, and API vulnerabilities frequently expose the same data and functionality as traditional application vulnerabilities — without the visual interface that might make an issue obvious. Evolve Security's API penetration testing engagements systematically evaluate authentication, authorization (object-level and function-level), input handling, rate limiting, and business logic across REST, GraphQL, and other API protocols. Findings are mapped to the OWASP API Top 10 and prioritized by exploitability and data sensitivity, giving development teams a clear remediation roadmap. Evolve Security's API Penetration Testing service evaluates your APIs against the OWASP API Top 10 and real-world attacker techniques — providing the evidence needed to build secure-by-default API architectures.

Previous term
No previous terms!
Next term
No next terms!