iOS逆向之破解直播盒子

今年直播盒子特別火,朋友發(fā)了一個(gè)給我,讓我給破解一波,隨意上2張圖大家感受下就好啦

image
image

畢竟本著技術(shù)人員的精神,我真的只是為了練習(xí)技術(shù)而破解,而不是為了內(nèi)容.


image

首先安裝到手機(jī)上,趕緊抓包一波,看是否有Api直接可以使用,就懶得上逆向了,抓包用Charles或者Thor都行,大佬請(qǐng)直接上wireshark


image

通過(guò)抓包得知,除了注冊(cè)登錄接口,其他有內(nèi)容的接口都需要帶Token請(qǐng)求,且隨意掃了一下,沒(méi)有什么特別的接口可以利用


image

然后上了nmap試試看有無(wú)可利用端口
image

看了下這些端口,果然22關(guān)掉,ssh無(wú)望,888和8888一看就是寶塔


image

知道是寶塔我連3306都懶得去測(cè)試了
通過(guò)對(duì)路徑掃描,發(fā)現(xiàn)了對(duì)方的后臺(tái)管理系統(tǒng)
弱口令和sql注入隨手試了下,也沒(méi)有明顯漏洞,遂放棄,還是老老實(shí)實(shí)回去逆向App吧
image

上面都是走的彎路,還是干自己的本行來(lái)的順手.正文開(kāi)始

3掩浙、2、1

image

1、首先把ipa搞下來(lái),通過(guò)抓包獲取分發(fā)平臺(tái)的ipa下載路徑,這個(gè)沒(méi)難度,不細(xì)說(shuō)

image

因?yàn)檫@些企業(yè)簽名的App沒(méi)有上架到商店,也就沒(méi)有砸殼這一說(shuō)法,直接zip解壓縮找到可執(zhí)行文件
image

2、上class-dump,因?yàn)闊o(wú)殼,所以直接導(dǎo)出即可
命令class-dump -H XXX -o OUTPUT_PATH
image

整整齊齊,315個(gè)頭文件全部出來(lái)

3、上大殺器MonkeyDev,怎么安裝啥的請(qǐng)直接看官方Wiki
直接把ipa扔到TargetApp目錄開(kāi)始build裝手機(jī)上,然后打開(kāi)另外個(gè)殺器Reveal,直接查找到首頁(yè)控制器名稱XXXLiveController

image

注意:這里build的時(shí)候遇到了個(gè)錯(cuò)誤崩潰
image

一看份企,這不是七牛的播放SDK么,如果七牛知道拿來(lái)放這些內(nèi)容,會(huì)不會(huì)律師函警告
image

既然知道了是七牛的SDK,那簡(jiǎn)單pod走起,然后就成功編譯了
image

4、祭出神器Hopper,如果是用IDA的大佬請(qǐng)喝茶

image

因?yàn)橥ㄟ^(guò)Reveal看出了首頁(yè)布局使用的是CollectionView,所以直接定位到collectionView:didSelectItemAtIndexPath:方法即可
image

通過(guò)上面的偽代碼可以看出,當(dāng)我們點(diǎn)擊了item的時(shí)候,會(huì)先判斷你的UserDefaults中是否有token,沒(méi)有就直接跳登錄控制器了,得到這個(gè)邏輯就簡(jiǎn)單了,要么我們給他個(gè)token,要么我直接調(diào)用pushToVc到下個(gè)頁(yè)面就行了.

通過(guò)查看pushToVc的偽代碼可以看出,其實(shí)就是傳了個(gè)索引進(jìn)來(lái),然后找在listArray找到到對(duì)應(yīng)Model,然后賦值push

image

既然這樣的話,那就簡(jiǎn)單了,直接寫tweak,由于我對(duì)CaptainHook語(yǔ)法不熟,所以還是用Logos寫吧,省事
首先@interface構(gòu)造出我們要Hook的控制器,并寫上要Hook的方法,方法名字這些都在對(duì)應(yīng)的頭文件里有,直接復(fù)制過(guò)來(lái)即可
image

然后重新build裝手機(jī)上測(cè)試,預(yù)料之中,不需要登錄就push成功,但是不對(duì)呀,為啥沒(méi)數(shù)據(jù)呢傅蹂?
image

我還以為是手機(jī)卡了,下拉刷新好幾次,明顯感覺(jué)到了網(wǎng)絡(luò)請(qǐng)求,但是沒(méi)數(shù)據(jù)回來(lái),然后抓包一看,尼瑪請(qǐng)登錄,好吧,懂了,肯定是網(wǎng)絡(luò)請(qǐng)求里封裝的時(shí)候加了驗(yàn)證是否有token的選項(xiàng),沒(méi)有token直接就掛掉,為了驗(yàn)證猜想,找到他的網(wǎng)絡(luò)請(qǐng)求庫(kù),打開(kāi)看了下偽代碼,紅框中驗(yàn)證了我的想法.
image

既然你要驗(yàn)證,那我就給你個(gè)token驗(yàn)證就行了唄
image

修改tweak如下
image

image

biubiubiu

image.png

第一步搞定,成功的獲取到了數(shù)據(jù),然后我們隨便點(diǎn)一個(gè)看看

image
image

繼續(xù)上面的步驟Reveal找到控制器,繼續(xù)看方法

image

通過(guò)偽代碼得知,點(diǎn)擊cell的時(shí)候去服務(wù)器驗(yàn)證了下我們會(huì)員是否過(guò)期
image

通過(guò)查看對(duì)應(yīng)的匯編代碼,得知如果成功會(huì)去調(diào)用pushToVc:and:這個(gè)方法,那破解思路我就直接調(diào)用這個(gè)方法就好了
image

通過(guò)看其偽代碼得知,第一個(gè)參數(shù)是索引,第二個(gè)參數(shù)是個(gè)字符串.通過(guò)對(duì)頁(yè)面的查看也能得知我的猜想.

開(kāi)始寫Tweak,本來(lái)很簡(jiǎn)單的2句話,但是由于and成了關(guān)鍵字,不能作為參數(shù)名,會(huì)引起無(wú)法編譯,我想用objc_msgsend來(lái)自己調(diào)用方法,也發(fā)現(xiàn)and這個(gè)關(guān)鍵字無(wú)法編譯,那看來(lái)只能自己寫push的邏輯了

image

邏輯由上面的偽代碼翻譯成如下,這樣就跳過(guò)了這個(gè)and的坑
image

這里有個(gè)坑,暫時(shí)未知,就是用%c出來(lái)的是類對(duì)象,不是實(shí)例對(duì)象,用類對(duì)象去掉方法肯定就報(bào)錯(cuò)了,然后我就還是用了runtimegetClass來(lái)初始化實(shí)例對(duì)象了.

build后成功的進(jìn)入了直播頁(yè)面.由于內(nèi)容有些太那啥,我就不截圖了


image

然后打包ipa,重簽名,安裝,完美!一個(gè)iOS破解版直播盒子誕生.
教程到此結(jié)束,以下為瞎折騰


本著生命不息折騰不止的原則,首頁(yè)的輪播圖我也看不順眼,我得給它干掉

老套路找到輪播圖所在的Cell


image

寫tweak


image.png

直接把高寬設(shè)置為0.01,看不到就好了


image

效果完美,無(wú)廣告!

歡迎大家來(lái)私聊討論技術(shù)問(wèn)題!(你懂的(手動(dòng)狗頭))

image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市份蝴,隨后出現(xiàn)的幾起案子犁功,更是在濱河造成了極大的恐慌,老刑警劉巖婚夫,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件浸卦,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡案糙,警方通過(guò)查閱死者的電腦和手機(jī)限嫌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)时捌,“玉大人怒医,你說(shuō)我怎么就攤上這事∩萏郑” “怎么了稚叹?”我有些...
    開(kāi)封第一講書人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)拿诸。 經(jīng)常有香客問(wèn)我扒袖,道長(zhǎng),這世上最難降的妖魔是什么亩码? 我笑而不...
    開(kāi)封第一講書人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任季率,我火速辦了婚禮,結(jié)果婚禮上描沟,老公的妹妹穿的比我還像新娘飒泻。我一直安慰自己,他們只是感情好啊掏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布蠢络。 她就那樣靜靜地躺著,像睡著了一般迟蜜。 火紅的嫁衣襯著肌膚如雪刹孔。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 51,754評(píng)論 1 307
  • 那天娜睛,我揣著相機(jī)與錄音髓霞,去河邊找鬼。 笑死畦戒,一個(gè)胖子當(dāng)著我的面吹牛方库,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播障斋,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼纵潦,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼徐鹤!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起邀层,我...
    開(kāi)封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤返敬,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后寥院,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體劲赠,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年秸谢,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了凛澎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡估蹄,死狀恐怖塑煎,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情元媚,我是刑警寧澤轧叽,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站刊棕,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏待逞。R本人自食惡果不足惜甥角,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望识樱。 院中可真熱鬧嗤无,春花似錦、人聲如沸怜庸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)割疾。三九已至嚎卫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宏榕,已是汗流浹背拓诸。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留麻昼,地道東北人奠支。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像抚芦,于是被迫代替她去往敵國(guó)和親倍谜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子迈螟,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355