1. 程式人生 > >螞蟻金服12萬破解懸賞-第一戰

螞蟻金服12萬破解懸賞-第一戰

安全 反編譯 安卓 ndk

上篇我們預測了阿裏螞蟻金服破解題目的幾種思路,現在我們來看看實際情況如何。

上篇地址

(已按照官方說明更新了下載地址)
http://www.jianshu.com/p/93b0b4e7e091

吐槽下先

上篇我們就提到了官方給的下載鏈接不可訪問,方式還以為不到開賽時間官方未開放下載,或者阿裏的同學都忙著去開宇宙最大公司大會了,得等到淩晨準時開通。

經過漫長的等待,困啊,到了零點去訪問還是無法訪問,當時想這不是阿裏的風格啊,大概00:30的時候等不下去就想看看公眾號有沒有回復,結果在公眾號文章的底部回復中看到官方的答復,公眾號的下載地址為內網地址,同時還公布了外網地址。這算不算命題組的失誤呢?

賽題情況

  1. 先上個圖給大家看看


    技術分享

    賽題界面

  2. 賽題為單機版
    我的預測之3、4明顯不符合了。

  3. 賽題的apk包沒做加固
    預測之2還是對的,但只能算對了一部分,因為apk部分的代碼相對比較簡單,而他把核心邏輯封裝到了libcore.so以及core.bin文件中,說實話我之前對這兩個玩意沒任何概念,我不認識他們他們不認識我。

  4. 開啟so破解的漫長路
    經過惡補知識,大概知道了so為何物。既然是C類的東東,那就祭出ida神器吧,不過發現自己的ida不能用F5傷心啊,於是經過多次嘗試終於找到一個靠譜的破解版可用。
    ida主要代碼部分還算清晰,不過又涉及了一個VM的概念,核心邏輯都在VM中完成,這個鬼我還在死磕中。

漲技能

經過這四天的研究,我發現自己漲了很多技能,即使不能成功破解也值了。給大家簡單列一下,有興趣可以加qq群找我,這些問題對熟悉android開發的大神是小菜一碟,但是android小白,走了很多彎路。

  1. 手機編程
    Aide一個NB的在android手機上開發android應用的app。
    之前就一直用過這個工具,奈何我的電腦開發環境不給力,eclipse下一直編譯異常,重新更新sdk後還是有問題。於是乎回到手機上開發了。

  2. 引用so
    這個問題費了很長時間才在aide中引入了32位的so,期間學會了絕對路徑load庫文件、相對路徑loadlibrary,解決了32位 64位的問題。

  3. 學會了無源代碼看app日誌
    這個問題咨詢了好幾個android開發的小夥伴,網上查了很多資料才搞定。用了adb神器,可以查看手機的logcat,熟悉了常用的命令用法。

  4. adb連接bluestack
    新手機沒有做root,調試起來很不方便,於是用了常用利器bluestack,並通過adb命令實現了模擬器的日誌查看,通過adb命令安裝應用。順便掌握了模擬器和windows互傳文件。(後來突然bluestack中不顯示windows的共享目錄的文件了,但是可以寫入文件,不知道什麽原因,重啟也未解決,後續有時間再跟進)。

  5. 學習的apk拆包修改重新打包
    用到了apktool工具,第一次使用,酷爽。以後再也不擔心修改打包問題了。

  6. 學習了apk簽名
    使用了auto-sign,可以對重新打包的apk進行簽名。

  7. 學習arm thumb指令集
    經過摸索最終才步入正道,彎路太多不忍直視。知道了arm thumb指令的區別,知道了怎麽對照指令個機器碼,同時加深了匯編知識的積累。

  8. 嘗試了底層破解繞過機制
    這個純屬為了好玩,直接把螞蟻金服的驗證關閉了,界面返回驗證通過。給大家個截圖娛樂娛樂

技術分享

圖片發自簡書App

革命尚未成功,尚需繼續努力。

學習過程中遇到什麽問題或者想獲取學習資源的話,歡迎加入技術愛好者交流群373107565,我們一起學技術!

本文出自 “山東大蔥哥—棱鏡門中人” 博客,轉載請與作者聯系!

螞蟻金服12萬破解懸賞-第一戰