Skip to content
beginner Phase 10 · Web Testing with Burp Suite

Burp Suite Proxy Basics

Route browser traffic through an intercepting proxy you fully control.

55m
0 problems
Topic Progress 0%

How Burp Proxy Intercepts Traffic

The Interception Problem

When you test a web application, you need to see and modify every request your browser sends. Without a proxy, requests go directly from browser to server — you can observe them in browser dev tools, but you cannot pause them, edit them mid-flight, or replay them. Burp Proxy solves this by sitting between the two.

How the Proxy Chain Works

Your browser sends a request to Burp Proxy (default 127.0.0.1:8080). Burp holds the request, displays it, and lets you edit it. When you click Forward, Burp sends the modified request to the server. The server responds back to Burp, which again holds and displays it before passing it to your browser.

Browser <---> Burp Proxy (127.0.0.1:8080) <---> Target Server

This means every single request and response passes through your hands. You can:

  • Intercept — pause requests before they reach the server
  • Modify — change parameters, headers, cookies, or body content
  • Drop — discard requests you do not want to send
  • Forward — release the request to the server

Configuring Your Browser

In Burp, go to Proxy > Options and confirm the proxy listener is running on 127.0.0.1:8080. Then configure your browser to use this proxy. In Firefox: Settings > Network Settings > Manual proxy configuration > HTTP Proxy 127.0.0.1, Port 8080. Check "Also use this proxy for HTTPS."

Firefox is preferred over Chrome for Burp testing because it uses its own proxy settings rather than the system-wide settings, keeping your non-test traffic separate.

The Intercept Toggle

The Intercept button in the Proxy tab is your pause switch. When it reads "Intercept is on," every request waits for your action. When it reads "Intercept is off," Burp passes traffic through without stopping. You toggle this depending on whether you want to review each request or let the browser flow freely while Burp logs everything in the HTTP history.

Why This Matters

Without proxy interception, you are testing blind. You see what the page renders but not the underlying API calls, parameter values, or headers that actually drive the application. The proxy is the foundation — every other Burp tool (Repeater, Intruder, Scanner) depends on traffic flowing through it first.

HTTPS Interception and Certificate Setup

The Certificate Problem

Once your browser routes through Burp, HTTP sites work immediately. But HTTPS sites throw a certificate warning. This happens because Burp acts as a man-in-the-middle: it terminates your HTTPS connection, inspects the traffic, then opens its own HTTPS connection to the server. Your browser sees Burp's certificate, not the server's, and correctly warns you that something is different.

Installing Burp's CA Certificate

Burp generates its own Certificate Authority (CA) during installation. You need to tell your browser to trust this CA so it accepts Burp's dynamically generated certificates for any site.

Step 1: With the proxy running, visit http://burpsuite in your proxied browser. Click "CA Certificate" to download cacert.der.

Step 2 (Firefox): Settings > Privacy & Security > Certificates > View Certificates > Authorities > Import. Select the downloaded file. Check "Trust this CA to identify websites."

Step 3 (System-wide, for non-browser tools): Import the certificate into your operating system's trust store. On Windows: certmgr.msc > Trusted Root Certification Authorities > Import.

Verifying HTTPS Interception Works

After importing the certificate, visit https://example.com through the proxy. If the padlock appears without warnings and you see the request in Burp's Proxy > HTTP history tab, interception is working. If you still get warnings, the certificate import did not succeed — re-import and restart the browser.

What Burp Sees vs. What the Server Sees

When HTTPS interception is active, Burp decrypts traffic, displays it in plain text, then re-encrypts it before sending to the server. This means you can inspect and modify encrypted traffic just like HTTP. The server has no idea Burp is in the middle — from its perspective, Burp's connection is just another client.

Certificate Pinning — When Interception Fails

Some applications use certificate pinning: they hardcode the expected server certificate or public key and reject any other certificate, including Burp's. When pinning is active, you will see SSL errors even with Burp's CA installed. Workarounds include:

  • Using a mobile device with a modified app (for mobile apps)
  • Using Frida to hook and disable pinning checks at runtime
  • Testing against a staging environment where pinning is disabled

For standard web applications, pinning is rare — most browser-based apps rely on the system trust store, which you control.

Scope Configuration and Workflow

Why Scope Matters

Without scope, Burp logs every request your browser makes — Google analytics, CDN assets, social media widgets, your email. This noise buries the traffic you actually care about. Scope tells Burp: "Only care about requests to these domains and paths."

Setting Scope in Burp

Go to Target > Scope. Click "Add" under "Include in scope" and enter your target. For example:

Protocol:    https
Host:        target.example.com
Port:        (leave blank for any)
File:        (leave blank for all paths)

You can also right-click any request in the proxy history and select "Add to scope" to quickly define scope from observed traffic.

Using Scope to Filter

Once scope is set, use the filter bar above the HTTP history to show only in-scope items. In the Target tab, the site map will only display scoped content. This keeps your testing focused and your reports clean.

Practical Workflow

A typical Burp Proxy workflow follows this sequence:

  1. Configure — Set browser proxy, install CA certificate, verify HTTPS works
  2. Define scope — Add target domains to Target > Scope
  3. Browse — Turn Intercept off, navigate the application normally, let Burp build the site map
  4. Identify — Review the site map for interesting endpoints, parameters, and forms
  5. Intercept — Turn Intercept on for specific requests you want to modify
  6. Send to Repeater — Right-click any request and send it to Repeater for detailed manipulation

Common Mistakes

  • Forgetting to install the CA certificate — Every HTTPS request fails with SSL errors
  • Setting scope too broadly — Including *.example.com catches unrelated subdomains
  • Leaving Intercept on during normal browsing — Every page load stalls waiting for you to click Forward
  • Not checking the HTTP history — Requests you did not intercept are still logged; review them for API calls and hidden endpoints

Scope and Reporting

When you generate a report (Target > Site map > right-click > Save selected items), Burp includes only in-scope findings by default. This ensures your penetration test report covers the agreed targets and does not include noise from third-party services.

Practice Problems

0 / 2 solved
Configure Burp Proxy for HTTPS interception

You have Burp Suite running and Firefox configured to use 127.0.0.1:8080 as proxy. When you visit https://target.example.com, you get a SSL warning. What steps do you take to resolve this?

Solution
1. Visit http://burpsuite in the proxied browser and download the CA certificate. 2. In Firefox, go to Settings > Privacy & Security > Certificates > View Certificates > Authorities > Import. 3. Select the downloaded cacert.der file and check 'Trust this CA to identify websites.' 4. Restart Firefox and revisit the HTTPS site. The padlock should appear without warnings, and the request should appear in Burp's Proxy > HTTP history.
Identify in-scope vs out-of-scope traffic

You are testing target.example.com. Your Burp HTTP history shows requests to target.example.com, www.google-analytics.com, cdn.jsdelivr.net, and api.target.example.com. Which are in-scope and how do you configure Burp to show only these?

Solution
In-scope: target.example.com and api.target.example.com. Out-of-scope: www.google-analytics.com and cdn.jsdelivr.net. To configure: Go to Target > Scope, add https://target.example.com and https://api.target.example.com to 'Include in scope.' Then use the filter bar in Proxy > HTTP history to show only in-scope requests. Alternatively, add a scope rule with Host matching '.*\.target\.example\.com' to catch all subdomains.

Quiz

1. Why does your browser show a SSL warning when you first configure Burp Proxy for an HTTPS site?

Question 1 options

2. What is the purpose of the Intercept toggle in Burp Proxy?

Question 2 options

3. You are testing target.example.com but your Burp HTTP history is full of requests to Google and Facebook. What is the most effective way to filter this noise?

Question 3 options

4. After installing Burp's CA certificate, HTTPS sites still show certificate warnings. What is the most likely cause?

Question 4 options

Flashcards

Question

What is the default Burp Proxy listener address and port?

Answer

127.0.0.1:8080

Question

Why does HTTPS interception require installing Burp's CA certificate?

Answer

Burp acts as a man-in-the-middle, presenting its own certificate. The browser must trust Burp's CA to accept these dynamically generated certificates without warnings.

Question

What does the Intercept toggle do in Burp Proxy?

Answer

When on, Burp pauses each request for manual review (edit, drop, or forward). When off, traffic passes through transparently while still being logged.

Question

What is certificate pinning and how does it affect Burp testing?

Answer

Certificate pinning is when an application hardcodes the expected server certificate or public key. It causes Burp's intercepted HTTPS traffic to be rejected even when the CA is trusted, requiring runtime hooking to bypass.

Question

How do you download Burp's CA certificate?

Answer

With the proxy running, visit http://burpsuite in the proxied browser and click 'CA Certificate' to download cacert.der.

Revision Notes

Key Takeaways

  • 1. Burp Proxy sits between browser and server, enabling full request/response inspection and modification
  • 2. HTTPS interception requires installing Burp's CA certificate into the browser's trust store
  • 3. Scope configuration filters noise and focuses testing on target domains
  • 4. Intercept toggle controls whether requests pause for manual review or pass through transparently
  • 5. Certificate pinning can block interception even with CA cert installed

Interview Tips

  • • Explain the proxy chain (browser > Burp > server) and why man-in-the-middle positioning enables testing
  • • Describe the certificate installation process and why it is necessary for HTTPS
  • • Discuss scope management — how it keeps testing focused and reports clean
  • • Mention certificate pinning as an advanced challenge and how you would approach it

Cheat Sheet

Burp Suite Proxy Basics Cheat Sheet

Phase: Web Testing with Burp Suite | Level: beginner

Proxy Chain:

Browser <---> Burp Proxy (127.0.0.1:8080) <---> Target Server

Setup Steps:

  1. Start Burp, verify Proxy listener on 127.0.0.1:8080
  2. Configure browser (Firefox preferred) to use proxy
  3. Visit http://burpsuite, download CA certificate
  4. Import CA cert into browser trust store (Authorities)
  5. Verify HTTPS interception works without warnings

Key Controls:

  • Intercept toggle — pause/resume request forwarding
  • Forward — send held request to server
  • Drop — discard held request
  • HTTP history — full log of all proxied traffic
  • Target > Scope — define in-scope domains

Common Issues:

  • SSL warnings = CA cert not installed
  • No traffic in history = browser not using proxy
  • Stalled page loads = Intercept is on

Tags: burp-suite, web-testing

Continue Learning