Free wifi is everywhere. It may seem like a godsend if you stumble upon a free wifi network, but watch out. A wifi network can be easily created just to steal your information.
I’m going to show just how easy it is to setup a fake free wifi network to monitor all network traffic going through it. To do this you will need two network cards, one will connect to an existing wifi network and the other will rebroadcast it out as “free wifi”. I will explore two different methods of doing this, but both have the same end result. I will use a Mac for both, but the same thing can be performed on Windows or Linux.
In the rare case that you need to monitor UITextField selection changes, there are very few ways to do this. The first is with method swizzling, however this involves messing with private APIs, which can be dangerous. The second is in a place you wouldn’t expect to find it, which is what I’m going to cover.
Previously when I’ve needed to monitor web traffic from my iPhone I would use my laptop to redistribute my wifi as a 2nd network with another network card and use a tool like WireShark or Charles to monitor everything that’s being sent and received from my iPhone after I connected to the 2nd network. This was overcomplicating things, hidden in the iPhone’s settings is the ability to connect to a proxy server, meaning you can debug web traffic without the need for any 2nd networks or ethernet cables.
There are probably a dozen ways to capture and monitor touches on the iOS. Some require a lot of work, including method swizzling, or using private/undocumented APIs which might result in your application being rejected from the AppStore.
In a project I’ve been working on recently I need to interact with other process’ windows on the Mac. The application lets you drag windows around that will ‘bolt-on’ to another application’s window and follow it around the screen