日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【Android 逆向】逆向修改游戏应用 ( 分析应用结构 | 定位动态库位置 | 定位动态库中的修改点 | 修改动态库 | 重打包 )

發布時間:2025/6/17 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Android 逆向】逆向修改游戏应用 ( 分析应用结构 | 定位动态库位置 | 定位动态库中的修改点 | 修改动态库 | 重打包 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、應用結構分析
  • 二、定位動態庫位置
  • 三、定位動態庫中的修改點
  • 四、修改動態庫
  • 五、重打包





一、應用結構分析



分析上一篇博客 【Android 逆向】逆向修改游戲應用 ( APK 解析工具 | 解包 -> 分析 -> 重打包 -> 簽名 流程 ) 解包后的文件 ;

在 lib 目錄下 , 有 armeabi-v7a 和 x86 兩個 CPU 架構的動態庫 ;

一般情況下 , 逆向都在模擬器中進行 , 模擬器中可以拿到 root 權限 , 并且權限管理沒有真機那么嚴格 , 這里推薦刪除 armeabi-v7a 架構的動態庫 ;

此外 , 該應用檢測出了 Unity3D 引擎 , 那么該應用的核心邏輯都在 Unity3D 中 , 如果要修改應用 , 需要修改 U3D 對應的動態庫文件 ;





二、定位動態庫位置



Unity3D 引擎對應的資源都在 apk\unpack\Game\assets\bin\Data 目錄下 ,

動態庫資源都在 apk\unpack\Game\assets\bin\Data\Managed 目錄中 , 如果要修改程序的邏輯 , 都在 C# 代碼編譯的 dll 動態庫中 ; 本應用的相關邏輯是在 Assembly-CSharp.dll 中 ;





三、定位動態庫中的修改點



使用 32 位的 IDA 打開上述 Assembly-CSharp.dll 文件 , 將下面紅色矩形框中的 sub 減法運算 , 修改為 add 加法運算 ;

選中這個 sub 指令 ,

點擊 Hex View-1 面板 , 發現 sub 對應的二進制數據是 59 ;

將其修改為 add , 就需要知道 add 對應的二進制數據是多少 , IDA View-A 中選中 add , 然后查看 Hex View-1 中的二進制數據 :


add 操作對應二進制數據 58 ;


這里修改時 , 將 0x354A6 字節的 59 修改為 58 ;





四、修改動態庫



使用二進制查看工具 , Ctrl + G 快捷鍵 , 跳轉到 0x354A6 位置 , 發現值為 59 ;

直接選中后 , 編輯該值即可 ;





五、重打包



將修改后的動態庫放回原來的位置 ;

刪除 sing 和 repack 目錄 ;

繼續執行程序 , 會在檢查當前 " 解包 -> 分析 -> 重打包 -> 簽名 " 流程 , 執行了哪些部分 , 發現 解包 , 分析 完成 , 重打包 和 簽名沒有完成 , 執行程序后 , 會自動進行后續 重打包 和 簽名操作 ;

執行完畢后的 apk/sign/Game.apk 就是重打包后簽名的文件 , 可以執行該 APK 文件 , 驗證修改是否生效 ;

總結

以上是生活随笔為你收集整理的【Android 逆向】逆向修改游戏应用 ( 分析应用结构 | 定位动态库位置 | 定位动态库中的修改点 | 修改动态库 | 重打包 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。