java反编译工具_JDA Java反编译工具的下载和使用手册
JDA(javadecompile analysis)是一款以dex為核心的java反編譯工具,同時支持apk、dex、jar文件的反編譯,支持動態重命名。該軟件主要是用來反編譯分析代碼而不是反編譯出來完全正確的java代碼,運行需安裝jdk1.8及以上版本版本(jdk1.7應該也行)。
一、背景
作者是搞android開發和逆向安全的,逆向安全是主業,用jeb用的很不爽,特別是分析某稍微大一點的軟件后卡和老報OOM,后面又沒有更好的破解版jeb,剛好去年年底辭掉工作后有空,于是開始編了個反編譯軟件,加上疫情期間沒出去找工作,所以就在這段時間內寫完了這個反編譯工具jda。 搞這個東西花了作者挺多時間的,寧愿分析X梆的vmp也不愿搞這個軟件,搞vmp花不了很多時間,而這個軟件的算法讓我很頭疼。一句話就是用別人的東西收費還用得不爽加上自己有時間就編了這個軟件。
二、主要功能
1、 支持apk、dex、jar文件反編譯。
2、支持apk包含多個dex。
3、支持直接重命名類、方法、屬性、本地變量。
4、支持基本的反混淆。
三、使用手冊
1、 菜單
(1)、文件—>打開
可以打格式是.apk、.dex和.jar的文件。
《1》、.apk
則默認加載壓縮包(apk實際上就是zip壓縮包)第一層目錄下面的所有以.dex文件結尾的文件,也就是說支持多個dex反編譯。
《2》、.dex
這沒什么好說的,直接加載。
《3》、.jar
jar也是zip壓縮包,如果里面第一層目錄有.dex,走上面的《1》步驟。如果是.class文件,則把這個jar轉成dex文件再加載,jar轉dex存在失敗的可能,失敗控制臺會輸出找不到dex的提示。
打開上面的三種文件都會在當前目錄下生成一個文件夾來緩存數據。
(2)、文件—>保存
把重命名的類、屬性、方法和本地變量保存在本地,下次打開相同的文件會提示加載。
(3)選項—>注釋解析類型
開啟從注釋信息解析類、方法返回類型、方法參數類型、屬性類型的泛型數據,不開啟不會解析泛型,例如,
開啟:pivate static List list;
不開啟:pivatestatic List list;
開啟注釋解析類型存在一定的錯誤,但不嚴重 。
(4)選項—>隱藏橋方法
橋方法是編譯器自己添加上去,去掉不影響反編譯。
(5)選項—>反編譯超時(毫秒)
為了防止某些方法代碼太復雜沒法反編譯出來卡死不動而添加。超過設置時間反編譯該個方法失敗。
(6)選項—>重命名類、重命名方法、重命名屬性
開啟反編譯時把類、方法、屬性名稱是單個字符或是關鍵字就會按一定規則進行重命名,加強可讀性。如果是外部類不進行重命名。
反編譯從命名跟用戶自己n鍵重命名沒有沖突,反編譯重命名服從用戶手動重命名,如果是反編譯重命名了但用戶也手動重命名,不論先后,以用戶手動重命名的名稱為準,只顯示用戶手動重命名的名稱。
(7)、編輯—>上一步、下一步
《1》、上一步:跳轉到前一步。
《2》、下一步:跳轉到后一步。
(8)、編輯—>字體
可以調整字體大小。
上面的所有設置都必須重啟程序。否則可能出現錯誤。
2、 快捷鍵
《1》、CTRL + O:打開文件。
《2》、CTRL + S:保存從命名數據。
《3》、ALT +左箭頭:上一步。
《4》、ALT +右箭頭:下一步。
《5》、CTRL + F:彈出搜索對話框,只能單個單詞搜索。
《6》、N:從命名單擊過的類、方法、屬性、本地變量。
《7》、TAB:切換反編譯選項卡。
《8》、ESC:關閉重命名或搜索對話框。
由于作者技術比較菜,軟件界面做得丑,且反編譯時某些方法還有一定的問題,以后再慢慢更新修復。用手機真不怎么會編輯文章,文字又多又啰嗦,估計閱讀者看見都煩了。
四、軟件下載地址
https://www.luyonghu.com/JDAServer/jda.zip
下面是軟件截圖:
總結
以上是生活随笔為你收集整理的java反编译工具_JDA Java反编译工具的下载和使用手册的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python动态规划详解_python-
- 下一篇: python缩进注意事项_python注