棋牌源码吧

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 299|回复: 0

记录一个安卓app反编译的过程

[复制链接]

2971

主题

0

回帖

8930

积分

超级版主

Rank: 8Rank: 8

积分
8930
发表于 2023-8-9 03:19:23 | 显示全部楼层 |阅读模式
工作需要,拔了一个app内容,主要是涉及核心算法,没办法只能去反编译。部分内容也是来自网络,本文仅作记录整理。
反编译需要准备的工具:1.apktool:aapt.exe,apktool.bat,apktool.jar;三个在同一目录结合使工具人的自我修养用文件加密,用来反编译apk,apk重新打包;
2.dex2jar:该工具作用是将classes.dex文件,反编译出源码(如果apk未加固),反编反编译工具译出文件,使用jd-gui过程工具进行查看;
3.Auto-Sign:自动签名工具,将重新打包的a过程性评价pk进行签名内容,如果不签名,无法安装使用。
4.文件加密jd-gui: 这个东西可以直接查看jar文件内容,不需要进一步解包,如果对方app没有很深的套路,用这个就不用再打包去查看了。
直接说解包,修改和再打包的过程:
1、查看内容解包dex2jar.bat   classes.dex该命令来自于dex2jar工具,后面的dex文件是直反编译软件接将apk文件改名zip工具play跳蚤解压后得到的。
运行结束后,在该工具目录下反编译exe会生成一个cla内容摘要sses_dex2jar.jar的文件
打开工具jd-gui文件夹里的反编译jd-gui.exe,用该工具打开生成的classe内容神器s_dex2ja工具的拼音r.jar文工具play跳蚤件,便可以看到源码,如果不是加密处理过的,这部分内容可读性还是比较强的。

2、修改源码需要使用apktools进行反编译解包。apktool.bat d -f test.apk -o test反编译之后会得到test 文件夹,打开test文件夹,里边就是反编译出来的各种文件。
第一步中,jd-gui看到的文件,对应着smali文件夹,再找到与之对应的地址smali文件
比如:smali\com\danfoss\koolapp\a.smali对应着下图中的内容


3、修改源码直接修改smali是比较难的,smali相当于内容神器编译后的语言,虽然可读性比二进制要好,但依然很麻烦。
此时需要安装android-stu内容的拼音dio,  下载地址工具: htt工具简笔画p://www.android-studio.org/
安装反编译exe后安装插件:java2smali,下载地址:https://plugins.jetbra反编译安卓appins.com/plugin/7385-java2smali
插件导入IDE后重启IDE,创建一个空的Project。复制jd-gui中查看到的ja反编译器va内容,选择IDE顶部菜单:bu过程装备与控制工程专业ild--反编译app-Compile to内容分析法 Smali即可实现java到smali的编译。

此时根据自身需要修改java内容,调试内容的英文输出即可。
4、再打内容的英文包再次打包需要使用aokt工具人男主不想走剧情ool命令
apktool.bat b test

此时得到的test.apk文反编译器件需要签名
复制test.apk到autosign工具的文件夹下
java -jar signapk.jar testkey.x509.pem testkey.pk8 test.apk test_signed.apk之后会得到一个test_sign文件格式ed.apk,该文件可以直接安装。

最后说一工具人下安卓虚拟机的问题使用虚拟机可以更方便快速的调过程量试,不需要反复看手机。
使用BlueStacks蓝叠,这个软件相对响应速度比较快。可以在设置--引擎设置中获取r反编译什么意思oot权限。使用re文件管理器可以访问system文件夹的资源,其共享文件夹路径为:X:\Bl反编译uestacksCN\Engine\ProgramData\Engine\UserDat文件夹怎么压缩a\SharedFolder

教程完毕。
游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|棋牌源码吧

GMT+8, 2024-11-3 22:16 , Processed in 0.067484 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表