Getting started

farukbayhan edited this page Nov 5, 2015 · 17 revisions

Quickstart OS X

  • Install ruby (1.9.3, 2.1 or 2.2 are known to work. Don't use 2.0)
    • Shared library support is required!
      • Under rvm use --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.
  • gem install bundler
  • brew install qt cmake usbmuxd libimobiledevice
  • git clone --recursive https://github.com/dmayer/idb.git
  • cd idb
  • bundle install
  • ruby gidb.rb

Detailed Install Guide

  • Ruby (tested with 1.9.3 and 2.1. 2.0 does not work properly due to qtbindings problems)

    • Shared library support is required! When using rvm use --enable-shared when installing ruby.
    • With bundler (gem install bundler)
  • qt libraries and cmake for compiling the qt ruby bindings.

    • OS X: brew install qt cmake
    • Ubuntu: apt-get install cmake libqt4-dev
  • Some helpers used internally by gidb: git, rsync, libimobiledevice, plist-util

    • OS X: brew install libimobiledevice usbmuxd (rsync, git, plist-util should already be there.
    • Ubuntu: apt-get install git-core libimobiledevice-utils libplist-utils usbmuxd
  • Clone the repo

  • Bundle install ruby dependencies: bundle install

    • This will take a while since qt bindings may need to be compiled.
    • If the Qt compilation fails with some linker errors, your ruby does no support shared libraries. If you use rvm (http://rvm.io/) you can simply pass --enable-shared when installing a ruby.
  • Run ruby gidb.rb

Device Requirements

  • Jailbroken iOS 6 or 7 (most things tested on 7, but 6 is safer for now).
  • SSH server running (get it from Cydia)
  • apt-get or aptitude (get it from Cydia)

Configuration

  • Configure the device parameters in the File -> Preferences menu.
  • Connect to the device using the Device -> USB Device menu.
  • There will be a status dialog opening up which allows you to install some additional tools automatically. IF you don't do this, there will likely be crashes.

Problems?

Get in touch!

  • @DanlAMayer
  • mayer [at] cysec.org
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.