這次有點騷了,破解安卓某 APP 低層加密
今天給大家分享一下如何逆向分析 Native 層的加密始腾,整個過程的思路值得借鑒,接下來我給大家進(jìn)行演示空执,搞起:
所需設(shè)備和環(huán)境設(shè)備:安卓手機(獲取root權(quán)限)抓包:fiddler + xposed + JustTrustMe反編譯:jadx-gui浪箭,ida抓包按照慣例,這里隱去 app 的名稱辨绊,開啟 fiddler 抓包后 app 提示連接不到網(wǎng)絡(luò)奶栖,判斷是證書驗證,開啟 xposed 框架门坷,再次請求宣鄙,成功抓到包,連續(xù)請求兩次來對比參數(shù)變化:
可以看到 x-app-token 這個參數(shù)不一樣默蚌,其他參數(shù)都是固定的冻晤,先簡單看一下 x-app-token 的構(gòu)成:
這樣做了一下?lián)Q行绸吸,有沒有發(fā)現(xiàn)什么規(guī)律?我一眼就看出來第二行是手機的 deviceID锦茁,因為爬蟲寫多了,這個字符串經(jīng)常出現(xiàn)码俩,第一行是 32 位,應(yīng)該就是個 md5稿存, 第三行是個 16 進(jìn)制數(shù),知道了這些挠铲,接下來就來反編譯,搜索這個關(guān)鍵字拂苹。反編譯反編譯之前先使用 ApkScan-PKID 查一下是否有殼痰洒,養(yǎng)成好習(xí)慣浴韭,這個 app 沒有加殼,直接用 jadx 打開念颈,全局搜索 “x-app-token”泉粉,只有一處,應(yīng)該就在這里了:
從框中代碼發(fā)現(xiàn) x-app-token 的值就是 as榴芳,而 as 是函數(shù) getAS 生成的嗡靡,按住鼠標(biāo)左鍵,點擊 getAS 進(jìn)去看看詳情:
它把函數(shù)過程寫到 native 層中去了窟感,那只好去分析這個名為native-lib 的 so 文件了讨彼,解壓目標(biāo) apk 獲取到了如下圖這些文件:
so文件就在這個lib文件夾里:
ida中打開這個文件,切換到 Export 導(dǎo)出函數(shù)選項卡柿祈,先來直接搜索getAS:
沒有搜到getAS哈误,倒是搜到了 getAuthString,名字很像躏嚎,打開看看吧蜜自,按 F5 可以把匯編代碼轉(zhuǎn)換為偽 c 代碼,下拉分析一波卢佣,看到了 md5 關(guān)鍵字:
代碼有點難懂重荠,連懵帶猜 v61 應(yīng)該是 MD5 加密后的結(jié)果,然后 append 似乎是在拼接字符串珠漂,看到了“0x”晚缩,根據(jù)抓包的結(jié)果已經(jīng)知道 x_app_token 的第三行是個 16 進(jìn)制數(shù),那應(yīng)該是這里的v86了媳危,向上看看它具體是什么:
v86存的是 v40 的值荞彼,而 v40 就是當(dāng)前的時間戳,那 x-app-token 第三行應(yīng)該就是時間戳的 16 進(jìn)制數(shù)待笑。接下來看看 md5 的入?yún)関58,v52,v53鸣皂,重點來看v52,往上追朔看到其和 v51 是相等的暮蹂,而 v51 是一個未知字符串經(jīng)過 base64 編碼得到的寞缝,先來hook這兩個函數(shù),寫段腳本:
第1處和2處分別是目標(biāo)函數(shù)的地址仰泻,鼠標(biāo)點到目標(biāo)函數(shù)處荆陆,ida左下角會顯示,加1是為何被啼,只記得大學(xué)時候?qū)W過匯編語言講到段地址,偏移地址泡挺,物理地址這些娄猫,猜測和這些知識有關(guān)媳溺,還需研究跪腹,這里先這樣用冲茸,第3處的寫法是當(dāng)這個參數(shù)為字符串時的寫法轴术,運行一波钦无,看看打印輸出:
同時也來抓包:
把v52的值放到在線MD5網(wǎng)站中加密看看:
和抓包得到的結(jié)果是一樣的彼宠,那就證明hook點找對了凭峡,那么v49就是base64編碼之前的值摧冀,v49是什么呢系宫,仔細(xì)一看扩借,里面也有deviceID,再來分割一下:
第一行通過兩次hook凄杯,發(fā)現(xiàn)他是固定不變的秉宿,第二行是改變的描睦,32位忱叭,看起來又是個md5,第六行是包名爵卒,返回偽c代碼钓株,再來分析看看轴合,在前面又看到了MD5加密的地方:
那來hook這個函數(shù)受葛,看看入?yún)ⅲ?div id="bbalpgx" class="image-package">
打印的入?yún)?shù)據(jù)為:
S是一個時間戳总滩,拿到MD5加密網(wǎng)站上驗證一下闰渔,正好和v49中包含的字符串相同:
至此澜建,逆向就完成了蝌以,來總結(jié)一下x-app-token的獲取過程跟畅,先是帶有把時間戳進(jìn)行md5,按下圖順序拼接:
然后把拼好的字符串進(jìn)行base64編碼奸攻,最后把編碼結(jié)果進(jìn)行MD5睹耐,得到x-app-token的開頭部分,組成如下:
接下來寫個腳本來請求數(shù)據(jù)請求代碼如下:
運行,成功拿到數(shù)據(jù):
總結(jié)今天主要介紹了 native 層 hook 的方法赘风,雖然 so 文件中的偽c代碼要有一定的基礎(chǔ)才能看懂邀窃,但是先不要怕假哎,分析的過程中可以先大膽假設(shè)位谋,有 frida 非常強大的 hook 功能,就能一步步驗證之前的假設(shè)。這兩次都是靜態(tài)分析方法赊淑,下次我們再來介紹一下動態(tài)調(diào)試的方法仅讽。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
序言:七十年代末洁灵,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子苫费,更是在濱河造成了極大的恐慌双抽,老刑警劉巖牍汹,帶你破解...
序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異嫁蛇,居然都是意外死亡睬棚,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來新荤,“玉大人,你說我怎么就攤上這事篱瞎。” “怎么了俐筋?”我有些...
文/不壞的土叔 我叫張陵澄者,是天一觀的道長粱挡。 經(jīng)常有香客問我俄精,道長,這世上最難降的妖魔是什么嫌套? 我笑而不...
正文 為了忘掉前任踱讨,我火速辦了婚禮碳胳,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘产雹。我一直安慰自己翁锡,他們只是感情好,可當(dāng)我...
文/花漫 我一把揭開白布。 她就那樣靜靜地躺著角溃,像睡著了一般减细。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上未蝌,一...
那天左冬,我揣著相機與錄音拇砰,去河邊找鬼。 笑死毕匀,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蹋笼。 我是一名探鬼主播剖毯,決...
文/蒼蘭香墨 我猛地睜開眼逊谋,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了板鬓?” 一聲冷哼從身側(cè)響起,我...
序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎抄腔,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體绵患,經(jīng)...
正文 獨居荒郊野嶺守林人離奇死亡落蝙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
正文 我和宋清朗相戀三年掘殴,在試婚紗的時候發(fā)現(xiàn)自己被綠了奏寨。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
序言:一個原本活蹦亂跳的男人離奇死亡病瞳,死狀恐怖套菜,靈堂內(nèi)的尸體忽然破棺而出设易,到底是詐尸還是另有隱情,我是刑警寧澤戏溺,帶...
正文 年R本政府宣布,位于F島的核電站讼昆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏闰围。R本人自食惡果不足惜辫诅,卻給世界環(huán)境...
文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望么夫。 院中可真熱鬧档痪,春花似錦腐螟、人聲如沸困后。這莊子的主人今日做“春日...
文/蒼蘭香墨 我抬頭看了看天上的太陽酗宋。三九已至,卻和暖如春寂曹,著一層夾襖步出監(jiān)牢的瞬間回右,已是汗流浹背。 一陣腳步聲響...
我被黑心中介騙來泰國打工棱烂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
正文 我出身青樓哩治,卻偏偏與公主長得像秃踩,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子业筏,可洞房花燭夜當(dāng)晚...
前言 不多逼逼憔杨,這個安卓社區(qū)就是酷安,以前想過要爬這軟件蒜胖,但是都忘了消别,幾天前抓了下它的包,發(fā)現(xiàn)請求 headers...
iOSApp+springboot后端sign簽名+aes加密流程&逆向破解分析示例(class-dump+Log...
貌似是啥app不讓說台谢,但是要是用心的話應(yīng)該看圖能知道是哪個app寻狂。技術(shù)點: frida jadx(本文還用的1.0...
聲明:本教程僅用于學(xué)習(xí)交流,有任何侵權(quán)問題請聯(lián)系本人刪除 本教程案例請關(guān)注微信公眾號:逆向小白朋沮,聯(lián)系作者獲取 使用...
最近有人給我展示了一款app,說抓不到它的請求蒂胞,連上代理一看真的沒有,所以本文結(jié)束蚊锹。 一牡昆、初步試驗 連上代理后,a...