ProxymanApp / Proxyman

Modern. Native. Delightful Web Debugging Proxy for macOS, iOS, and Android ⚡️
https://proxyman.io
5.71k stars 189 forks source link

[IOS] Only partial traffic is captured #2167

Open gregoryorton-ws opened 1 month ago

gregoryorton-ws commented 1 month ago

Description

I have correctly set up ProxyMan pro on ios 18.01

However, I KNOW that the app I've installed is making requests because I'm also proxying the app on my mac (the web version of the same app)

However, none of the requests are being logged. It's strange, because when the app opens a webview, the requests are being logged. But the requests themselves from the app are not being logged.

Will some apps just ignore the vpn and use a normal connection? What do I need to do? On macOS I need to enable the SSL proxying by app, not by domain and it works...

(I mean the app is a production flutter app)

NghiaTranUIT commented 1 month ago

Will some apps just ignore the vpn and use normal connection? What do I need to do? On macOS I need to enable the SSL proxying by APP.

Yes, it could be if it's not a normal HTTP/HTTPS request.

Some apps can use WS, TCP/UDP to communicate with the server. So, Proxyman can't capture it.

If it open the Webview inside the iOS app -> Proxyman can capture it -> It verifies my assumption is true

Maybe you should test it:

  1. Stop Proxyman VPN and Proxyman iOS app
  2. Download Proxyman macOS
  3. Follow the doc at https://docs.proxyman.io/debug-devices/ios-device to setup your iPhone with Proxyman macOS
  4. Open your app -> Verify you can see some requests on macOS or not
gregoryorton-ws commented 1 month ago

I tried this, but the proxy on mac doesn't seem to be accessible on my current wifi (it's a wework wifi) so they might deliberately put each device on a restrictive subnet mask to prevent probing other devices. will try when I get home.

gregoryorton-ws commented 1 month ago

@NghiaTranUIT - one thing to note is it's a production flutter app. but since proxyman now uses a VPN, I don't think any of the flutter guidance should matter?

NghiaTranUIT commented 1 month ago

if it's a Flutter app, it can be the answer to why some traffic doesn't appear on Proxyman, because it might not go through the VPN or using a different transport layer.

May I ask what the name of the app is? I will test with other apps to confirm it

gregoryorton-ws commented 1 month ago

That's very generous of you to offer to do so! It's only on the US app store, Workstream https://apps.apple.com/us/app/workstream-us/id6463991552 (don't be confused with Workstream Hiring)

But not sure you can see anything but the webview since it has an auth wall and you won't see the other api requests outside of auth. I can't really give you credentials as it'd be a security hole. Maybe you'll get somewhere.

gregoryorton-ws commented 1 month ago

I tried with my phone connecting to a proxy on my mac on home connection. Same result. But I thought the point of capturing via a VPN instead of proxy was to prevent the flutter issues. They're just HTTPS requests. Not websockets.