Using Fiddler to sniff mobile device application traffic

comments

Ever wondered what your favourite iPhone, Android or Windows Phone application is actually doing with your data plan? Wonder if its sending your data to the mother ship without you knowing – Fiddler can be used to easily check this data traffic in the same way that it can be used for web application and web-service troubleshooting and development work.

image Recently I've been involved in some mobile device development and became concerned by the selection of code libraries that are on offer to allow you to track how users use your application – this got me thinking:

“…which of my phone’s applications are doing this?…”

My brain got to thinking of an easy way to check the data coming and going on my phone (an iPhone – i hope this doesn’t polarise my readers into thinking I'm best buddies with Steve).

Fiddler has been a staple of my work days for many years now. It allows you to see inside requests coming and going from your browser, allowing you to easily see and troubleshoot Ajax requests and work you do with web services. A little known feature of fiddler though, is it ability to accept remote connections, allowing you to set it as your phones or devices proxy server when on wireless and watch the traffic coming and going. All you need is a desktop/laptop and a wireless network and you’re good to go.

Time to get your hacker hat on

Download and install Fiddler on a desktop/laptop on your local wireless network.

http://www.fiddler2.com/

Start up Fiddler and in the top menu bar select “Tools”, and the select “Fiddler Options

image

Select the “Connections” tab and tick the box marked “Allow remote computers to connect”

image

Click OK to save your settings.

NOTE: the steps below only apply to devices running iOS (as i only have access to my iPhone) – please consult your devices respective documentation to set it’s proxy server settings.

Connect both you PC and your iPhone to your wireless network

Get your PC’s IP address for use further down the page – write this number down.

On your iPhone open the “Settings” application and select the “Wi-Fi” option

image

Select your wireless network from the list and select the arrow next to it on the right.

image

Scroll to the bottom of the page and change the Http Proxy and change the option from Off to Manual

Enter the IP address that your wrote down above for your PC/laptop and the port you have Fiddler running on (by default this is 8888). Leave Authentication off

image

Switch to your desktop/laptop, open fiddler and while watching you PC, fire up your favourite application on your device – watch the requests come and go!

image