2010年5月6日 星期四

IPhone Case Study

相信很多人對IPhone要如何 JailBreak感興趣, 底下就大概介紹 IPhone 是如何跟 ITune 溝通. Target : Communication Interface 4 IPhone and Itune
Env : Linux (Ubuntu) Lib : libusb-1.0 定義Usb裝置, configure Address, ID... usbmux 控制 Usb裝置, Create Link, Lock Link, Close Link... usbmuxlib ... libiphone 為iPhone 自己內建OS的Lib ifise 為Access iPhone Root 的proc (取的photo, music...) 透過 AFC 的格式.
Flow: iPhone 首先會跟 ITune 透過TCP protocl 建立連線, iPhone 會送出 ECID SHSH file(exclusive chip identification number), 跟 config( Mode type), usbmuxd 接收到這些訊號後會根據Mode Type 把資料往上送(libiphone), 當然在這之中 Apple 會對傳輸的資料作加密, 解密的動作. lipiphne 會根據收到的Package 回建成iphobe 的Data Based. 最後再透過 ifuse 來存取我們要的Data. Ex : ifuse : Read("/iphone/xxx.jpg"); libiphone : iPhone_Rd(0x00100000); command libusbmuxd : 0x00100000 -> 0x00001000; 編碼(加密 MD5, AES...) libusb : &Read(0x00001000); 傳送加密的data 到Iphone iPhone : 解密後, 再把Data 加密後往上送回libusb. libusb : 在往上送給libusbmuxd做判斷(解密). ... ifuse : 取得xxx.jpg的Path跟Inf Ref: http://www.omnia-repair.com/forum/topic/iphone-jtag Ref: libimobiledevice http://libimobiledevice.org/ eclipse CDT + iphone http://www.gbox.lt/drupal/en/node/44 IPhone Wiki http://theiphonewiki.com/wiki/index.php?title=Main_Page

7 則留言:

  1. iphone jailbreak 3.1.3

    可完全jb

    Spirit freed
    http://spiritjb.com

    回覆刪除
  2. iphone serial port (UART)

    http://devdot.wikispaces.com/Iphone+Serial+Port+Tutorial

    回覆刪除
  3. UART wiki

    http://en.wikipedia.org/wiki/UART

    回覆刪除
  4. glib cross compiler 4 iphone

    http://ipod-touch-max.ru/cydia/index.php?cat=package&id=850

    回覆刪除
  5. SSH to your iphone

    http://cazisoft.com/2009/openssh-usb-instead-of-wifi

    回覆刪除
  6. SSH iphone with linux

    http://dev.squarecows.com/2009/05/06/iphone-linux-tethering-via-usb-cable/

    回覆刪除
  7. 好物 list 4 cydia

    http://sasoft2277.blogspot.com/2010/05/cydia-hk.html

    回覆刪除