在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ iOS/ Hack 必備的命令與工具
Hack 實戰(zhàn)——支付寶 App 手勢密碼校驗欺騙
使用 Reveal 分析他人 App
后臺 daemon 非法竊取用戶 iTunesstore 信息
使用 iNalyzer 分析應用程序
越獄檢測的攻與防
使用 introspy 追蹤分析應用程序
廢除應用程序的 ASLR 特性
使用 Cycript 修改支付寶 App 運行時
敏感邏輯的保護方案
Fishhook
使用 class-dump-z 分析支付寶 App
static 和被裁的符號表
iOS7 的動態(tài)庫注入
二進制和資源文件自檢
Hack 實戰(zhàn)——探究支付寶 App 手勢密碼
使用 Keychain-Dumper 導出 keychain 數據
數據擦除
Hack 實戰(zhàn)——解除支付寶 App 手勢解鎖錯誤次數限制
Objective-C 代碼混淆
阻止 GDB 依附
基于腳本實現(xiàn)動態(tài)庫注入
Hack 必備的命令與工具
鍵盤緩存與安全鍵盤
數據保護 API

Hack 必備的命令與工具

常用的命令和工具

ps ——顯示進程狀態(tài),CPU 使用率,內存使用情況等
sysctl ——檢查設定 Kernel 配置
netstat ——顯示網絡連接,路由表,接口狀態(tài)等
route ——路由修改
renice ——調整程序運行的優(yōu)先級
ifconfig ——查看網絡配置
tcpdump ——截獲分析網絡數據包
lsof ——列出當前系統(tǒng)打開的文件列表,別忘記一切皆文件,包括網絡連接、硬件等
otool ① ——查看程序依賴哪些動態(tài)庫信息,反編代碼段……等等等等
nm ② ——顯示符號表
ldid ③ ——簽名工具
gdb ——調試工具 patch ——補丁工具
SSH ——遠程控制

備注: ① otool,可查看可執(zhí)行程序都鏈接了那些庫: otool -L WQAlbum

可以得到:

WQAlbum:
    /System/Library/Frameworks/StoreKit.framework/StoreKit (compatibility version 1.0.0, current version 1.0.0)
    /System/Library/Frameworks/AdSupport.framework/AdSupport (compatibility version 1.0.0, current version 1.0.0)
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
    /System/Library/Frameworks//MediaPlayer.framework/MediaPlayer (compatibility version 1.0.0, current version 1.0.0)
    /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices (compatibility version 1.0.0, current version 40.0.0)
    /System/Library/Frameworks/CoreMedia.framework/CoreMedia (compatibility version 1.0.0, current version 1.0.0)
……

可以反編譯 WQAlbum 的 __TEXT__ 段內容, 截前 10 行: otool -tV WQAlbum |head -n 10

可以得到:

WQAlbum:
(__TEXT,__text) section
start:
00002de0    pushl   $0x00
00002de2    movl    %esp,%ebp
00002de4    andl    $0xf0,%esp
00002de7    subl    $0x10,%esp
00002dea    movl    0x04(%ebp),%ebx
……

② nm,顯示程序符號表,用我自己的應用程序私人相冊現(xiàn)身說法一下: nm -g WQAlbum ( -g 代表 global )

可以得到:

001e5eec S _OBJC_IVAR_$_WQPhotoViewController.albumObject
001e5efc S _OBJC_IVAR_$_WQPhotoViewController.int_current
001e5f00 S _OBJC_IVAR_$_WQPhotoViewController.int_total

其中,WQPhotoViewController 為類名,albumObject 為該類的成員

③ ldid,是 iPhoneOS.platform 提供的簽名工具,我們自己編譯的程序需要簽上名才能跑在 iPhone/iPad 上,使用方法

export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
ldid -S helloworld 

編譯 Hello World

首先找到編譯器:

http://wiki.jikexueyuan.com/project/ios-security-defense/images/hacktools1.png" alt="hacktools1" />

arm-apple-darwin10-llvm-gcc-4.2 就是了。 為了方便起見,可以在 .bashrc 或者 profile 配置下環(huán)境變量,方便編譯。

找到 SDK

編譯我們自己的程序的時候需要指定該目錄下的 SDK 。

來個經典 Hello World :

#include <stdio.h>                                                                                            
int main(){  
       printf("Hello world !!!\n");  
       return 0;  
}

編譯

http://wiki.jikexueyuan.com/project/ios-security-defense/images/hacktools2.png" alt="hacktools2" />

其中 -isysroot 用來指定 build 時的 SDK

校驗

http://wiki.jikexueyuan.com/project/ios-security-defense/images/hacktools3.png" alt="hacktools3" />

file 查看一下類型,沒問題。

SCP 給 iPhone、iPad

前提是,設備已經越獄并且安裝了 SSH ,且必須在同一網段。 $scp helloworld root@x.x.x.x:hello world

登錄設備簽名

$ssh -l root x.x.x.x

#ldid -S helloworld

執(zhí)行程序

#./helloworld
Hello world !!!  

運行成功,這就完成了最簡單的手動執(zhí)行自己的應用程序。