API Pentesting Mindmap While Trying To Attack
API Pentesting Mindmap While Trying To Attack
URL object
PDFs
etc
National IDs
Some web apps requires uploading
personal docs to register on them, and
Personal docs Passports the user should have access to his docs,
and these docs some times also named
with it's owner ID.
etc
Phone number
IP Range spoofing confidential / personal info
Passport Number
etc
etc
etc etc
API Pentesting
etc Weak credentials administrator:administrator
Weak authentication security
design High Privilege defaults
test
while trying to Default credentials
etc
guest:guest
example
publicly accessible productions
attack
test:test
branches
Low / custom privilege defaults
user:user
old releases
Use of non-production resources which in
most cases not protected to attack the Improper assets management etc
etc production resources
etc
Weak API keys
Deletion of resources
API Keys attacks Use of leaked API Keys
Broken User Authentication
Privilege escalation
Manipulating resources Privilege attack
e.g: {"is_admin":true} Improper API rotating
Mass Assignment
etc
Executing high privilege functions with low
e.g: {"verified":true} email verification Insecure implementation of privilege access token.
authentication logic
Bypass restrections
In some applications this allows the user
to change it's password without e.g: {"default_pass":true} default password enable Access token attacks Improper access token validations Access other user's content / data with the
restrictions / versification attacker's access token.
etc
etc
Weak secret
SQL Injection
etc
non-expiring JWTs, access tokens and
Timing attacks
sessions
CORS misconfiguration
The authentication systems vary from
application to another, so there is no
Attacking various authentication systems
e.g: ASP.NET stack trace Stack Traces standard method to break them, it based on
your creative ability :)
Outdated systems
Security misconfiguration
Profiling systems e.g: /api/clients/show?id=13
Exposed storage or server management
e.g: S3 Buckets
panels Here the (BOLA) will be a part of the
attack to make the application's return
Information retrieval systems e.g: /api/orders/show?order_id=202
sensitive info [which isn't required but
etc the application retrieve it]
Comments endpoint
some applications returns more than the
required data, thus the attacker can
Excessive Data Exposure Messages endpoint access sensitive info's like CVV, location,
Communicative systems National Security Numbers ...etc.
Notifications endpoint
etc
Logging endpoints
etc