【逆向工程】破解unity的安卓apk包

先了解一下普通apk包的逆向方法(无加密或加壳)

  1. 开发环境:

    1. 操作系统:windows

  2. 解apk包

    1. 下载工具:apktool【Install Guide | Apktool】
    2. 按照文档说的操作就行,先安装java运行时环境【我安装的是jre-8u441-windows-x64】,在系统环境变量里添加【JAVA_HOME】
    3. 下载批处理【https://raw.githubusercontent.com/iBotPeaches/Apktool/master/scripts/windows/apktool.bat】
    4. 在批处理所在路径下,打开Windows命令行(或打开命令行,cd到路径下)执行代码
      apktool d xxx.apk
    5. 导出的路径就在执行命令的路径下,里面的AndroidManifest.xml可以打开直接查看了,没有经过解析的是二进制形式,无法直接查看。

    6. 参考1:记录几种获取AndroidManifest.xml文件的方式 - 火线 Zone-安全攻防社区

    7. 参考2:安卓逆向_2 --- Androidkiller、apktool、jadx、jeb、gda-CSDN博客

  3. 解unity bundle包

    1. 使用工具:AssetStudioGUI 或 UnityDataTools
    2. AssetStudioGUI:下载【https://github.com/Perfare/AssetStudio/releases】or【AssetStudioGUI官方下载_AssetStudioGUI最新版v0.16.21免费下载_3DM软件】,使用简单,把ab包拖进去就可以了,如果出现“数组纬度超越了支持的范围”的提示,可以先忽略,一般导出里面的图集是没问题的。想解决的参考下面的链接【https://www.zhihu.com/question/585225358】

    3. UnityDataTools:unity官方自己的工具,地址【https://github.com/Unity-Technologies/UnityDataTools】。我只用来分析里面资源都打包了啥。

      set toolExe=【UnityDataTool.exe所在路径】
      set output=【导出路径】
      set input=【ab包所在路径】%toolExe% analyze %input% -o %output%\my_database.db -p *.ab

      生成的分析数据存放在my_database.db里,使用【SQLite Expert Professional】打开查看就行。

  4. 反编译代码

    1. 使用工具:.NET Reflector【】

    2. 没经过加密的代码,直接把dll拖进ReflectorInstaller就能看大部分c#代码了。

    3. 试用期重置

      // 存放在文件Clear.reg,双击执行就可以
      Windows Registry Editor Version 5.00[-HKEY_CURRENT_USER\Software\Red Gate]
      [-HKEY_CURRENT_USER\Software\Red Gate Software Ltd.]
      [-HKEY_CURRENT_USER\Software\Thingummy Software]

  5. 参考:

    1. 【官方】https://github.com/Perfare/AssetStudio
    2. https://www.zhihu.com/question/585225358
    3. AssetStudioGUI获取Unity游戏资源-CSDN博客
    4. 【官方】https://github.com/Unity-Technologies/UnityDataTools
    5. https://en.wikipedia.org/wiki/.NET_Reflector
    6. .NET Decompiler: Decompile Any .NET Code | .NET Reflector
    7. 使用Reflector反编译并提取源代码 - 惊风雨 - 博客园
    8. 反编译工具Reflector下载(集成两个常用.net插件,FileGenerator和FileDisassembler) - Ethan Shan - 博客园
    9. Reflector反编译工具安装程序详解-CSDN博客
    10. Reflector 试用过期后重置试用 - 走看看

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/69537.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Golang:精通sync/atomic 包的Atomic 操作

在本指南中,我们将探索sync/atomic包的细节,展示如何编写更安全、更高效的并发代码。无论你是经验丰富的Gopher还是刚刚起步,你都会发现有价值的见解来提升Go编程技能。让我们一起开启原子运算的力量吧! 理解Go中的原子操作 在快…

Mp4视频播放机无法播放视频-批量修改视频分辨率(帧宽、帧高)

背景 家人有一台夏新多功能 视频播放器(夏新多功能 视频播放器),用来播放广场舞。下载了一些广场舞视频, 只有部分视频可以播放,其他视频均无法播放,判断应该不是帧速率和数据速率的限制, 分析可能是播放器不支持帧高度大于720的视频。由于视频文件较多,需要借助视频编…

【Python】字典

个人主页:GUIQU. 归属专栏:Python 文章目录 1. 字典概述2. 字典的创建与初始化2.1 直接使用花括号创建2.2 使用 dict() 构造函数创建2.3 字典推导式创建 3. 字典的基本操作3.1 访问字典中的值3.2 修改和添加键值对3.3 删除键值对 4. 字典的遍历4.1 遍历键…

STM32系统架构介绍

STM32系统架构 1. CM3/4系统架构2. CM3/4系统架构-----存储器组织结构2.1 寄存器地址映射(特殊的存储器)2.2 寄存器地址计算2.3 寄存器的封装 3. CM3/4系统架构-----时钟系统 STM32 和 ARM 以及 ARM7是什么关系? ARM 是一个做芯片标准的公司&#xff0c…

鸿蒙NEXT开发-发布三方库

开发一个三方库 如需发布一个 har 包,必须包含 oh-package.json5、README.md,CHANGELOG.md 和 LICENSE 四个文件,若文件缺失,会导致上架至中心仓失败。 HAR(Harmony Archive)是静态共享包,可以…

CSS 实现下拉菜单效果实例解析

1. 引言 在 Web 开发过程中,下拉菜单是一种常见且十分实用的交互组件。很多前端教程都提供过简单的下拉菜单示例,本文将以一个简洁的实例为出发点,从 HTML 结构、CSS 样式以及整体交互逻辑三个层面进行详细解析,帮助大家理解纯 C…

半导体制造工艺讲解

目录 一、半导体制造工艺的概述 二、单晶硅片的制造 1.单晶硅的制造 2.晶棒的切割、研磨 3.晶棒的切片、倒角和打磨 4.晶圆的检测和清洗 三、晶圆制造 1.氧化与涂胶 2.光刻与显影 3.刻蚀与脱胶 4.掺杂与退火 5.薄膜沉积、金属化和晶圆减薄 6.MOSFET在晶圆表面的形…

微信小程序如何使用decimal计算金额

第三方库地址:GitHub - MikeMcl/decimal.js: An arbitrary-precision Decimal type for JavaScript 之前都是api接口走后端计算,偶尔发现这个库也不错,计算简单,目前发现比较准确 上代码 导入js import Decimal from ../../uti…

安卓开发,底部导航栏

1、创建导航栏图标 使用系统自带的矢量图库文件,鼠标右键点击res->New->Vector Asset 修改 Name , Clip art 和 Color 再创建一个 同样的方法再创建四个按钮 2、添加百分比布局依赖 app\build.gradle.kts 中添加百分比布局依赖,并点击Sync Now …

前后端服务配置

1、安装虚拟机(VirtualBox或者vmware),在虚拟机上配置centos(选择你需要的Linux版本),配置如nginx服务器等 1.1 VMware 下载路径Sign In注册下载 1.2 VirtualBox 下载路径https://www.virtualbox.org/wiki/Downloads 2、配置服…

亲身经历!!解决fatal: unable to access ‘https://~.git/‘: Failed to connect to github.com ····

最近学着用GitBash,发现上来gitclone 就报错。由于我是纯小白,所以试了比较多次,终于成功了。 首先我试了一下关闭梯子,发现还是不行。上网搜,说是代理问题,可我也不知道啥叫代理,反正大概意思就是电脑连通…

TCP传输层协议

TCP 全称为 "传输控制协议(Transmission Control Protocol"). 人如其名, 要对数据的传 输进行一个详细的控制。 对于TCP的学习主要就是要知道TCP协议报头之中各个字段的作用 除了数据之外总共报头加起来是20个字节 16位源端口号与目的端口号 这是最容易理解的两…

正则引入store中的modules文件

正则引入store中的modules文件 // index.js import { createStore } from vuex;const modulesFiles require.context(./modules, true, /\.ts|js$/); const modules modulesFiles.keys().reduce((modules1, modulePath) > {const moduleName modulePath.replace(/^\.\/(.…

127,【3】 buuctf [NPUCTF2020]ReadlezPHP

进入靶场 吓我一跳 查看源码 点击 审计 <?php// 定义一个名为 HelloPhp 的类&#xff0c;该类可能用于执行与日期格式化相关的操作 class HelloPhp {// 定义一个公共属性 $a&#xff0c;用于存储日期格式化的模板public $a;// 定义一个公共属性 $b&#xff0c;用于存储…

如何在浏览器中搭建开源Web操作系统Puter的本地与远程环境

文章目录 前言1.关于Puter2.本地部署Puter3.Puter简单使用4. 安装内网穿透5.配置puter公网地址6. 配置固定公网地址 前言 嘿&#xff0c;小伙伴们&#xff01;是不是每次开机都要像打地鼠一样不停地点击各种网盘和应用程序的登录按钮&#xff0c;感觉超级麻烦&#xff1f;更让…

产品详情页中 品牌官网详情 对应后端的字段是 detail

文章目录 1、在这个Vue代码中&#xff0c;品牌官网详情 对应后端的字段是 detail2、品牌官网详情 功能相关的代码片段3、export const productSave (data: any) >4、ProductController5、ProductDto 类6、ProductApiService 1、在这个Vue代码中&#xff0c;品牌官网详情 对…

51单片机(国信长天)矩阵键盘的基本操作

在CT107D单片机综合训练平台上&#xff0c;首先将J5处的跳帽接到1~2引脚&#xff0c;使按键S4~S19按键组成4X4的矩阵键盘。在扫描按键的过程中&#xff0c;发现有按键触发信号后(不做去抖动)&#xff0c;待按键松开后&#xff0c;在数码管的第一位显示相应的数字:从左至右&…

VSCode + Continue 实现AI编程助理

安装VS Code 直接官网下载安装&#xff0c;反正是免费的。 安装VS插件Continue 直接在插件市场中搜索&#xff0c; Continue&#xff0c;第一个就是了。 配置Chat Model 点击Add Chat model后进行选择&#xff1a; 选择Ollama后&#xff0c;需要点击下面的config file : 由于…

机器学习之数学基础:线性代数、微积分、概率论 | PyTorch 深度学习实战

前一篇文章&#xff0c;使用线性回归模型逼近目标模型 | PyTorch 深度学习实战 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started 本篇文章内容来自于 强化学习必修课&#xff1a;引领人工智能新时代【梗直哥瞿炜】 线性代数、微积分、概率论 …

BS架构(笔记整理)

楔子.基本概念 1.在网络架构中&#xff1a; 服务器通常是集中式计算资源&#xff0c;负责处理和存储数据&#xff1b;客户机是请求这些服务的终端设备&#xff0c;可能是个人电脑或移动设备&#xff1b;浏览器则是客户机上用来与服务器交互的工具&#xff0c;负责展示网页内容…