Home/API Security Checklist
🛡️ Application Security & DevSecOpsOWASP API Security Top 10 (2023)

API Security & OWASP Top 10 Hardening Checklist

Harden your REST, GraphQL, and microservice APIs against modern breach vectors. Evaluate compliance against all 10 OWASP API categories (BOLA, broken authentication, BOPLA mass assignment, SSRF, resource exhaustion), inspect actionable remediation code snippets, and run ready-made penetration testing curl commands.

Filter Severity:

API Hardening Posture Index

33%(80/245 pts)
Grade F
Verified Controls:8 / 24
Critical Baselines:3 / 8

🛡️ OWASP API Security Top 10 (2023 Edition) Standards(10 categories)

API1:2023Critical(1/3 verified)

Broken Object Level Authorization (BOLA)

Endpoints expose object IDs where user authorization to that specific object is never verified on the server side.

🚨 Attack Vector Scenario:An attacker changes `/api/invoices/1042` to `/api/invoices/1043` and views proprietary billing data belonging to another tenant.
Hardening Verification Controls:
Recommended Control: Snyk (Code SAST & API Analysis)Evaluate Solution →
API2:2023Critical(2/3 verified)

Broken Authentication

Authentication mechanisms are incorrectly implemented, permitting credential stuffing, token forgery, or password reset flaws.

🚨 Attack Vector Scenario:Adversary runs automated credential-stuffing against `/api/auth/login` without being throttled, or exploits weak JWT HMAC keys.
Hardening Verification Controls:
Recommended Control: Okta (Enterprise Identity & Auth)Evaluate Solution →
API3:2023High(1/2 verified)

Broken Object Property Level Authorization (BOPLA)

Lack of property validation allows attackers to manipulate sensitive properties via Mass Assignment or view hidden attributes.

🚨 Attack Vector Scenario:User submits `PATCH /api/user` with `{"role": "admin", "isVerified": true}` and the ORM blindly persists all payload fields.
Hardening Verification Controls:
Recommended Control: Snyk (AppSec Code Quality)Evaluate Solution →
API4:2023High(1/3 verified)

Unrestricted Resource Consumption

API lacks limits on execution timeouts, maximum memory, request payload sizes, or pagination records.

🚨 Attack Vector Scenario:Client sends query `?page_size=10000000` causing database full-table scan and Node.js process out-of-memory crash.
Hardening Verification Controls:
Recommended Control: Cloudflare (API Gateway & Throttling)Evaluate Solution →
API5:2023High(1/2 verified)

Broken Function Level Authorization (BFLA)

Administrative or sensitive functions are accessible by standard users due to missing role checks at the routing layer.

🚨 Attack Vector Scenario:A regular employee sends a request to `DELETE /api/v1/organizations/42/purge` and the server executes it because it only checked authentication.
Hardening Verification Controls:
Recommended Control: Okta (Privileged Access Management)Evaluate Solution →
API6:2023Medium(0/2 verified)

Unrestricted Access to Sensitive Business Flows

Automated bots exploit business logic (purchasing limited inventory, scraping pricing, scalping coupons) without technical errors.

🚨 Attack Vector Scenario:Automated scalping script exhausts limited event tickets within 200 milliseconds of release.
Hardening Verification Controls:
Recommended Control: Cloudflare (Bot Management & WAF)Evaluate Solution →
API7:2023Critical(0/2 verified)

Server-Side Request Forgery (SSRF)

API accepts user-supplied URLs to fetch remote resources without validating the target IP address against internal/private ranges.

🚨 Attack Vector Scenario:Adversary provides `http://169.254.169.254/latest/meta-data/iam/security-credentials/` as an avatar URL to steal AWS IAM keys.
Hardening Verification Controls:
Recommended Control: Wiz (Cloud Posture & IAM Security)Evaluate Solution →
API8:2023Medium(2/3 verified)

Security Misconfiguration

API servers reveal verbose error stack traces, have permissive CORS headers, or miss crucial security response headers.

🚨 Attack Vector Scenario:API returns 500 error containing PostgreSQL database passwords and file system paths in JSON output.
Hardening Verification Controls:
Recommended Control: Tenable (Vulnerability Assessment)Evaluate Solution →
API9:2023Medium(0/2 verified)

Improper Inventory Management

Organizations expose deprecated API versions (v1, beta, staging) that lack security patches deployed to current versions.

🚨 Attack Vector Scenario:Attacker targets `/api/v1/auth` which still has an unpatched SQL injection bug fixed in `/api/v2`.
Hardening Verification Controls:
Recommended Control: Snyk (API Contract Governance)Evaluate Solution →
API10:2023High(0/2 verified)

Unsafe Consumption of APIs

Developers trust third-party vendor APIs more than user inputs, leading to downstream injection and bypasses.

🚨 Attack Vector Scenario:Adversary injects malicious SQL payload into a CRM vendor field which gets fetched and executed blindly by internal batch job.
Hardening Verification Controls:
Recommended Control: Bitwarden (API Secret Governance)Evaluate Solution →