Skip to content

05 Advanced Web Exploitation

Welcome to:

Module 05 — Advanced Web Exploitation

You have already built foundations across:

Web Security
API Security
Mobile Security

You now understand how to identify and validate vulnerabilities involving:

Authentication
Authorization
Sessions
User Input
APIs
Objects
Roles
Business Logic

This module moves beyond testing isolated vulnerabilities.

You will begin thinking in:

Attack Paths

where multiple weaknesses, trust assumptions and application behaviors interact.

A professional Bug Bounty Hunter does not only ask:

Is This Endpoint
Vulnerable?

They also ask:

What Can This
Weakness Lead To?
What Other
Component Trusts It?
Can Another
Weakness Be Reached?
What Is the
Final Business Impact?

By the end of this module, you will understand how to:

  • perform advanced attack-surface analysis.

  • identify application trust boundaries.

  • build attack hypotheses.

  • analyze complex authorization models.

  • investigate multi-step access-control failures.

  • analyze advanced authentication workflows.

  • assess account recovery chains.

  • investigate OAuth and SSO trust boundaries.

  • understand advanced SSRF scenarios.

  • identify server-side URL processing.

  • understand internal service exposure.

  • understand HTTP request desynchronization concepts.

  • understand request smuggling attack surfaces.

  • analyze reverse-proxy and backend inconsistencies.

  • understand web cache behavior.

  • investigate cache poisoning concepts.

  • understand cache deception.

  • analyze advanced race conditions.

  • investigate concurrency-sensitive workflows.

  • analyze state-machine vulnerabilities.

  • identify advanced business logic abuse.

  • investigate workflow bypasses.

  • understand multi-step transaction abuse.

  • identify second-order vulnerabilities.

  • analyze vulnerability chains.

  • construct attack trees.

  • build attack-path diagrams.

  • validate chained impact safely.

  • document complex findings professionally.

1 — Moving Beyond Individual Vulnerabilities

Section titled “1 — Moving Beyond Individual Vulnerabilities”

Beginner testing often looks like:

Endpoint
Payload
Response
Finding

Advanced testing looks more like:

Application
Trust Boundary
Security Assumption
Weakness
New Capability
Second Boundary
Impact

The difference is:

Vulnerability Hunting
vs
Attack Path Analysis

Every weakness may give an attacker a new capability.

Examples:

Discover User ID
Read Private Object
Modify Account State
Control URL
Trigger Backend Request
Access Internal Service
Perform Restricted Action

Ask after every finding:

What New Capability
Does This Give Me?

Example:

Information Disclosure
Internal Object ID
Authorization Failure
Private Record Access

The first issue may appear low severity.

The chain may create:

Meaningful
Security Impact

A trust boundary exists whenever information moves between components with different trust assumptions.

Examples:

Browser
Application
Application
API
API Gateway
Backend Service
Backend
Internal Service
Application
Third Party

For each boundary ask:

What Data
Crosses It?
Who Controls
the Data?
What Validation
Occurs?
What Identity
Is Trusted?
What Authorization
Occurs?

Applications frequently make assumptions such as:

User Cannot
Guess This ID
Internal Requests
Are Trusted
UI Prevents
Invalid Actions
This Header
Comes from Proxy
This Request
Can Only Happen Once
This URL
Is Safe

Advanced exploitation frequently begins when:

Security Assumption
Reality

Create:

Security_Assumptions.csv

with:

Component Assumption Trust Boundary Validation Test Status

Simple authorization testing asks:

Can User B
Read User A's
Object?

Advanced authorization asks:

Can User B
Cause Another
Component to Act
on User A's Object?

Consider:

User
Project
Document
Export Job

The application may correctly authorize access to:

Project

but fail to revalidate ownership when creating:

Export Job

Modern applications contain relationships such as:

Organization
Workspace
Project
Document

Authorization must remain correct at:

Every Level

Suppose:

Organization A
Project 100

and:

Organization B
Project 200

Test whether identifiers from different ownership contexts can be mixed.

Example concept:

Organization A
+
Project 200

The server should validate the relationship.

Multi-tenant applications require strong isolation between:

Tenant A
Tenant B

Potential objects include:

Users
Projects
Billing
Reports
Files
Integrations

Think:

Authenticated User
Tenant
Resource

Authorization should validate:

User
Tenant Membership
Resource Ownership

Applications may allow:

Member
Manager
Administrator

Review how roles are:

Assigned
Changed
Removed
Inherited

Ask what happens when:

User Removed
from Organization

Does the user retain:

Old Session?
API Token?
Shared Link?
Cached Access?
Integration Token?

Invitation systems are useful attack surfaces.

Typical workflow:

Admin
Invite User
Invitation Token
User Accepts
Membership Created

Ask:

Does Invite Expire?
Is It Single Use?
Is It Bound
to Email?
Can Role
Be Modified?
Can Invite
Be Replayed?

Applications may provide:

Public Links
Shared Documents
Temporary URLs
Guest Access

Review:

Expiration
Revocation
Permissions
Object Binding
Predictability

Authentication systems increasingly involve:

Application
Identity Provider
OAuth Provider
SSO
MFA
Recovery Systems

This creates multiple:

Trust Boundaries

Example:

User
Application
Identity Provider
Authorization Code
Application
Session

Each transition must preserve:

Identity
Intent
Session Binding

Account recovery may involve:

Email
SMS
Support
Recovery Codes
Trusted Devices

Ask:

Is Recovery
Weaker Than
Normal Authentication?

Map states such as:

Unauthenticated
Password Verified
MFA Pending
Authenticated
Recovery Pending

Then ask:

Can State
Transitions
Be Skipped?

Example:

Password Correct
MFA Pending
MFA Verified
Session Upgraded

Security controls should ensure:

MFA Pending

does not receive privileges intended for:

Fully Authenticated

OAuth commonly involves:

User
Client Application
Authorization Server
Resource Server

A simplified flow:

User
Client
Authorization Server
Authorization Code
Client
Access Token

Review:

Redirect URI
State
Authorization Code
Token Binding
Scopes
Client Identity

The authorization server must carefully validate:

Where Authentication
Results Are Sent

Improper redirect validation can create security problems.

The state parameter can help bind:

Authorization Request
User Session

Its exact role depends on the implementation.

Scopes define:

What the
Application
Can Access

Review whether requested permissions are appropriate.

Single Sign-On may involve:

Application
Identity Provider
Authentication Assertion
Application Session

Important questions include:

Who Issued
the Assertion?
Who Is It
Intended For?
Which User
Does It Represent?
Is It Still Valid?

Applications sometimes allow users to link:

Password Account
Google Account
Enterprise SSO
Other Identity

Account linking must verify:

Ownership
of Both Identities

Server-Side Request Forgery occurs when attacker-controlled input influences a server-side request.

Conceptually:

Researcher
Application
Server-Side Request
Destination

Potential functionality includes:

Webhook
URL Preview
Image Import
Document Conversion
Feed Import
Callback
External Integration
PDF Generator

The key difference from normal browser requests is:

Request Originates
from Server

The server may have access to resources unavailable to:

External Users

Ask:

Can Destination
Be Controlled?
Which Protocols
Are Supported?
Are Redirects
Followed?
Is DNS
Re-Resolved?
What Network
Can Server Reach?

Use:

Controlled
Research Endpoint

to establish:

Application
Made the Request

before investigating deeper behavior.

Sometimes the server performs a request but does not return the response.

Conceptually:

Input
Server Request
No Response
Returned

Validation may rely on:

Controlled
Out-of-Band
Observation

within program rules.

Applications may validate:

Initial URL

but then follow:

Redirect

to another destination.

Secure systems should consider the destination throughout the request process.

Server-side systems may communicate with:

Internal APIs
Monitoring Services
Administrative Services
Metadata Services

Never probe internal infrastructure beyond authorized testing boundaries.

Cloud environments may expose metadata services used by workloads.

Modern cloud architectures include protections designed to reduce SSRF-related credential exposure.

Treat metadata testing as high-impact and perform it only when explicitly permitted.

Modern web traffic may pass through:

Browser
CDN
Load Balancer
Reverse Proxy
Application Server

Each component parses:

HTTP

Security problems can occur when:

Front-End Server

and:

Back-End Server

interpret request boundaries differently.

This concept underpins:

HTTP Request
Desynchronization

Conceptually:

Front End
Sees Request A
Backend
Sees Request A
+
Part of Request B

This may create unexpected request processing.

43 — Why Request Desynchronization Matters

Section titled “43 — Why Request Desynchronization Matters”

Potential consequences may include:

Request Interference
Cache Impact
Session Confusion
Unexpected Routing

The exact impact depends heavily on architecture.

Request smuggling can interfere with other users.

Therefore:

Do Not Perform
Aggressive Testing

on production systems unless the program explicitly authorizes it.

Prefer:

Dedicated Labs
Controlled Environments

for exploitation practice.

Understand components such as:

CDN
WAF
Reverse Proxy
Load Balancer
Application Server

because advanced web vulnerabilities often arise from:

Different Interpretations
Across Layers

Caching improves performance by storing responses.

Simplified flow:

User
Cache
Application

If response exists in cache:

Cache
User

may occur without reaching the application.

A cache decides whether requests are equivalent using:

Cache Key

which may include:

Host
Path
Query
Headers

Some request data may affect the response without being included in the cache key.

Conceptually:

Input Changes
Response
but
Input Not Included
in Cache Identity

This can create cache-related security issues.

Conceptually:

Attacker-Controlled Input
Application Response
Response Cached
Other Users
Receive Response

The actual security impact depends on what becomes cached.

Cache deception involves causing:

Sensitive
User-Specific Content

to be stored in a cache that may later expose it improperly.

Ask:

What Is Cached?
What Is the
Cache Key?
Does Response
Depend on User?
Are Authentication
Responses Cached?
Which Inputs
Influence Response?

Race conditions occur when application security depends on:

Order
Timing
Shared State

across multiple operations.

Application expects:

Check Balance
Deduct Amount
Update Balance

But concurrent operations may interfere with that assumption.

Common areas include:

Coupons
Gift Cards
Rewards
Inventory
Payments
Withdrawals
Invitations
Account Creation

Ask whether:

One-Time Token
Coupon
Invite
Approval
Recovery Link

can produce multiple effects if requests occur nearly simultaneously.

Production concurrency testing can create unintended effects.

Use:

Dedicated Accounts
Low-Value Test Objects
Controlled Request Counts

and follow program rules.

Applications can be modeled as states.

Example:

Created
Pending
Approved
Completed

Create:

State_Transition_Matrix.csv

with:

Current State Action Expected Next State Authorized Role

Ask:

Can Created
Become Completed
Directly?

or:

Can Cancelled
Become Approved?

Normal workflow:

Submit
Verify
Approve
Activate

Test whether:

Activate

can occur without:

Verify
or
Approve

Business logic vulnerabilities violate:

Application
Business Rules

rather than technical syntax.

Examples:

Negative Quantity
Repeated Discount
Refund Before Payment
Self-Referral
Duplicate Reward
Approval Bypass

Before testing, write:

Expected Rule

Example:

A Coupon
Can Be Used
Once Per Account

Then create a hypothesis:

Can the Coupon
Be Reused Through
Another Workflow?

Applications may enforce a rule in:

Checkout

but not in:

Mobile API
Legacy API
Subscription Upgrade
Admin-Assisted Flow

Compare different paths performing:

Equivalent
Business Actions

Complex operations may involve:

Create
Confirm
Authorize
Execute

Test whether each step:

Validates Current
Application State

A value supplied early in a workflow may be reused later.

Example:

Step 1:
Select Account
Step 2:
Confirm
Step 3:
Execute

Ask:

Is Account
Revalidated
at Execution?

A second-order vulnerability occurs when input is:

Stored First
Processed Later
in Another Context

Conceptually:

User Input
Stored in Database
Admin Tool
Processes Input
Security Impact

The vulnerable interaction may occur far from the original input.

Potential delayed processing occurs in:

Reports
Exports
Background Jobs
Emails
PDF Generation
Admin Dashboards

Modern applications frequently use:

Queues
Workers
Background Jobs
Event Systems

This creates new trust boundaries.

Example:

User Request
Queue
Worker
Internal Service

Ask:

Does Worker
Revalidate
Authorization?
or
Trust Data
Placed in Queue?

Webhooks connect:

Application A
HTTP Callback
Application B

Security considerations include:

Authentication
Signature Validation
Replay Protection
Destination Validation

If webhook messages represent:

Payment Completed
Subscription Activated
Order Shipped

replay protections may be important.

Some integrations use:

Cryptographic Signature

to verify:

Message Authenticity

Check whether verification covers the relevant message content and freshness requirements.

APIs may use:

Idempotency Keys

to prevent repeated operations from producing duplicate effects.

Important for:

Payments
Orders
Transfers

Ask:

Is Key
Bound to User?
Operation?
Request Body?
Expiration?

Applications may process:

Images
PDFs
Archives
Documents
Media

through backend services.

This creates:

Parser
Attack Surface

Archives may contain:

Nested Files
Paths
Large Content
Unexpected Formats

Testing parser behavior should be performed in safe labs unless explicitly permitted.

Features such as:

HTML → PDF
Document Preview
Image Conversion

may cause backend services to:

Fetch Resources
Parse Files
Render Content

creating additional trust boundaries.

Example:

User Can Create
Shared Link
Shared Link Leaks
Object Identifier
API Fails
Ownership Check
Private Object
Accessible
Account Enumeration
Weak Recovery
Session Created
Sensitive Account
Access

Each step should be independently validated.

Conceptually:

User-Controlled URL
Server-Side Request
Internal Service
Sensitive Response

Only demonstrate the minimum impact permitted by program rules.

Example:

Invite User
Modify Role
Accept Invite
Unexpected Privilege

Chaining means:

Weakness A
Creates Capability
Weakness B
Creates New Capability
Final Impact

Two vulnerabilities occurring in the same application are not automatically:

A Chain

There must be:

Logical Dependency

between them.

For each link document:

Input
Precondition
Observed Result
New Capability

Attack trees represent:

Goal
Possible Paths
Required Conditions

Example:

Access Private Document
├── Authorization Failure
├── Shared Link Abuse
└── Account Compromise

Create:

Attack_Path.md

Example:

Attacker
Low-Privilege Account
Information Disclosure
Object Identifier
Authorization Failure
Sensitive Record

Create:

Attack_Path_Register.csv

with:

Step Weakness Capability Evidence Next Boundary

Create:

Capability_Register.csv

with:

Capability Source Accessible Components Potential Impact

Create:

Advanced_Hypotheses.csv

with:

ID Assumption Hypothesis Test Evidence Status
Assumption:
Only administrators
can create export jobs.
Hypothesis:
The export endpoint
may trust a client-provided
organization identifier.
Test:
Compare administrator
and normal-user requests
using controlled objects.

Collect:

Initial State
Account Roles
Baseline Requests
Modified Requests
Application State Changes
Intermediate Results
Final Impact

A complex chain should be explainable as:

Step 1
Observable Result
Step 2
Observable Result
Step 3
Impact

The goal is:

Prove the Risk

not:

Maximize Damage

Stop once sufficient evidence exists.

A report should clearly separate:

Prerequisites
Individual Weaknesses
Attack Chain
Final Impact

Use:

# Title
# Summary
# Affected Components
# Preconditions
# Attack Path
# Reproduction
# Evidence
# Security Impact
# Remediation

Example:

A low-privilege user
can obtain an identifier
through Feature A.
The identifier can then
be supplied to Feature B,
which fails to validate
object ownership.
This allows the user
to access another tenant's
private resource.

Do not recommend only fixing:

Final Endpoint

Review every:

Broken Trust Boundary

in the chain.

A strong architecture may enforce:

Authentication
Tenant Validation
Object Authorization
Property Authorization
Business Rule Validation

If one layer fails:

Another Layer
May Still
Prevent Impact

Create:

Advanced_Web_Exploitation.md

with:

# Architecture
# Trust Boundaries
# Security Assumptions
# Authentication States
# Authorization Model
# Business Workflows
# Server-Side Requests
# Caching
# Concurrency
# Background Jobs
# Integrations
# Hypotheses
# Attack Paths
# Evidence
# Reports

101 — Professional Advanced Testing Workflow

Section titled “101 — Professional Advanced Testing Workflow”

Use:

Understand Architecture
Identify Trust Boundaries
Document Assumptions
Map Roles and States
Map Business Workflows
Build Hypotheses
Test One Boundary
Identify New Capability
Follow Capability
Validate Chain
Measure Impact
Report

Ask:

Which Components
Trust Each Other?
Where Is
Identity Established?
Where Is
Authorization Enforced?
Where Does
State Live?

Ask:

What Did
the Developer
Assume Would
Always Be True?

Ask:

What Business Rule
Must Never
Be Violated?

Ask:

What Capability
Do I Have?
What Boundary
Can That Capability
Reach Next?

Finally ask:

Which Security
Control Should
Have Stopped
This Path?

That question improves both:

Finding Quality
and
Remediation Quality

Practical Exercise 1 — Trust Boundary Mapping

Section titled “Practical Exercise 1 — Trust Boundary Mapping”

Using an authorized lab application, create:

Trust_Boundary_Map.md

covering:

Browser
Application
API
Authentication
Database
Background Services

Practical Exercise 2 — Security Assumption Register

Section titled “Practical Exercise 2 — Security Assumption Register”

Identify at least:

10 Security
Assumptions

such as:

User Cannot
Modify Role
Internal Request
Is Trusted
Invite Is
Single Use

Document how each assumption is enforced.

Practical Exercise 3 — Advanced Authorization

Section titled “Practical Exercise 3 — Advanced Authorization”

Create:

Tenant A
Tenant B

in a training environment.

Map:

Organization
Project
Document

and validate authorization across nested resources.

Practical Exercise 4 — Authentication State Machine

Section titled “Practical Exercise 4 — Authentication State Machine”

Create:

Authentication_State_Machine.md

mapping:

Unauthenticated
Password Verified
MFA Pending
Authenticated
Recovery

Practical Exercise 5 — OAuth Flow Mapping

Section titled “Practical Exercise 5 — OAuth Flow Mapping”

Using an authorized OAuth training application, document:

Client
Authorization Server
Redirect URI
State
Authorization Code
Token
Scopes

Practical Exercise 6 — SSRF Surface Mapping

Section titled “Practical Exercise 6 — SSRF Surface Mapping”

Identify training features that accept:

URLs
Webhooks
Remote Images
Imports

Document where server-side requests occur.

In a dedicated training environment, identify:

Cacheable Pages
Cache Keys
User-Specific Responses
Inputs Affecting Responses

Practical Exercise 8 — State Machine Analysis

Section titled “Practical Exercise 8 — State Machine Analysis”

Choose a workflow such as:

Order
Subscription
Approval

Create its:

State_Transition_Matrix.csv

Practical Exercise 9 — Race Condition Lab

Section titled “Practical Exercise 9 — Race Condition Lab”

Using a dedicated lab, examine a:

Single-Use
Business Action

and document how the application handles controlled concurrent requests.

Practical Exercise 10 — Second-Order Analysis

Section titled “Practical Exercise 10 — Second-Order Analysis”

Identify a training workflow where:

Input
Stored
Processed Later

Map every processing context.

Practical Exercise 11 — Build an Attack Tree

Section titled “Practical Exercise 11 — Build an Attack Tree”

Choose a target objective such as:

Access Another
User's Private File

Create multiple hypothetical attack paths and identify the security controls that should block each path.

Practical Exercise 12 — Build a Vulnerability Chain

Section titled “Practical Exercise 12 — Build a Vulnerability Chain”

In a dedicated training application, combine two intentionally vulnerable behaviors.

Document:

Weakness A
Capability A
Weakness B
Final Impact

Practical Exercise 13 — Write an Advanced Report

Section titled “Practical Exercise 13 — Write an Advanced Report”

Create a fictional report describing:

Low-Privilege User
Information Disclosure
Authorization Failure
Cross-Tenant
Sensitive Data Access

Include:

Architecture
Prerequisites
Attack Path
Requests
Responses
Intermediate Evidence
Final Impact
Remediation
  1. What is advanced web exploitation?

  2. What is an attack path?

  3. What is a security capability?

  4. Why should researchers ask what a vulnerability enables next?

  5. What is a trust boundary?

  6. What is a security assumption?

  7. What is indirect authorization?

  8. Why are nested objects important?

  9. What is cross-tenant authorization?

  10. What is stale authorization?

  11. What security properties should invitations have?

  12. What is an authentication state machine?

  13. Why must MFA-pending sessions remain restricted?

  14. What is OAuth?

  15. What is a redirect URI?

  16. What is the purpose of OAuth state?

  17. What are OAuth scopes?

  18. What is SSO?

  19. Why is account linking security-sensitive?

  20. What is SSRF?

  21. Why is SSRF different from a browser request?

  22. What is blind SSRF?

  23. Why must redirect handling be considered in SSRF defenses?

  24. What is HTTP request desynchronization?

  25. Why can different HTTP parsers create security problems?

  26. Why must request-smuggling testing be carefully controlled?

  27. What is a cache key?

  28. What is unkeyed input?

  29. What is web cache poisoning?

  30. What is cache deception?

  31. What is a race condition?

  32. What makes single-use operations interesting?

  33. What is a state machine?

  34. What is an invalid state transition?

  35. What is workflow bypass?

  36. What is cross-feature business logic?

  37. What is parameter persistence?

  38. What is a second-order vulnerability?

  39. Why are background jobs security-relevant?

  40. What security controls should webhooks use?

  41. What is idempotency?

  42. Why does backend file processing create attack surface?

  43. What is vulnerability chaining?

  44. What makes two vulnerabilities a genuine chain?

  45. What is an attack tree?

  46. What is a capability register?

  47. What evidence is needed for a complex finding?

  48. What is minimal-impact validation?

  49. Why should remediation address every broken trust boundary?

  50. Why is architecture knowledge important for advanced bug bounty hunting?

Advanced exploitation is not about:

More Payloads

It is about:

Deeper Understanding

Think in:

Architecture
Trust
Identity
Authorization
State
Business Rules
Capabilities
Attack Paths

Remember:

Weakness
Final Impact

A weakness may instead create:

New Capability
New Attack Surface
Second Weakness
Impact

Also remember:

Internal
Trusted
Hidden
Protected
One-Time
Impossible
to Replay
Sequential Workflow
Enforced State
Machine
Complex Finding
Complex Report

Your report should make the attack path:

Simple
Clear
Reproducible

The professional methodology becomes:

Architecture
Trust Boundary
Assumption
Hypothesis
Test
Capability
Next Boundary
Chain
Impact
Report

Advanced web exploitation skills are valuable for:

Bug Bounty Hunters
Web Penetration Testers
Application Security Engineers
Security Researchers
Red Teamers
Product Security Engineers

During interviews, you should be able to explain:

How You
Map Trust Boundaries
How You
Analyze Complex
Authorization
How You
Model Authentication
States
How You
Analyze SSRF
How You
Reason About
Caching
How You
Assess Race Conditions
How You
Test Business Logic
How You
Build Attack Paths
How You
Validate Vulnerability
Chains

Instead of saying:

I Look for
Advanced Bugs

you should be able to explain:

I begin by understanding
the application architecture
and identifying trust
boundaries between clients,
APIs, identity systems,
backend services and
business workflows.
I document the security
assumptions at those
boundaries and build
specific hypotheses around
identity, authorization,
state and data flow.
When a weakness is found,
I determine what capability
it provides and whether
that capability can reach
another security boundary.
I then validate the
minimum reproducible
attack path, establish
business impact and
document the complete
chain clearly.

➡️ Next: 06 — Cloud Bug Bounty Hunting

You now understand how to move from:

Individual
Vulnerabilities

to:

Attack Paths

The next module expands your bug bounty methodology into:

Cloud Environments

Modern applications increasingly depend on:

AWS
Microsoft Azure
Google Cloud
Cloud Storage
Cloud IAM
Serverless Services
Managed Databases
Cloud APIs

You will learn how cloud exposure can appear through:

Web Applications
APIs
Cloud Services
IAM
Storage
Workloads

The objective is to understand how application vulnerabilities can intersect with:

Cloud Identity
Cloud Permissions
Public Resources
Storage Exposure
Metadata
Secrets
Serverless Functions
Cloud Misconfiguration

You will move from:

Application
Attack Paths

to:

Application
Cloud Service
Cloud Identity
Cloud Resource
Business Impact

➡️ Next: 06 — Cloud Bug Bounty Hunting