Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Capture Traffic from Non-Proxy-Aware Apps Using ProxyMan #2131

Open
pfedotovsky opened this issue Sep 7, 2024 · 6 comments
Open

Capture Traffic from Non-Proxy-Aware Apps Using ProxyMan #2131

pfedotovsky opened this issue Sep 7, 2024 · 6 comments
Assignees
Labels
question Further information is requested

Comments

@pfedotovsky
Copy link

pfedotovsky commented Sep 7, 2024

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:

@pfedotovsky pfedotovsky added the question Further information is requested label Sep 7, 2024
@NghiaTranUIT
Copy link
Member

Thanks for the tip about using the pfctl to redirect traffic. I will look at it.

iOS App: Does not honor HTTP proxy settings.

May I ask if you have installed & trusted the Proxyman certificate on your iPhone? You can follow the instructions in the Certificate menu -> Install for iOS -> Physical Device.

Or online at https://docs.proxyman.io/debug-devices/ios-device

You can skip the 2nd step (Set HTTP Proxy Part)

HTTPS Traffic: Browser shows "can't establish a secure connection to the website."

I believe that you forgot to install & trust the certificate, so Proxyman can't open the SSL Connection.

@NghiaTranUIT NghiaTranUIT self-assigned this Sep 8, 2024
@pfedotovsky
Copy link
Author

Yes, I have installed and trusted the ProxyMan certificate. The certificate appears to be configured correctly. When I follow the standard setup by changing the HTTP proxy settings, everything works as expected—I can browse HTTPS websites and see the requests in ProxyMan.

However, I am unable to see traffic from non-proxy-aware applications with this setup.

@NghiaTranUIT
Copy link
Member

This may explain why Burp with Invisible mode works with SSL:

Screenshot 2024-09-08 at 21 08 01

Proxyman hasn't supported this mode, so we get SSL Error as expected. I will try to fix it 👍

@pfedotovsky
Copy link
Author

@NghiaTranUIT that would be fantastic, thank you!

Proxyman's UI is incredibly clear and user-friendly—far superior to anything else I've used. If I can get it to work with non-proxy-aware apps, I'll happily delete all my other tools :)

@owensco
Copy link

owensco commented Sep 18, 2024

+1

I am able to capture browser traffic in Proxyman, but not traffic from other apps on my physical device.

@lifr0m
Copy link

lifr0m commented Nov 9, 2024

Would be very cool to have this feature

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants