Featured image of post Android逆向基础

Android逆向基础

Android逆向基础

参考资料:https://www.52pojie.cn/thread-1695796-1-1.html

1.APK文件结构

apk 全称 Android Package,它相当于一个压缩文件,只要在电脑上将apk后缀改为zip即可解压。

2.双开APK

简单来说,就是手机同时运行两个或多个相同的应用,例如同时运行两个微信

2.1.修改包名实现双开APP

长按APP,提取安装包,在MT管理器打开,选择功能—选择APK共存

直接安装可能会出现安装失败,原因可能是签名通过失败,解决方法就是删除原有APP

3.汉化APP

1
2
逆向流程
提取安装包---查壳---(脱壳)---反编译APP---修改代码---重打包app---安装测试

使用开发者助手定位文本信息

打开开发者助手,开启时需要你给权限,按照说明去做就行,打开你要汉化的APP,使用开发者助手的界面资源分析功能定位到你要汉化的位置—复制对应的文本信息

使用MT管理器定位APP包,进入APP包—点就右上方三个点—选择搜索—全局搜索

定位到字符串位置选择反编译打开

编辑后保存可能会遇到报错

安装时直接安装可能安装不成功,因为你修改字符串后会重新给你签名,导致安装不成功,解决方法就是卸载原有APP,再次点击安装

4.认识AndroidMainifest

AndroidManifest.xml文件是整个应用程序的信息描述文件,定义了应用程序中包含的Activity,Service,Content provider和BroadcastReceiver组件信息。每个应用程序在根目录下必须包含一个AndroidManifest.xml文件,且文件名不能修改。它描述了package中暴露的组件,他们各自的实现类,各种能被处理的数据和启动位置。

修改应用图标和名字

使用NP管理器的通用编辑功能进行编辑文字

此时安装即可

5.APP反编译

反编译前先看是否存在加固,没用加固可进行反编译

5.1.使用JADX直接进行反编译

可以看到,APP在反编译之后资源文件中出现了很多dex文件。在 Android 应用中,.dex文件是 Dalvik Executable 的缩写,它是 Android 系统用来运行应用程序的字节码文件格式。简单来说,.dex文件就是 Android 应用的“可执行文件”,包含了应用的所有 Java/Kotlin 代码经过编译、优化后生成的字节码,供 Android 运行时(Dalvik 或 ART)执行。

img

如何查看这些dex文件呢?可以使用dex2jar这个工具,将dex文件转换为jar包。

1
d2j-dex2jar.bat -f C:\Users\24767\Desktop\Android\test\classes.dex

image-20250912214211790

image-20250912214352471

5.2.使用APKTool进行反编译

1
2
3
java -jar apktool_2.9.0.jar d C:\Users\24767\Desktop\Android\fayuan.apk -only-main-classes

-only-main-classes参数:该参数表示仅反编译主包名下的类(如com.example.fayuan),而非所有依赖的类。这不会影响反编译的成功性,仅减少输出文件的数量

img

1
2
java -jar apktool_2.9.0.jar b fayuan -o test.apk
//重新打包APP
By Lsec
最后更新于 Sep 12, 2025 22:11 +0800
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计
¹鵵ҳ