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.
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:
- 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. - 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.
- Command-Line Flag Clutter: Launching Chrome with
--proxy-server="127.0.0.1:8080" --user-data-dir=/tmp/burp-chromerequires 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
- Click the ProxyLite icon in your toolbar and open the Settings Gear (Options Dashboard).
- Click + Add Profile $\rightarrow$ Proxy Profile.
- Name it Burp Suite (or mitmproxy).
- Configure the server:
- Protocol:
HTTP(orHTTPS) - Host:
127.0.0.1 - Port:
8080(or8888for Charles Proxy)
- Protocol:
- 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:
- Open the ProxyLite 340px toolbar popup.
- Click Burp Suite. All Chrome requests immediately route through
127.0.0.1:8080. - 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:
- Navigate to
https://api.targetstore.com. - Open the ProxyLite popup.
- Click "+ Route this domain" next to Burp Suite.
- 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
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).