ProxymanApp / ProxymanApp/Proxyman

Capture Traffic from Non-Proxy-Aware Apps Using ProxyMan

Open
#2,131 8 comments 5 reactions 1 assignee View on GitHub

@NghiaTranUIT is already working on this.

Since Sep 8, 2024.

question
Dominant language
No language data
Stars
7k
Forks
237
PR merge metrics
No merged PRs in 30d

Description

I would like to use ProxyMan to capture traffic from non-proxy-aware apps. ProxyMan has a very user-friendly UI and works perfectly with proxy-aware apps, where I can set up an HTTP proxy on a mobile device and view traffic on a ProxyMan instance running on a macOS PC.

Current Setup:

iOS App: Does not honor HTTP proxy settings.
macOS: Running ProxyMan to capture traffic.

Steps Taken:

  1. Connect iPhone to MacBook via USB.
  2. Set up internet sharing on macOS to route all iOS traffic through macOS.
  3. Use pfctl to redirect traffic to ProxyMan running locally on port 9000:
rdr proto tcp from any to any port 80 -> 127.0.0.1 port 9000
rdr proto tcp from any to any port 443 -> 127.0.0.1 port 9000
  1. Install ProxyMan certificate as per instructions.

Observations:
HTTP Traffic: Successfully captured and displayed in ProxyMan.
HTTPS Traffic: Browser shows "can't establish a secure connection to the website."

Comparison with Burp Proxy:
Using Burp Proxy in invisible mode, HTTPS traffic is successfully captured and displayed.
It appears that Burp Proxy handles HTTPS traffic differently, even though the approach seems similar.

Request:
I understand that ProxyMan is primarily designed for HTTP proxying. However, I would like to understand what Burp Proxy does differently to handle HTTPS traffic successfully. It's also unclear why HTTP works successfuly, while HTTPS does not

Links:

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.