Monitoring traffic from a mobile device can help in many debugging scenarios. Fiddler is a great tool to monitor and debug http(s) requests. This post will describe all necessary steps to use Fiddler to monitor any traffic from a mobile device (also for apps).

Install and configure Fiddler

  1. Install the latest version of Fiddler.
  2. Install the CertMaker for iOS and Android (overrides the default cert-maker from Fiddler to get compatibility with Android/iOS)
  3. Open Fiddler Options (Tools -> Fiddler Options)
  4. Switch to Connections tab
  5. Check the Fiddler listens on port (should be 8888, but you can change it if needed)
  6. Make sure that “Allow remote computers to connect” is checked
  7. Switch to HTTPS tab
  8. Make sure that “Capture HTTPS CONNECTs” is checked
  9. Make sure that “Decrypt HTTPS traffic” is checked

    Note: If you previously already had a certificate made with the default or another generator than the CertMaker, you might need to regenerate the certificate (by deactivating “Decrypt HTTPS traffic”, then clicking “Remove Interception Certificates” and then reactivating “Decrypt HTTPS traffic” again).

  10. Make sure “Ignore server certificate errors” is checked
  11. Restart Fiddler

Setup proxy on Android

  1. Open Settings -> Wi-Fi
  2. Edit the network you’re currently using
  3. Choose “Show advanced options”
  4. Change “Proxy settings” to “Manual”
  5. Enter the IP of the Windows PC with Fiddler under “Proxy host name”
  6. Enter the Fiddler port (default 8888) under “Proxy port”
  7. Save the settings

Setup proxy on iOS

  1. Open Settings
  2. Edit your current network
  3. Go to “Http-Proxy” and set it to “Manual”
  4. Enter the IP of the Windows PC with Fiddler under “Server”
  5. Enter the Fiddler port (default 8888) under “Port”
  6. Make sure “Authenticate” is not checked

Install the Fiddler certificate on the device (needed for HTTPS)

  1. Open any browser on the mobile device
  2. Browse to http://<your windows ip>:<fiddlerport> (eg: http://192.168.1.30:8888)

    Note: You might get a “Connection Refused” here. If this is the case, you can try to disable the “Enable IPv6 (if available)” checkbox in the “General” tab.

  3. Click on “FiddlerRoot certificate”
  4. Install the certificate (might need your device pin or password)

Hint: Chrome traffic not captured

If the traffic from the chrome browser is then not visible in Fiddler this might be because of the “Reduce data usage” setting of chrome. This means that the traffic is redirected thru a google proxy and therefore does not work with your Fiddler proxy. To fix this, just disable the “Reduce data usage” and “Preload webpages” option in Chrome (Advanced -> Bandwidth management)

Leave a Reply

Your email address will not be published.

*