Android逆向之so的半自動化逆向

  由於工做須要,轉型幹android逆向,有幾個月了。不過對於so的逆向,任然停留在,難難難的階段,雖然上次本身仍是逆向了一個15k左右的小so文件,可是,那個基本是靠,一步一步跟代碼,查看堆棧信息來本身獲得的結論。java

  下面來講說,什麼是半自動化吧,我是這樣認爲的。android

  不少時候,因爲so只是一個加密算法,或者什麼操做,而且至關複雜,因此咱們並不須要對他進行徹底逆向,由於那樣很麻煩。算法

  版本1. 本身寫一個app,使用某個須要逆向算法的so文件,而後在app中調用那個算法。使用http協議提供接口,供exe程序調用。

  這樣寫,無非就是本身寫了一個app,而後加入了,某款應用的so文件,進行逆向操做,經過http傳入參數,調用so算法,獲得返回值,能夠在不逆向so的狀況下進行算法調用。app

不過這樣寫,也是有一些麻煩的,針對so多個相互調用和,對app耦合比較高,可能有時候這樣,就會報錯,報一些找不到緣由的錯誤。加密

  版本2.使用xposed+app的方法,來調用其餘app的so的算法,一樣提供http服務接口。來給其餘第三方程序調用。

  這樣,無非就是找到算法的加密地點,而後進行調用。通常大公司的app,這種方式都是能夠拿下,至於小公司的就很差說了,由於不少小公司,so和java代碼都是一批人寫的,接口

他們可能會作一些比較噁心的處理。因此比較麻煩。源碼

  大神版本:我想大神應該都是把別人so算法逆向出來了,因此不須要依賴上面的這種方式,

  可是這種方式也有他的優點所在,就是高效,能夠在不具體操做算法的狀況下,進行操做。自動化

  YY版本:(yiyin版本)這種版本是我最喜歡的了,就是,打入敵人內部。。。嘎嘎。。直接源碼。。

  總結:sed

    已經三個月沒有寫過東西,感受手生疏得不可收拾。。。哎,先寫幾篇,充充數,後面再分享點比較精彩的文章。。。歡迎品鑑。程序

  後話:

    腦袋有點昏,致使排版有點差,見諒,見諒。

相關文章
相關標籤/搜索