Proof of Concept

Overview

Vulnerability confirmed β†’ Now achieve highest possible exploitation impact and automate it.


PoC Phases

Full Chain Exploitation
         ↓
  Exploit Development
         ↓
 Test on Real Target

Phase 1: Full Chain Exploitation

Goal

Document working exploitation process step-by-step.

What to Document

Element
Description

Initial target location

Entry point URL/endpoint

Client-side payload

First payload sent

Additional payloads

For chained vulnerabilities

Bypasses

WAF, filter, encoding bypasses

Process

Chained Vulnerability Example

Handling Blocks

Block
Action

WAF blocks payload

Research bypasses, encoding

Filter removes chars

Find alternative chars/encoding

Blind exploitation

Develop OOB or time-based

Rate limiting

Add delays, use multiple sessions

If Full Exploitation Fails

  • Still report vulnerability

  • Severity may be reduced

  • Document what was achieved

  • Note what prevented full exploitation

Tip: Persist! If you can't achieve full exploitation, someone else will with better bypasses or chained vulns.


Phase 2: Exploit Development

Goal

Write script that automatically reproduces exploitation steps.

Language Selection

Use Case
Language
Reason

Network/Web applications

Python

Cross-platform, good libraries

Client-side (CSRF, etc.)

JavaScript

Only executes in browsers

Web + client-side chain

Python + JavaScript

JS for client, Python for backend

Binary exploitation

Python

Good debugging libraries (pwntools)

OS targeting

Bash/PowerShell

Pre-installed on target OS

Thick client/advanced

Application's language

Reuse code/functions

Python Exploit Structure

Key Exploit Features

Feature
Purpose

Error handling

Graceful failure, cleanup on error

Cleanup function

Remove traces

Modular stages

Easy to debug/modify

Verification

Confirm target is vulnerable first

Configurability

Easy to change target


Phase 3: Test on Real Target

Before Testing on Production

Modifications for Production

Safety Requirements

Requirement
Implementation

Revertible

Can undo all changes

Clean traces

Remove created files/accounts

Handle errors

Cleanup even on failure

Non-destructive

Never modify critical data

No downtime

Operations don't crash services

What to Clean Up

Action Taken
Cleanup Required

Created account

Delete account

Modified data

Reset to original

Uploaded files

Delete files

Changed configs

Restore configs

Created DB entries

Remove entries

Error Handling Pattern


PoC Documentation Template


Checklist

Full Chain Exploitation

Exploit Development

Production Testing

Last updated