當前位置:編程學習大全網 - 源碼下載 - 軟件加殼後破解難嗎

軟件加殼後破解難嗎

破解加了dex殼的app,關鍵是要獲得解密後的源dex,現在Android加殼技術還很不成熟,大多都是通過DexClassLoader或者隱藏的函數openDexFile來將源dex加載進來,然後動態替換Application來啟動源程序,跟Windows上傳統的PE文件加殼有壹定區別。  要破解傳統的殼,需要跟蹤控制流找到OEP,然後把源程序從內存中dump下來,重建輸入表,最困難的就是要跟著外殼的控制流走,安全工程師為了加大破解難度,使用了很多技術來讓破解者走得更艱難。安全工程師與破解者對抗的關鍵點就在尋找OEP的困難性上。  在Android平臺上,正因為新興的dex加殼技術不成熟,導致有些另類的脫殼方法可以繞過分析算法,直接將源程序dump下來。舉個例子,安卓在4.0版本以後提供openDexFile這個函數來從內存中加載dex,所需要提供的參數是源dex在內存中的地址,所以只要對這個函數下斷,然後從寄存器裏找到內存地址,就能將解密後的源dex從內存中dump下來,直接對其反編譯就能獲得源代碼了。更進壹步,關於openDexFile這個函數,其實它與libdvm.so這個庫有密不可分的關系,這個庫裏提供大量操作dex文件的函數,如果對這個庫裏的相關函數下斷,然後從內存中暴力dump壹大塊內存區域,經常能直接將內存中的源dex給抓下來。

  • 上一篇:c源代碼合並
  • 下一篇:江湖2020源代碼
  • copyright 2024編程學習大全網