kutorlabs
Developer Tools••4 min read

How to Route Chrome Traffic to Burp Suite & mitmproxy in 1 Click

Tired of system-wide proxy settings breaking Slack and Spotify while debugging with Burp Suite or mitmproxy? Here is how to toggle local intercepting proxies in 0.1s in Chrome.

By Kutor Labs Network Engineering

If you are a web developer, API engineer, or penetration tester using local intercepting proxies like Burp Suite, mitmproxy, Charles Proxy, or Fiddler Everywhere, you know the daily frustration of proxy switching:

  1. System Proxy Pollution: You enable macOS System Proxy or Windows Internet Options pointing to 127.0.0.1:8080. Immediately, your background apps—Slack, Spotify, Discord, Telegram, and Docker—throw SSL certificate errors and disconnect.
  2. The "Burp Browser" Limitation: Burp Suite's embedded Chromium browser is handy, but it lacks your daily bookmarks, developer extensions, authenticated cookies, and customized DevTools workflows.
  3. Command-Line Flag Clutter: Launching Chrome with --proxy-server="127.0.0.1:8080" --user-data-dir=/tmp/burp-chrome requires keeping terminal windows open and managing isolated profiles.

In this practical engineering guide, we show you how to configure 0.1-second, single-click proxy toggling in your everyday Google Chrome browser, allowing you to route traffic to local debuggers on demand without breaking the rest of your operating system.


The Architecture: Why Browser-Scoped Proxying Wins

Operating system proxies are a blunt instrument. When you want to inspect a single REST endpoint or test an XSS payload in Burp, you only care about browser traffic:

[System-Wide Proxy (The Fragile Way)]
macOS / Windows Network Stack ──► 127.0.0.1:8080 (Burp Suite)
├── Chrome (Inspects target) ✅
├── Slack (Fails SSL handshake) ❌
├── Spotify (Stops playing) ❌
└── Discord / Zoom (Drops call) ❌

[Browser-Scoped Routing via ProxyLite (The Clean Way)]
OS Network Stack ────────────────► Direct Internet (Slack, Zoom, Spotify untouched) ✅
Google Chrome ───────────────────► ProxyLite Native PAC Engine
                                  ├── target-app.com ──► 127.0.0.1:8080 (Burp Suite) 🎯
                                  └── All other tabs ──► Direct (Fast & clean) ⚡

Chromium provides a high-performance native chrome.proxy API. By generating an in-memory Proxy Auto-Config (PAC) script, we can instruct Chrome to route traffic conditionally with microsecond execution speed.


Setting Up Burp Suite & mitmproxy with ProxyLite

ProxyLite is a modern, 100% free Manifest V3 proxy manager built for developers. Setting it up with your local intercepting proxy takes under a minute:

Step 1: Install ProxyLite

Install the extension from the official Chrome Web Store:
👉 Install ProxyLite on Chrome Web Store

Step 2: Create Your Local Intercept Profile

  1. Click the ProxyLite icon in your toolbar and open the Settings Gear (Options Dashboard).
  2. Click + Add Profile $\rightarrow$ Proxy Profile.
  3. Name it Burp Suite (or mitmproxy).
  4. Configure the server:
    • Protocol: HTTP (or HTTPS)
    • Host: 127.0.0.1
    • Port: 8080 (or 8888 for Charles Proxy)
  5. Click Save Changes.

3 Professional Workflows for Maximum Efficiency

Once your profile is saved, you have three powerful ways to intercept traffic:

Workflow 1: 0.1s Instant Global Toggle

When you want to inspect all requests in your current Chrome window:

  1. Open the ProxyLite 340px toolbar popup.
  2. Click Burp Suite. All Chrome requests immediately route through 127.0.0.1:8080.
  3. When you finish debugging, click Direct. Traffic instantly reverts to normal. Zero terminal commands, zero OS setting tweaks.

Workflow 2: Targeted 1-Click Domain Interception

Suppose you are pentesting https://api.targetstore.com, but you also have documentation tabs, Jira, and StackOverflow open. You don't want Burp's HTTP history cluttered with background analytics or Jira polling requests:

  1. Navigate to https://api.targetstore.com.
  2. Open the ProxyLite popup.
  3. Click "+ Route this domain" next to Burp Suite.
  4. ProxyLite automatically creates an auto-switch rule for *.targetstore.com. Only requests to your target site are captured in Burp, keeping your intercept history clean and focused.

Workflow 3: Subnet & Local Microservices Routing

If you run containerized microservices in Docker or Kubernetes (10.x.x.x or 172.16.x.x), you can add a CIDR IP Subnet Rule inside ProxyLite:

  • Rule: 10.244.0.0/16 $\rightarrow$ Burp Suite
  • Fallback: Direct

This automatically routes internal cluster traffic through your local debugger while public websites bypass it entirely.


Quick Reference: Default Ports for Common Debuggers

Intercepting Proxy Default Host Default Port Protocol
PortSwigger Burp Suite 127.0.0.1 8080 HTTP
mitmproxy / mitmweb 127.0.0.1 8080 HTTP / SOCKS5
Charles Proxy 127.0.0.1 8888 HTTP / SOCKS5
Fiddler Everywhere 127.0.0.1 8866 HTTP
OWASP ZAP 127.0.0.1 8080 HTTP

Summary

Debugging web traffic should not require sacrificing the rest of your workstation's network stability.

By pairing Burp Suite or mitmproxy with ProxyLite, you get instant, browser-level routing control, zero OS interference, and the speed of modern Manifest V3 architecture.

👉 Install ProxyLite Free on Chrome: Chrome Web Store

Filed under:#Burp Suite#mitmproxy#Charles Proxy#Web Security#Proxy Switcher#Chrome Extensions

Frequently Asked Questions

Why does setting a system proxy for Burp Suite break other apps on macOS and Windows?

System proxy settings route all OS network traffic through 127.0.0.1:8080. Applications without Burp CA certificate installed (such as Slack, Spotify, Discord, or Zoom) immediately fail with SSL/TLS handshake errors.

Can I route only a single website or domain to Burp Suite without intercepting other tabs?

Yes. ProxyLite features an Auto-Switch rules engine and a 1-click "+ Route this domain" button. You can route only your target pentest domain (e.g. *.targetapp.com) to Burp Suite while keeping GitHub, Google, and internal tools direct.

Is ProxyLite compatible with Charles Proxy and Fiddler Everywhere?

Yes. ProxyLite supports any local or remote HTTP, HTTPS, SOCKS4, and SOCKS5 proxy running on standard ports like 8888 (Charles), 8866 (Fiddler), or 8080 (Burp/mitmproxy).