-
Notifications
You must be signed in to change notification settings - Fork 106
Setup iSpy from Source
The recommended build/test setup:
- Xcode 6.1.1
- OSX 10.10
- iOS 8.x (32 bit)
However, iSpy should work with:
- Xcode 5+ running on OSX 10.8+
- Any jailbroken iOS device running: 32bit iOS 6, 7, or 8
Other versions may work but have not been tested; 64-bit versions of iOS are known to not work, however we do plan on adding support in the future.
You will need to setup a few tools on your Mac to assist with the build process.
First, follow this guide to setup Theos and Ldid.
Next install homebrew
First do a recursive clone of the public repo:
git clone https://github.com/BishopFox/iSpy --recursive
Next we need to build the CocoaHTTPServer dependency, this step is optional as a binary is included with the main iSpy repo.
cd iSpyServer/CocoaHTTPServer/
./build.sh
This will create a new CocoaHTTPServer.a
file in the iSpy/libs
directory.
Next build the main repo, cd
back to the root of the main iSpy git repo and:
make clean
make
make package
This will produce a new .deb
If you get the error:
/Applications/Xcode.app/Contents/Developer/usr/bin/make package requires dpkg-deb.
make: *** [internal-package-check] Error 1
It means you need to install the Debian package manager. I use Brew, so it was just a case of running brew install dpkg
to get up and running.
iSpy has three binary dependancies on the iOS device: cycript, preferenceloader and applist the easiest way to install these is to ssh into your device and use apt-get
:
apt-get install cycript applist preferenceloader
After that just install the .deb we compiled in the previous step, then bounce SpringBoard:
dpkg -i <.deb file>
killall -HUP SpringBoard
iSpy injects Cycript into the target app automatically by default. In order for the iSpy UI integration to work, you must first install Cycript onto your device (just use Cydia). Once installed, you can access Cycript from the iSpy UI by simply hitting the hotkey (ctrl-`). You can also connect remotely from a command-line, like so:
cycript -r ip_of_your_device:12345