iOS逆向-用Cycript進行運行時分析(微信應用)

用Cycript進行實時修改
本文,我們將使用微信應用來執(zhí)行所有的測試。一旦微信應用應用被安裝好,請確保它運行在前臺。這是因為如果應用在后臺,那它就會被暫停,你也不能對它做啥。

1)使用ssh命令連接手機

(SSH怎么用在簡書搜索哈!)

wanggangdeMacBook-Pro:~ wanggang$ ssh root@192.168.1.100
//輸入ssh 密碼
root@192.168.1.100's password: 

2)勾住進程

一旦應用跑起來,你可以先找到其進程id,然后用cycript -p掛鉤其進程。

//連接手機
wanggangdeMacBook-Pro:~ wanggang$ ssh root@192.168.1.100
//輸入密碼
root@192.168.1.100's password: 
shujinokinakenkou:~ root# ps aux | grep "weather"
mobile   15312   0.0  2.2   897008  21904   ??  Us    6:50PM   0:07.76 /var/mobile/Containers/Bundle/Application/A402E082-7FA0-40DC-9423-ADA502E06CE2/com.yahoo.weather-35524-distribution.app/yweather
root     15352   0.0  0.0   538432    496 s000  R+    7:04PM   0:00.02 grep weather
shujinokinakenkou:~ root# cy#
-sh: cy#: command not found

//勾住we chat 列出 mobile id
shujinokinakenkou:~ root# ps aux | grep WeChat
root     15361   7.1  0.1   538432    536 s000  S+    7:08PM   0:00.05 grep WeChat
mobile   15323   1.1  4.5  1041712  45096   ??  Ss    6:50PM   0:12.23 /var/mobile/Containers/Bundle/Application/B02EC742-D61A-4F7B-B5DC-9598FF2DD165/WeChat.app/WeChat
shujinokinakenkou:~ root# cycript 15312
*** _assert(!stream->fail()):../Console.cpp(1098):Main

//勾住進程id 微信的進程id 是15323 mobile 后面的就是
shujinokinakenkou:~ root# cycript -p 15323

//下面使用cy語言愉快的調(diào)試了
cy# var delegate = UIApp.delegate
#"<MicroMessengerAppDelegate: 0x13f76f8f0>"
cy# var window = delegate.window
#"<iConsoleWindow: 0x13f68b6d0; baseClass = UIWindow; frame = (0 0; 414 736); autoresize = W+H; gestureRecognizers = <NSArray: 0x13f68d020>; layer = <UIWindowLayer: 0x13f68b6b0>>"
cy# var rootVC = windown.rootViewController
throw new ReferenceError("Can't find variable: windown")

出現(xiàn)下面代碼說明勾住進程成功

root     15361   7.1  0.1   538432    536 s000  S+    7:08PM   0:00.05 grep WeChat
mobile   15323   1.1  4.5  1041712  45096   ??  Ss    6:50PM   0:12.23/var/mobile/Containers/Bundle/Application/B02EC742-D61A-4F7B-B5DC-9598FF2DD165/WeChat.app/WeChat

如果掛鉤成功,你可以得到一個Cycript解釋器。你可以通過Objective-C的語法 [UIApplication sharedApplication].來得到實例。

3)實戰(zhàn)

執(zhí)行隱藏和顯示狀態(tài)欄的命令

cy# var delegate
cy# [[UIApplication sharedApplication] setStatusBarHidden:YES]
cy# [[UIApplication sharedApplication] setStatusBarHidden:NO]
cy# [[UIApplication sharedApplication] setStatusBarHidden:YES]
cy# [[UIApplication sharedApplication] setStatusBarHidden:YES]
cy# [[UIApplication sharedApplication] setStatusBarHidden:NO]
cy# [[UIApplication sharedApplication] setStatusBarHidden:YES]
cy# [[UIApplication sharedApplication] setStatusBarHidden:NO]
cy# [[UIApplication sharedApplication] setStatusBarHidden:NO]

顯示結(jié)果,可以看到執(zhí)行命令導航欄消失和隱藏

導航欄顯示和隱藏.gif

在微信app內(nèi)彈框執(zhí)行以下命令

cy#   [[[UIAlertView alloc]initWithTitle:@"cy" message:@"guanzhuwo" delegate:ni cancelButtonTitle:@"ok" otherButtonTitles:nil, nil] show]
cy#   [[[UIAlertView alloc]initWithTitle:@"cy" message:@"guanzhuwo" delegate:ni cancelButtonTitle:@"ok" otherButtonTitles:nil, nil] show]

效果圖

彈框提示.gif

更改badge 的值執(zhí)行如下命令

cy# [[UIApplication sharedApplication] setApplicationIconBadgeNumber:1000]
cy# [[UIApplication sharedApplication] setApplicationIconBadgeNumber:1000]
cy# [[UIApplication sharedApplication] setApplicationIconBadgeNumber:100]
cy# [[UIApplication sharedApplication] setApplicationIconBadgeNumber:1]

效果圖(觀察微信圖標右上角小圓點的變化)

badge更改.gif

有了頭文件,有了ida反編譯,配合上cycript,可以驗證我們的各種關(guān)于微信代碼的猜測,但要將這些猜測串成一個可執(zhí)行的Tweak,就需要反復的大量的實驗。

cycript 還有其他的用法推薦這篇文章
iOS逆向工程(Cycript腳本語言使用與實戰(zhàn))


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,675評論 25 709
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 14,995評論 4 61
  • 11月初有一筆錢入賬,兩三個月后可能會用到,正常思路就是直接扔貨幣基金里不管它。但人嘛,就是喜歡作,好像不折騰一下...
    地心閱讀 1,045評論 0 50
  • 昨晚《歡樂頌》2終于大結(jié)局了,劇中最接地氣的人物就是樊大姐,邊追劇邊罵編劇的我,曾感嘆世事對她的不公、期待她和王帥...
    愛上小概率閱讀 541評論 0 3
  • 忽然對心理學失去興趣了。 說起來這種征兆前面冬天就開始有,緩慢增長,今天是來的劇烈……幾乎興趣全無了。 終于厭倦了...
    嫏嬛素素閱讀 239評論 0 1

友情鏈接更多精彩內(nèi)容