計算機安全

逆向工程初學者。 從逆向工程所有Android防護應用程序

有時候,一個人想看到的,而什麼樣的具體方案填寫的? 然後,他必須使用逆向工程。 這是什麼? 它是如何工作的? 這是如何處理? 所有這一切,你會從這篇文章中學習。

什麼是反向工程計劃?

所謂過程中的應用分析,以了解它是如何工作的,所以,在未來通過進行必要的改變,以重建這個過程。 通常用於此目的的調試器和彙編。 根據所使用的將是不同的軟件的質量和結果是要在其上花費在一個正常的形式帶來的時間量。 說明逆向工程對於初學者最好的例子。 作為其執行為Android編寫的應用程序。 現在,讓我們先來看看什麼和如何。

與Android的應用程序工作

首先,我們需要澄清的幾個問題。 該應用程序使用的字節碼和logcat的。 這個當地同行前面提到的調試器和彙編。 還需要了解應用程序本身的結構。 因此,每個程序與擴展APK的文件。 他收拾zip'om。 我們感興趣的是它的內容 - 應用程序資源,classes.dex和AndroidManifest.xml中。 如果您在Android上做節目,前者和後者的問題,不應該。 但是classes.dex - 這是虛擬機的具體編譯該程序的字節碼。 從他的Java源代碼在互聯網上提供的代碼提取沒有得到資金。 但是,它可能獲得的Dalvik操作碼 - 一種特殊的組用於虛擬機的命令。 對於一個比喻,我們可以說,本次大會當地洪水。 Classes.dex也可以轉換成與所述罐的文件。 即使在這種情況下,你可以反編譯後的java代碼,這將是或多或少的可讀性。 這是我們要走的路。

反編譯

這一過程將如何使用APK管理器程序來進行。 在開始之前,請確保有對devaysa和工作的USB調試模式正確的驅動程序。 最初,我們將需要移動將被解析成指令apk_manager \佈局APK-這裡換改裝的文件。 在此之後,你應該運行Script.bat。 如果沒有問題的話,啟動控制台,這將是綠色字體。 選擇點九數 - “反編譯”。 一旦這個過程開始時,有必要不要關閉控制台。 然後,使用歸檔,並從中提取classes.dex,持倉APK文件要處理dex2jar程序。 對於我們所要的結果,有必要在擴展名.BAT移動對象。 你會看到該文件,這將在.jar結尾。 到目前為止,窗口不會關閉。

我們分析數據

要獲取有關應用程序的信息,您必須打開它表現出來。 根據它,我們確定作為主要活動。 她是誰,現在呈現給我們的最重要的。 也希望看節目的底部。 如果底部是關於許可證管理的信息,它是顯著難以進行逆向工程。 如果切換到JD-GUI,並展開樹,我們可以看到幾個命名空間。 假設他們三人。 在第一個與廣告相關的文件。 第二個將是授權管理類。 第三,我們有必要的數據。 這是當我們去。 有需要找到並刪除鍵,然後是檢查是否許可工作版本行的其餘部分。 所有這些需要清潔。 那麼在我們的.apk經理尋找在那裡的地方指定字節碼的地方。 現在讓我們做一個小題外話並註釋掉團隊,這可能會導致問題。 在那之後,我們只需要編譯程序。

構建應用程序

這將幫助我們都是一樣的.apk經理。 在控制台中,我們還沒有鎖定,選擇該項目№14。 下招。 如果應用程序是相當複雜的,當你開始,它可以部分或完全失去其效率。 別擔心,這意味著我們只有一半了和別的地方去。 我們不斷地進行逆向工程,所有的Android應用。 再說了,什麼在特定情況下做的,一般來講,唉,是不可能的。 因此,尋找問題的地方都會有自己的。 例如,如果一個應用程序窗口被阻止 彈出窗口, 你應該看到的代碼,刪除是負責這一對話的一部分。 為了幫助這一點可以JD-GUI。 正如你所看到的,反向工程是不是一件容易的業務,它需要知識的相當大的商店。 即使一切都運行沒有任何問題,這將需要測試的應用程序的性能。 也就是說,逆向工程是比較耗時的活動。 我們將繼續工作,直到所有的發現問題。

安全

如果我們需要什麼保護逆向工程所有Android應用程序? 在這種情況下,有兩種選擇:使用特定程序或代碼結構的建立,這將干擾進行解析寫的。 後一種選擇是只適合經驗豐富的專業人員,因此,我們將只考慮第一保護方法。 作為一家專業的軟件搭配使用ProGuard。 此應用程序,它是用來減少,迷惑和代碼優化。 如果程序“追逐”,通過它,我們得到與擴展比他更小的.apk文件*。 在這樣的情況下,將更加難以拆卸。 而這個方案的優點是,它甚至已經在構建Android應用程序與R9更新推出。 因此,利用它是具有創造和發展的標準工具,任何開發人員。

結論

我們不能說,逆向工程可以表示為均勻的好或壞的東西。 當然,從開發商,誰創建的應用程序的地步,這不是一件喜事。 但在另一方面,在許多情況下,有經驗的程序員編寫必要的文件,可以是時間比使用這樣的工具更便宜。 雖然開發新手如果沒有如何實現的東西,甚至是示範性的想法,不太清晰的輪廓可以與這個目標的實現有助於逆向工程可以使一個良好的服務。

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 zhtw.birmiss.com. Theme powered by WordPress.