安卓逆向怎么弄

【安卓逆向怎么弄】简单 , 去学习一下安卓逆向技术就行 。找到那一串代码 , 改掉换成你想要的就行

秒懂知识为您整理更多相关内容。
安卓逆向一般指的是做安卓逆向开发 , 职位也类似于正向开发的JAVA程序员;但是需要具备很多的知识储备来 , JAVA正向开发 , 底层的C , 汇编语言 , 了解各种协议算法加解密 , 会脱壳加固 , 比较多哈 。但是这类资自深大牛的工资都是年薪计算的;正向开发的人员相对饱和 , 逆向工程师的需求也很大 。通俗的给你总结就是 , 可以做做软件的破解与防破解 , 游戏的破解与防破解 。

安卓是一种基于Linux的自由及开放源代码的操作系统 , 主要使用于移动设备 , 如智能手机和平板电脑 , 由Google公司和开放手机联盟领导及开发 。安卓逆向就是将安装包apk文件还原成打包前的样子 。逆向分析是一门技术 , 也是一门艺术 。
分类:
1.应用层APK逆向 。
2.安卓设备框架逆向 。
3.内核驱动逆向 。
4.基于安卓的硬件产品逆向 。
逆向工程 , 主要有几种用途 , 第1种是直接修改apk的 , 例如改代码数值、改图片等的 , 这时主要用到apktool来解包、打包 。第2种是逆向分析 , 然后源码开发出类似功能的 , 这时用apktool来得到资源文件 , 再用dex2jar来得到类似的源码 , 然后再根据逻辑来完善这个工程 。
工具/原料
more
apktool dex2jar jd-gui Android签名文件
方法/步骤一:使用apktool来解包打包
1/5 分步阅读
使用apktool来编译出资源文件 。在命令行输入:
apktool -d test.apk
2/5
执行上一步后 , 分析资源文件 。
apktool.yml: apk属性 , 这个基本不用修改的.AndroidManifest.xml: 清单文件, 看这里可以知道总体的代码结构.largeal: 原始数据, 应用的二进制清单和签名.res: 资源文件 , 图片,xml文件都在这里 。smali: dex解析的代码.smali是dex虚拟机的解析格式,在 dex2jar中,也包含smali格式的转换.
3/5
修改文件 。一般情况 , 修改文件主要是res和smali 。修改图片 , 主要.9的图片是不太支持重新打包的 。修改smali文件 , 可以结合用dex2jar把代码反编译成可读性强的代码 , 读懂smali文件每一代实际代表的java代表的意思 。用有的编辑工具编辑smali后 , 会生成.bak后缀的代码 , 注意要删掉 , 否则会重新打包编译不通过 。
4/5
使用apktool重新打包 。在命令行输入:
apktool b test
5/5
签名apk 。没有签名的apk是不可用的 。在命令行输入:
jarsigner-digestalg SHA1 -sigalg MD5withRSA -verbose-keystore 密钥库名 -storepass密钥密码 -signedjar 生成后apk路径原apk路径密钥别名
方法/步骤二:结合dex2jar来生成源代码
1/2
如果想逆向分析后 , 用源代码开发一个类似的 , 这时需要用dex2jar来生成可读性强的源代码 。在命令行中输入:
d2j-dex2jar.bat test.apk
2/2
利用jd-gui等工具 , 来查看生成后的jar 。这时可以看到代码类似开发时写的java源代码了 , 可以大概读懂大部分逻辑 。如果把代码拷贝到Android Studio , 会发现还是有些错误 , 这时可以结合逻辑进行修改 。


安卓逆向怎么弄

文章插图


安卓逆向怎么弄

文章插图


安卓逆向怎么弄

文章插图


安卓逆向怎么弄

文章插图


安卓逆向怎么弄

文章插图


安卓逆向怎么弄

文章插图


安卓逆向怎么弄

文章插图