<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Crack App | 某新聞 app 注冊(cè) token 加密邏輯分析

          共 1292字,需瀏覽 3分鐘

           ·

          2022-05-21 15:27

          點(diǎn)擊上方“咸魚(yú)學(xué)Python”,選擇“加為星標(biāo)

          第一時(shí)間關(guān)注Python技術(shù)干貨!


          圖源:極簡(jiǎn)壁紙

          今日目標(biāo)

          aHR0cHM6Ly93d3cud2FuZG91amlhLmNvbS9hcHBzLzY2Mjk5Mzg=

          抓包分析

          在內(nèi)容列表的請(qǐng)求包里面的有token這個(gè)參數(shù)值

          但是在開(kāi)始的這個(gè)init包里面沒(méi)有這個(gè)token

          在開(kāi)始的這個(gè)init請(qǐng)求之后的所有的包都帶有token這個(gè)參數(shù)

          猜測(cè)是開(kāi)始的init包帶有的加密返回值有這個(gè)token參數(shù),就類(lèi)似設(shè)備注冊(cè)的意思

          所以分析的重點(diǎn)從列表頁(yè)移動(dòng)到了開(kāi)始的init包里面

          查殼與脫殼

          先看看這個(gè)app的殼能不能搞

          好像有點(diǎn)難搞,先用寒冰大大的FART試試

          試了下開(kāi)源版的frida_fart,提示進(jìn)程終止,應(yīng)該是沒(méi)了,可能是我的姿勢(shì)不對(duì),有知道的大佬評(píng)論區(qū)指點(diǎn)一下

          于是我換北風(fēng)哥的脫殼機(jī)試了一試,于是我找北風(fēng)哥 py 了一下,舒服~

          北風(fēng)哥也提示了我可以用frida-dexdump試試,并且fart也是可以的,操作提示如下

          在北風(fēng)哥的提示下,我研究一下用frida-dexdumpijm企業(yè)版

          拖完發(fā)現(xiàn)沒(méi)有北風(fēng)哥脫得全,應(yīng)該還是我的姿勢(shì)不對(duì),所以接下來(lái)我還是用北風(fēng)哥脫得 dex 分析

          加密邏輯分析與定位

          因?yàn)橛?code style="font-size: 14px;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;color: rgb(71, 193, 168);">init這個(gè)請(qǐng)求返回的data的加密,所以以init為關(guān)鍵詞搜索

          看了幾個(gè)位置,感覺(jué)相關(guān)性都不高

          想了一下用token作為關(guān)鍵詞檢索,發(fā)現(xiàn)結(jié)果是在太多了,有1800+多個(gè)相關(guān)的結(jié)果,最后還是在inits里面找到了

          在這個(gè)位置點(diǎn)進(jìn)去,然后通過(guò)InitParam聲明的地方找到下面的位置

          那么在請(qǐng)求頭中的siganature可能就是這里獲取到的,通過(guò)getSign關(guān)鍵詞找到下面這個(gè)位置

          所以在header中的siganature就是getSign(),然后在這個(gè)位置出入m.c并將結(jié)果階段傳入e.a

          但是通過(guò)wallbreak只看到下面的代碼

          這樣感覺(jué)沒(méi)辦法搞啊,經(jīng)過(guò)一番尋找,還得是舊版的app牛逼

          在舊版的app里找到下面的代碼

          照著和新版對(duì)比一下就知道,e.aDES.decrypt,然后m.cMD5

          既然是這樣的話就很簡(jiǎn)單了

          按照這個(gè)思路復(fù)寫(xiě)應(yīng)該就可以了

          key是由這里的邏輯生成的

          這里用到的APP_SECRET_AKEY和時(shí)間戳多次MD5得到 key

          ps:就在上圖邏輯的上方,新舊版本相同

          得到key之后,解密入?yún)⒌氖钦?qǐng)求返回的密文 data

          python可以實(shí)現(xiàn)解密

          可以看到在結(jié)果里面取到token

          簡(jiǎn)單總結(jié)

          這個(gè)app磕磕絆絆了很久,在新版的加密上琢磨了很久,鉆了牛角尖,如果早點(diǎn)分析舊版估計(jì)很快就分析出來(lái)了

          所以之后如果不是必要還是不要死磕新版,不僅加固牛逼,混淆也很厲害,還有檢測(cè),我用fridaobjection都沒(méi)辦法spawn的方式啟動(dòng)app

          唉,又是被APP教做人的一天。

          感謝北風(fēng)哥,2h 大佬等眾多哥哥的脫殼測(cè)試。

          End.

          以上就是全部的內(nèi)容了,咱們下次再會(huì)~

          公眾號(hào)配套技術(shù)交流群,備注【咸魚(yú)666】,入群交流

          我是沒(méi)有更新就在摸魚(yú)的咸魚(yú)

          收到請(qǐng)回復(fù)~

          我們下次再見(jiàn)。

          對(duì)了,看完記得一鍵三連,這個(gè)對(duì)我真的很重要。

          瀏覽 63
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  三级五月天 | 天堂俺去俺来也www久久婷婷 | 久草福利在线 | 蜜桃丰满熟妇av无码区不卡 | 曰日骚 |