Testing Workflow
A structured methodology ensures thorough testing and maximizes vulnerability discovery. Follow this workflow for consistent results on any web application.
Systematic Workflow
Eight-step process from setup to report:
Configure Proxy & Scope
Set browser proxy to 127.0.0.1:8080. Install CA cert. Define target scope in Burp to prevent capturing unrelated traffic.
Browse Target Normally
Visit the application like a regular user. Burp's Proxy captures all HTTP/S traffic and logs it to HTTP history. Spider if needed to discover hidden endpoints.
Reconnaissance
Review HTTP history and Site map. Identify interesting endpoints: login pages, admin panels, API endpoints, file upload forms, parameters with IDs.
Manual Testing (Repeater)
Send interesting requests to Repeater (Ctrl+R). Modify parameters, headers, cookies to test for SQLi, XSS, auth bypass, IDOR, path traversal. Analyze responses carefully.
Automated Fuzzing (Intruder)
For parameters that look injectable, use Intruder with Sniper or Cluster Bomb attack. Load wordlists, set payload positions, and analyze results.
Automated Scanning
Run active scan on discovered endpoints (Pro required). Review generated issues, validate true positives, and eliminate false positives.
Advanced Attacking
Use extensions (Turbo Intruder, Autorize, JWT Editor) for specialized attacks. Test for OAST (out-of-band) with Collaborator.
Reporting
Compile findings: vulnerability name, affected URL, proof-of-concept, impact, remediation. Export Scanner issues as HTML or generate report from issues.
Reconnaissance Phase
Before testing, understand what you are attacking:
Info
Manual Testing Examples
Here are common vulnerabilities and how to test for them in Repeater:
SQL Injection
Send parameter to Repeater → try ' OR 1=1 -- → check for error or different response length
XSS
Inject <script>alert(1)</script> → check if script executes in browser or appears reflected
IDOR
Change user ID in URL/parameter from /account/123 to /account/456 → check if data leaks
Path Traversal
Replace parameter with ../../../etc/passwd → check if file contents appear in response
Command Injection
Try | id or ; whoami in parameter → look for command output in response
SSRF
Inject http://burpcollaborator.net → check Collaborator for DNS/HTTP callbacks
XXE
Inject <?xml version="1.0"?><!DOCTYPE foo [<!ENTITY xxe SYSTEM "file:///etc/passwd">]>...
insecure Deserialization
Modify serialized objects (PHP, Java, .NET) — hard without debugging; look for gadget chains
Scope Management
Always define a target scope before attacking. Scope prevents accidental testing of unauthorized systems, speeds up scans, and keeps your project manageable.
Warning
Validation & False Positives
Automated tools generate false positives. Always manually verify before reporting: