API Security Testing: Addressing the OWASP API Top 10

Practical testing techniques for each of the OWASP API Security Top 10 vulnerabilities.

Contact Us
Back to All Blogs
May 20, 2019 10 min read Security

Neha Gupta

Security Practice Lead

APIs are the primary attack surface for modern applications. The OWASP API Security Top 10 identifies the most critical risks. Here’s how to test for each one.

API1: Broken Object Level Authorization (BOLA)

The most common API vulnerability. Test by accessing resources using IDs belonging to other users. Automate by replacing resource IDs in API responses and replaying requests. If you can access another user’s data by changing an ID, you have a BOLA vulnerability.

API2: Broken Authentication

Test credential stuffing resistance, brute force protection, token expiration, and session management. Pay special attention to password reset flows and OAuth implementations — they’re frequently misconfigured.

API3: Broken Object Property Level Authorization

Test by including additional properties in API requests. If you can modify properties you shouldn’t (like user roles or pricing), the API lacks proper property-level authorization.

API4: Unrestricted Resource Consumption

Test rate limiting by sending high volumes of requests. Check if large payloads are accepted. Verify pagination limits. Without these controls, APIs are vulnerable to denial of service.

API5: Broken Function Level Authorization

Test by calling administrative endpoints with regular user tokens. Test horizontal and vertical privilege escalation. Automated tools can enumerate endpoints and test each with different authorization levels.

APIs 6-10 In Brief

API6 (Mass Assignment): Send additional fields in requests. API7 (Security Misconfiguration): Check CORS, error messages, default credentials. API8 (Lack of Protection from Automated Threats): Test bot detection and credential stuffing resistance. API9 (Improper Assets Management): Find undocumented or deprecated endpoints. API10 (Unsafe API Consumption): Test how the API handles malicious responses from third-party APIs.

Systematic Approach

Don’t test these vulnerabilities ad-hoc. Build a systematic API security test suite that covers all 10 categories and runs in your CI/CD pipeline. Manual penetration testing complements automated testing but shouldn’t replace it.

Tags

API SecurityOWASPPenetration TestingVulnerabilities

Want to learn more?

Our experts are ready to help you implement these strategies in your organization.

Get in Touch