android-crack-series
安卓逆向系列
这系列文章记录一下简单的安卓逆向方面的思路和知识,以备查阅使用。
安卓基本框架
apk相当于一个zip文件,里面打包了这个安卓程序所有的资源和代码,逆向也是对这个zip文件进行处理。
assets目录:存放静态资源,如视频,图片,音乐等等,一般可以用来替换图像。
lib目录:动态链接库
META-INF目录:保存应用签名信息,逆向安卓程序常常需要去除签名验证,否则程序会无法运行。
res目录:也是存放资源的文件,apk的图标就是在这里面调整。
AndroidManifest.xml文件:储存了安卓包的基本信息,比如应用名字,版本,包名,权限等等,一般处理共存或者去除更新会需要处理这个文件,也可以删除一些你不想要的权限,防止权限过度索取。
classes.dex文件:安卓主要的逻辑代码文件,大部分逆向破解都是在这里面修改判断逻辑,有一个或者很多文件。
resources.arsc文件:映射表,映射资源和id,当dex搜索不到关键词时可以来这里进行搜索,获取到资源id后然后再在dex里搜索。
汉化
基本上字符串都在arsc里,直接选中arsc文件并且进入翻译模式就可以了,可以一个个手动翻译,也可以用插件翻译。
也可以在安装包里全局搜索(开启高级搜索),就可以直接搜索到相应的字符串。如果碰到了不知道语言的一段文字,可以使用开发者助手,授权root权限后,在对应应用中选择界面资源分析,就可以选中并且复制该段文字,再进行全局搜索。
替换图标,就用np管理器的通用编辑即可,可以一键修改图标,版本或者名字
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Lucky!
评论
