• Blackhat Pakistan — Ethical Hacking, Hacking Tools & Cybersecurity Tutorials

Burp Suite Tutorial for Beginners 2026 - Proxy, Repeater and Intruder Workflow

Blackhatpakistan

Administrator
Staff member
Joined
Dec 30, 2024
Messages
381
Reaction score
206
Points
62
Website
blackhatpakistan.net
Points
1,033
USD
1,033
A Burp Suite tutorial for beginners covers the proxy-intercept workflow that turns a browser into a testing rig: Burp Suite sits between your browser and the target, records every request, lets you edit and replay them, and builds the site map that drives the rest of a web assessment - proxy, repeater, intruder, and decoder are the four tabs that carry 90% of real work. This tutorial runs the setup end to end: install, browser configuration, first intercepted request, repeater edits, intruder fuzzing, and the session-handling tricks that keep you authenticated while you test.

TL;DR - The loop is: Proxy intercept on -> browse -> edit the live request -> send to Repeater for manual variants -> send to Intruder when the payload position is repeatable -> read findings in Target/site map. Configure the browser proxy to 127.0.0.1:8080, install the CA certificate for HTTPS, and turn Intercept is on off until you actually want to catch a request - beginners lose more traffic to an armed intercept than they gain from it.

INSTALL AND EDITIONS

Community Edition is free and covers everything in this tutorial:

Code:
sudo apt install burpsuite                 Kali package
# or download the JRE bundle from portswigger.net

Professional adds intruder at full speed, session handling rules, and the scanner - the workflow below is identical on both.

STEP 1 - WIRE THE BROWSER

Burp listens on 127.0.0.1:8080 by default (Proxy -> Options to change). Point Firefox at it:

- about:preferences -> Network Settings -> Manual proxy: HTTP 127.0.0.1 port 8080, "also HTTPS"
- Proxy -> CA Certificate -> download, then about:preferences -> Certificates -> Import -> trust as CA

Better route: use Burp's own browser (Chromium, pre-wired, no cert dance) or FoxyProxy to toggle profiles - a browser you only ever point at Burp keeps personal traffic out of your site map.

STEP 2 - FIRST INTERCEPT

Proxy -> Intercept -> "Intercept is on", browse to the target. The raw request lands editable:

Code:
GET /vulnerable.php?id=1 HTTP/1.1
Host: target.com
Cookie: session=abc123
User-Agent: Mozilla/5.0 ...

Change id=1 to id=2, Forward it, watch the response pane. The intercepted request is also your site map seed - every link you follow now appears under Target -> Site map with full request/response history.

Workflow rule: leave intercept ON for login and state-changing actions (you want to see the real POST), OFF for crawling (you want to see the pages).

STEP 3 - REPEATER, YOUR MAIN WORKBENCH

Right-click any request -> Send to Repeater (Ctrl+R). Repeater is manual request editing with history:

Code:
id=1        baseline response - 200, 412 bytes
id=2        same page - compare lengths
id=1'       error text appears? note the DB type
id=1 AND 1=1    boolean baseline
id=1 AND 1=2    response changes? boolean blind confirmed

The length column is the tell: two-digit differences mean boolean blind, changed status codes mean logic, stacked-query responses mean the backend runs multiple statements. Keep a naming habit (repeater tabs labelled by parameter) - a twenty-tab mess at hour three costs more than the testing.

STEP 4 - INTRUER, WHEN IT REPEATS

Send a request to Intruder (Ctrl+I):

1. Positions -> Clear, then highlight exactly the value you fuzz (the id, the search box)
2. Payloads -> Simple list -> add your wordlist (or Pitchfork for two synchronized lists)
3. Resource pool -> set concurrent requests to 4-6 against anything with rate limiting
4. Start -> read the Status/Length columns, sort, look at outliers

Useful payload sets:

Code:
SQL chars      ' " 1' ' OR '1'='1  --
XSS probe       javascript-uri probes, tag-break payloads, event-handler variants
Path traversal  dot-dot slash chains toward system files (URL-encoded variants)
Auth bypass     admin, administrator, root, backup
API fuzzing     ../, %00, unicode normalization pairs

The Sniper attack (one payload position) does parameter-by-parameter fuzzing; Battering ram throws the same payload at two positions; Pitchfork pairs two lists (username list against password list); Cluster bomb runs the full cartesian product - that last one is the credit-card-combo generator pattern, and it will wreck your request budget if you point it at rockyou.

STEP 5 - SITE MAP AND SCOPE

Target -> Scope -> add your domain (right-click -> Add to scope) with exclude rules for analytics and CDN noise - otherwise every page load drags third-party domains into the map. The site map view shows unvisited endpoints (grey) your crawl has not touched: those grey links are frequently the forgotten admin panels and debug handlers.

[CRAWL NOTE] Burp's crawl (Dashboard -> New scan, crawl-only) follows links and JS-generated routes. Keep it scoped, keep throughput modest, and review the discovered endpoints list before launching anything with Intruder attached.

STEP 6 - SESSION HANDLING - STAY LOGGED IN

Proxy -> Options -> Session Handling rules. The rule every authenticated test needs:

- Rule: "Fix cookies" - macro runs the login request, applies the fresh session cookie to all requests in scope
- Scope: your target only

Without it, a session timeout mid-Intruder run means 500 requests all bouncing to the login page - the results table fills with identical 302s and the real finding hides behind the wall. Verify with a single Repeater send after two minutes idle: if the response is still 200, the rule works.

DECODER AND EXTENSIONS

Send any selected value -> Decoder: hash it (MD5/SHA), base64, URL, hex, unicode. The tab answers "what is this blob" in one click during token analysis.

Must-install extensions (BApp Store, Extender tab):

Code:
Turbo Intruder        high-speed custom-payload attacks (HTTP/2 too)
Autorize              authorization testing - compares roles on every request
J2TCP / Logger++      request logging with export
Param Miner           hidden parameter discovery (backend, cache, cookies)
Match and Extract     custom highlight rules across traffic

REPORTING

Dashboard -> Issues collects findings with evidence requests. Right-click a confirmed issue -> Report -> export the request/response pair for the client report. Community Edition exports manually; keep your own evidence log alongside - screenshot plus raw request is the report standard regardless of edition.

FAQ

Q: Why does my HTTPS browsing break when I enable the proxy?
A: Missing or distrusted CA certificate. Re-import Burp's CA and check the browser trusts it for websites; if the site uses certificate pinning (banking apps, some SPAs), test that endpoint from a normal browser outside Burp.

Q: Repeater or Intruder?
A: Repeater when you are thinking - each request is a hypothesis. Intruder when you know the shape - the position is fixed and only the payload varies. Starting an Intruder run you could answer with three Repeater sends wastes the request budget.

Q: Burp or ZAP?
A: Same workflow vocabulary (proxy, replacer, fuzzer); ZAP is free and scriptable in multiple languages, Burp has the polished session handling and extension ecosystem. The methodology transfers between them completely.

Q: What should a beginner test first through Burp?
A: Walk the authenticated app with intercept off, review the site map for unseen endpoints, then take the three most interesting parameters to Repeater and run the SQL/XSS/traversal probe sets above.

RELATED ON BLACKHAT PAKISTAN

SQLMap Tutorial for Beginners 2026 - take the injectable parameter Burp found and automate the extraction.
Advanced Web Hacking Tools - the rest of the web-tier toolkit Burp plugs into.
Kali Linux Tools List 2026 - Burp in the full attack-phase stack.
Nmap Cheat Sheet 2026 - confirming what is actually serving port 443 before you proxy it.

Code:
1. Proxy 127.0.0.1:8080 + CA cert imported
2. Scope set, analytics excluded
3. Intercept on for login POST, off for crawl
4. Site map -> review grey (unvisited) endpoints
5. Repeater baseline response saved (length noted)
6. Session handling rule: macro login + fix cookies
7. Intruder positions cleared, ONE position highlighted
8. Resource pool throttled to 4-6
 
Threads
1,066Threads
Messages
2,124Messages
Members
3,703Members
Latest member
riyanLatest member
Top