最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS逆向教程之跟蹤函數(shù)調(diào)用詳解

 更新時(shí)間:2018年04月04日 08:46:43   作者:狼喜歡夏天  
這篇文章主要給大家介紹了關(guān)于iOS逆向教程之跟蹤函數(shù)調(diào)用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

今天學(xué)習(xí)的是跟蹤函數(shù)調(diào)用,什么意思呢,舉個(gè)例子,如果想做一個(gè)微信自動(dòng)搶紅包的插件,就需要寫這么一個(gè)功能,當(dāng)紅包來了的時(shí)候,自動(dòng)觸發(fā)微信的搶紅包函數(shù)。好,那咱就先找到這個(gè)函數(shù)。

映射端口

$ sh usb.sh
Forwarding local port 10001 to remote port 22
Incoming connection to 10001

另起一終端登錄

$ sh login.sh

找到微信安裝路徑

ps -A|grep mobile
 8636 ??   0:35.91 /var/mobile/Containers/Bundle/Application/EB02DC6D-EBE5-4BE8-92CE-B9ABE75B3C3E/WeChat.app/WeChat

順便查看一下微信的 Bundle Id,創(chuàng)建Tweak的時(shí)候會(huì)用到

通過 cycript 注入 微信

~ root# cycript -p WeChat

執(zhí)行命令查看info 信息,查找 CFBundleIdentifier 獲取 Bundle Id

cy# [[NSBundle mainBundle] infoDictionary].toString()
CFBundleIdentifier = "com.tencent.xin";

現(xiàn)在脫殼,(因?yàn)槭菑腁pp Store上下載的)

 ~ root# DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Containers/Bundle/Application/EB02DC6D-EBE5-4BE8-92CE-B9ABE75B3C3E/WeChat.app/WeChat

脫殼成功,退出登錄手機(jī)狀態(tài)

exit

將文件拷貝出來

 $ scp -P 10001 root@localhost:/var/root/WeChat.decrypted Wechat

查看是否脫殼成功

 $ otool -l Wechat | grep cryptid
  cryptid 0

導(dǎo)出微信頭文件

$ class-dump -H Wechat -o WechatHeaders

然后來到微信有紅包的聊天界面,通過Reveal 查看當(dāng)前界面的Controller 是BaseMsgContentViewController

然后找到剛剛導(dǎo)出的 BaseMsgContentViewController.h 文件打開,我去,有五百多個(gè)函數(shù).怎么辦,怎么知道那個(gè)是咱要用的函數(shù)?

有一個(gè)辦法,那就是創(chuàng)建一個(gè)Tweak工程,Tweak.xm 文件修改成如下內(nèi)容

%hook BaseMsgContentViewController
- (void)touchesBegan_TableView:(id)arg1 withEvent:(id)arg2
{
 NSLog(@"%@",NSStringFromSelector(_cmd));
 %orig;
}
...
%end

上面三個(gè)點(diǎn)代表那五百多個(gè)函數(shù)。很恐怖吧。

重點(diǎn)來啦,logify.pl腳本,是安裝theos的時(shí)候自帶的,該腳本用來注入NSLog來打印方法的入?yún)⒑统鰠ⅰ?就是在所有的方法里面加 log)

位置在

/theos/bin/logify.pl

這是替身,真實(shí)路徑在

/theos/vendor/logos/bin/logify.pl

在終端執(zhí)行命令

$ logify.pl BaseMsgContentViewController.h > Tweak.xm

ps: 能夠執(zhí)行l(wèi)ogify.pl 命令是因?yàn)樵?.bash_profile 文件中添加了

export THEOS=~/theos
export PATH=$THEOS/bin:$PATH$ 

查看剛剛生成Tweak.xm 文件

注意紅框的位置

  • %log 是調(diào) unix 的系統(tǒng)日志打印服務(wù)
  • %orig 是調(diào)用原始方法的代碼
  • HBLogDebug 是打印出返回值

這樣多方便,不需要一個(gè)個(gè)去寫了。用新生成的Tweak.xm 文件替換 Tweak工程生成的Tweak.xm文件

新建一個(gè)工程,在終端輸入

```

nic.pl

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論

民权县| 西乌珠穆沁旗| 宜君县| 高尔夫| 黄石市| 弥渡县| 闽清县| 万山特区| 郎溪县| 盈江县| 夏河县| 宜州市| 广灵县| 靖宇县| 当涂县| 平昌县| 临洮县| 连江县| 东阳市| 普安县| 化州市| 新乡市| 济宁市| 长垣县| 安康市| 琼结县| 余干县| 门源| 洛川县| 沅江市| 余庆县| 红原县| 石渠县| 沂水县| 奉化市| 图木舒克市| 长治市| 凤台县| 盱眙县| 疏附县| 巩义市|