idb - iOS pentesting and research

idb Main Screen
idb has some prerequisites. As it turns out, things like ruby and Qt are difficult to bundle into a stand-alone installer. While idb itself can easily be installed via Ruby Gems, you need to have some additional software first:


 Ruby Environment

idb requires a valid ruby 2.1+ installation and it is recommended to install the used ruby using RVMRuby 2.0 does not work properly due to issues with qtbindings.
Important Note: Shared library support is required! This is the default for many system rubies, but if you install a ruby via rvm or similar, you need to do one of the following:
  • Under rvm use rvm install 2.4.1 --enable-shared when installing ruby.
  • Under ruby-install/chruby use -- --enable-shared when installing ruby.
  • Under ruby-build/rbenv with ruby-build use CONFIGURE_OPTS=--enable-shared [command] when installing Ruby.

 Install Other Prerequisites:

For OS X:
Homebrew removed Qt4 from the main repositories and only provides Qt5 libraries. Unfortunately, there are no Qt5 bindings for ruby available as of yet. The following will add a repository containing Qt4 libraries. Thanks to moloch- for posting the instructions on Github.

brew tap cartr/qt4
brew tap-pin cartr/qt4
brew install cartr/qt4/qt@4

Install the remaining dependencies

brew install cmake usbmuxd libimobiledevice

Building nokogiri will likely require a working XCode installation:

xcode-select --install

If you run into problems compiling nokogiri upon installation of idb, check
For Ubuntu:

apt-get install cmake libqt4-dev git-core libimobiledevice-utils libplist-utils usbmuxd libxml2-dev libsqlite3-dev -y

Installing idb

  • Install idb: gem install idb
  • Run idb: idb
  • Hooray!
Powered by Blogger.