看看我這個萌新的Android逆向入門學習的路程吧!
明確第一步學習目標
Android程式主要是用java語言寫的,其實一直都是可以用c++語言編寫只不過在以前實現起來比較麻煩,但是Google後面釋出了NDK開發套件更加方便的讓我們可以用c++語言進行開發Android程式,這個我也是後面才知道的,當然也是可以進行原生程式開發,也就是用匯編語言進行開發,所以你要學習Android逆向總要能夠看懂apk的程式碼才能對它進行破解吧!由於大多數的Android程式是用java語言編寫的,所以還是先學java吧!原生程式和c++編寫的後面再說吧!學習java語言可以在各大學習網站上學習,比如我知道的一些網站:
當然,學習能力較強的一些讓你可以選擇買一本java程式設計的書,邊看邊操作效果和效率最好。
學習完java之後就可以開始學習Android了,這裡給大家推薦兩本我但是學習看過的書
第一本書講的比較詳細,第二本講的比較大概,但是以例項為主,大家可以根據自己的意願選擇。
明確第二步學習目標
學完Android開發後就要開始學習Andorid逆向的入門了
首先先是瞭解一下Android逆向的一些工具吧!比如常用的一些:
AndroidKiller、ApkIDE、apktool、dex2jar、jd-gui、Android逆向助手等
才開始學習肯定會疑問這些工具的作用,大家可以自己去百度,這裡我只是簡單提一下,學習IT的就要學會多利用百度、Google等。
前面我沒有提到,學Android逆向,拿到一個apk就得對它進行反彙編最後再反編譯才會的到它的java原始碼,通過原始碼分析,但是修改它的程式碼只能修改彙編程式碼才行,必能直接修改java程式碼實現,這裡我就會提到smali語言,這個是反彙編的一種語言,這裡大家就要去學習這個語言了,以後都會接觸到這個語言。
學習Android逆向有幾個論壇:
這兩個論壇上有很多文章包括一些資源,上面就有一些基礎入門的文章包括smali語法的學習,到這裡你也算是Android逆向入門了。
如果大家覺得我說的比較詳細能夠幫助你就繼續關注吧!後面我還會寫很多文章,讓我們一起共同學習吧!有疑問也可以加我qq號363327715,要打備註哦——feili