API Penetration Testing Checklist: How Real-World Attacks Break APIs Before Scanners Do
Press enter or click to view image in full sizeHow Real-World Attacks Break APIs Before Scanners DoA 2026-6-4 08:16:42 Author: infosecwriteups.com(查看原文) 阅读量:11 收藏

Sana Jalil

Press enter or click to view image in full size

How Real-World Attacks Break APIs Before Scanners Do

APIs are the backbone of modern applications: powering mobile banking, e-commerce, healthcare systems, AI integrations, and microservices.

Today, APIs handle over 90% of global web traffic, yet they remain one of the most exploited attack surfaces in modern security incidents.

High-profile breaches like T-Mobile (37M records exposed) and Optus (9.8M records leaked) were not caused by advanced exploits: but by simple broken authorization and exposed API logic.

Get Sana Jalil’s stories in your inbox

Join Medium for free to get updates from this writer.

Remember me for faster sign in

And in both cases, automated scanners failed.Because API security failures are rarely technical bugs.They are logic flaws in how systems define trust, identity, and access.

Why APIs Break in Real World

APIs fail because:

  • Business logic is exposed directly through endpoints
  • Authorization is weaker than authentication
  • APIs evolve faster than security testing
  • Attackers test workflows, not just inputs

Scanners detect vulnerabilities. Attackers exploit behavior.

Black Box vs Grey Box Testing

Black Box

No internal access-only:

  • Base URL or application
  • Swagger (sometimes)
  • Mobile app (sometimes)

Focus:

  • Endpoint discovery (fuzzing)
  • Traffic interception (Burp/ZAP)
  • Shadow API detection

Common findings:

  • /admin
  • /internal
  • /debug
  • /v2, /beta

Grey Box

Partial access:

  • Postman collections
  • API documentation
  • Architecture insights

Enables deeper testing of:

  • Authorization logic
  • Token flows
  • Business workflows

API Recon (Attack Surface Mapping)

1. Endpoint Fuzzing

Test:

  • /api/v1/users
  • /api/v2/users
  • /internal/users

2. HTTP Method Testing

Check:

  • GET, POST, PUT, DELETE, PATCH, OPTIONS

3. Shadow APIs

Hidden or forgotten APIs in:

  • legacy systems
  • mobile backends
  • internal services exposed externally

4. Version Enumeration

Test:

  • /v1/
  • /v2/
  • /beta/

Older versions often lack proper security controls.

Authentication & Identity Testing

Common Failures

  • Weak login protection (no lockout / CAPTCHA)
  • User enumeration via error messages
  • Expired tokens still valid
  • API keys exposed or reused
  • Sensitive data in URLs

Example:

GET /reset?token=abc123

JWT Security Testing

Key Checks

  • alg: none bypass
  • Weak HS256 secrets (brute force)
  • Missing token expiration validation
  • Sensitive data in JWT payload

JWT is base64 encoded, not encrypted.

Authorization Testing (Critical Layer)

1. BOLA / IDOR

Change object references:

/user/123 → /user/456

If accessible → data exposure.

2. BFLA (Function-Level Access)

Test admin actions as normal user:

  • delete
  • update
  • privileged endpoints

3. Privilege Escalation

Check for:

  • role manipulation in request body
  • mass assignment flaws
  • hidden admin parameters

Example:

{"role": "admin"}

Input Validation & Injection

Test for:

  • SQL / NoSQL injection
  • command injection
  • malformed JSON payloads
  • unexpected data types

APIs often trust frontend validation -which is unsafe.

Business Logic Vulnerabilities (High Impact)

1. Pricing Manipulation

  • negative values
  • discount abuse
  • price tampering

2. Workflow Abuse

  • skipping payment steps
  • replaying requests
  • out-of-order operations

3. Inventory Manipulation

  • race conditions
  • cart abuse
  • stock exhaustion

4. Account Abuse

  • role escalation via hidden fields
  • mass assignment issues

Rate Limiting & Abuse

Test for:

  • brute force attacks
  • OTP guessing
  • API scraping
  • unlimited requests

Bypass Techniques

  • IP rotation
  • header spoofing (X-Forwarded-For)
  • parallel requests

Data Exposure Issues

Check for:

  • PII leaks (email, phone, address)
  • internal IDs exposed
  • password hashes in responses
  • excessive response data

If response is “too detailed”, it’s a risk.

Configuration & Misconfigurations

Common issues:

  • exposed /debug, /internal
  • CORS set to *
  • missing security headers
  • outdated API versions
  • secrets in logs or configs

Modern API Attack Surface

GraphQL

  • introspection enabled
  • query depth abuse
  • batch requests for brute force

Cloud APIs

  • public S3 / blob storage
  • misconfigured IAM permissions
  • exposed storage endpoints

File Upload APIs

  • unrestricted file types
  • executable uploads
  • bypass validation

SSRF in APIs

  • user-controlled URLs
  • internal network access via API calls

Automation vs Manual Testing

Automate:

  • baseline security checks
  • authentication testing
  • regression scans
  • CI/CD integration

Keep Manual for:

  • business logic flaws
  • authorization bypass
  • complex workflows

Best approach = hybrid security testing

Final API Security Checklist (Summary)

Every API must be tested for:

  • Authentication & Authorization (BOLA, BFLA)
  • Input validation & injection
  • Business logic abuse
  • Rate limiting
  • Data exposure
  • Configuration issues
  • Cloud & GraphQL security

Final Thought

API security is not about endpoints.It is about how trust is defined: and how it is broken. Most vulnerabilities are not coding errors. They are unvalidated assumptions in business logic. And attackers don’t break APIs. They simply use them in ways nobody tested.

This concludes my API security series. Next, I’ll be exploring Active Directory penetration testing.


文章来源: https://infosecwriteups.com/api-penetration-testing-checklist-how-real-world-attacks-break-apis-before-scanners-do-1edbea3bcd2a?source=rss----7b722bfd1b8d---4
如有侵权请联系:admin#unsafe.sh