Betwixt is a web Debugging Proxy based on Chrome DevTools Network panel.Betwixt will help you analyze web traffic outside the browser using familiar Chrome DevTools interface.
Installing
Download the latest release for your operating system, build your own bundle or run Betwixt from the source code.
Setting Up
In order to capture traffic, you’ll have to direct it to the proxy created by Betwixt in the background (http://localhost:8008
).
If you wish to analyze traffic system wide:
- on macOS –
System Preferences → Network → Advanced → Proxies → Web Proxy (HTTP)
- on Windows –
Settings → Network & Internet → Proxy
- on Ubuntu –
All Settings → Network → Network Proxy
If you want to capture traffic coming from a single terminal use export http_proxy=http://localhost:8008
.
Also Read – RedRabbit : Red Team PowerShell Script
Capturing encrypted traffic (HTTPS) requires additional step, follow below steps for instructions.
HTTPS
In order to capture encrypted traffic, you’ll have to install root certificate provided by Betwixt. The certificate is generated for you when you first launch Betwixt. You can quickly locate it on disk using Tools > Root Certificate
menu.
ca.pem
has to be imported and marked as trusted.
On OS X this is done via Keychain app as shown below.
After certificate is installed, expand the Trust
section and toggle the first dropdown to Always Trust
:
On Windows use certmgr.
Proxy
Direct the traffic to the proxy created by Betwixt in the background (http://localhost:8008
).
If you wish to analyze traffic system wide:
- on OS X –
System Preferences → Network → Advanced → Proxies → Secure Web Proxy (HTTPS)
- on Ubuntu –
All Settings → Network → Network Proxy
- on Windows –
Settings → Network & Internet → Proxy
If you want to capture traffic coming from a single terminal use export https_proxy=http://localhost:8008
. Note that NodeJS has a hardcoded list of CA certificates so it doesn’t care for Keychain/certmgr/etc. You may need to use export NODE_TLS_REJECT_UNAUTHORIZED=0
to overcome this issue.