逆向這玩意不是很玄學,不像web滲透那樣很玄學(強烈吐槽一波以前我還在做web滲透的時候,挖不出大洞也就算了,全都是一堆反射型的xss,xss到底跟我有多過不去啊),只要你基礎夠,在捨得掉頭髮,就能夠有產出,下面簡單羅列一下我個人認為的安卓逆向所需要的前置技能:
正向開發越熟練,在逆向的過程越容易找到關鍵點,同時在正向開發的過程中總要了解一下安卓系統的機制吧,這都是後面的無論是脫殼還是寫自己的加固**必要的知識;至於後面的會寫簡單的指令碼,既是為了逆向也是為了能夠正向開發,例如脫殼現在的主流方案要麼ida動態除錯到脫殼點dump下來,要麼使用frida編寫指令碼hook脫殼,再要麼編寫xposed外掛程式脫殼(ps:指令碼小子除外),這些都需要我們自己寫指令碼的;至於正向開發那就更沒得說了,無論是你想實現自己的加固方案還是要做涉及到底層的開發都需要寫到so層裡面去,而這前提是你的會c或者c++。至於怎麼學,我個人建議去網上找文章教程跟著敲**就可以了,例如菜鳥教程或w3c!!!
說是基礎,其實真的是基礎,別看看起來真的很難的樣子,再安卓逆向的世界裡這都是要非常熟練的基礎能力,我個人總結如下:
然後說起高階技能吧,就是再基礎上開始逆向精彩的地方--加固和脫殼之間的對抗,個人總結要學習、研究的知識點有如下:
當然,除了上面這些跟安卓逆向一看就有直接聯絡的知識以外,還有很多看似和逆向沒那麼多的技能,這些看似不重要,但我覺得這些一點都不比加固脫殼的技術的重要性差,例如:
部落格書寫,寫部落格不是裝逼,不是全寫高階的,寫部落格的本質是總結幫助總結梳理自己的知識體系,寫部落格只能說仁者見仁智者見智吧!
上面寫的只是一小部分,這裡挑選的是我認為最重要的部分,總之,我覺得要學好安卓逆向,還需要耐得住寂寞,研究這東西真的需要堅持,覆蓋的東西太多了!!!
其實還有很多想要寫的,但是刪了又加,刪了又刪,就成這樣子了,可能寫的不是很好,一邊寫一邊回憶自己這一年走過來的艱辛,心緒不是很好,大致上寫出來了我自己的學習路線。
謹以此文總結自己入門安卓逆向的學習,也送給所有對安卓逆向感興趣的朋友!!!
安卓逆向學習筆記(10) 安卓逆向學習資料
因為喜歡android安全,而android逆向是android安全的乙個分支,所以小弟利用業餘時間自學了一點android逆向。在學習過程中總結了一點學習資料,特此分享給大家。1 android安全大牛的部落格 鬼哥的部落格 聽鬼哥說故事 jack jia的部落格 android手機病毒分析及研究...
從0到1學習記錄
競爭會讓你把注意力都放在競爭對手身上,忽視了自己的發展。競爭會造成非常低水平的重複和跟風。不存在完美的市場均衡,在經濟理論之外的現實世界裡,每個企業的成功,恰恰是因為它打破了均衡,它做到了其他企業不能做的事情,也就是從0到1的事情,而不是它跟其他企業做一樣的事兒。谷歌把自己定義成什麼,取決於什麼能給...
從0開始編譯安卓 9 0
手機是 google pixel xl 編譯環境的準備 google 9月更新了位址 ubuntu 16.0.4 x64 需要安裝的軟體包 看上面 的 aosp 原始碼採用清華的映象。lunch 選擇乙個編譯目標 這裡輸入19 安卓解鎖,編譯,刷機介紹很全面 pixel xl 是 marlin 按住...