android逆向分析之反编译
来源:互联网 发布:windows应用商店在哪 编辑:程序博客网 时间:2024/04/30 03:18
提到逆向工程,首先就要提到反编译,对于反编译,现在工具还是比较多的,市面上广泛应用的三神器(apktool、dex2jar、jdgui),本篇主要围绕着三神器展开,后面还会阐述smali和使用smali2java。我是通过这三神器入门的,最初的时候,通过反编译去看一些公司的架构和一些功能的实现,还是挺嗨的,但是伴随着软件安全意识的加强,还有各个公司对自己产品的保护,现在反编译的难度越来越大的,可读性也随之低了好多,从之前的混淆到现在的加壳,还有一些大公司更是通过C/C++实现代码更加安全。。。
不多说,就是干,今天就围绕某个保险公司的产品展开(这是之前别人让我做的一个私活,修改内部的一个功能)。apk本身就是一个压缩包,可以直接解压,解压完成后,一级目录会有一个classes.dex文件,此时把文件拷贝到dex2jar文件夹下,找到dex2jar.bat文件(我是在Windows环境下),通过cmd打开操作窗口,把dex2jar.bat拖到操作窗口,一个空格后在拖入classes.dex文件,一个回车就ok,如图所示:
完成此操作后,便会生成一个jar文件。
通过jdgui打开,如下
虽然此保险公司在全国都很出名,大个子还代言过,这代码安全方面确实有点汗颜,没加壳也没做混淆,赤裸裸的暴露出来了。。。
此时,我们拿到的仅仅是源代码,对于资源文件,打开后都是乱码,说到这里,apktool闪亮登场了,通过操作窗口键入到apktool文件夹下,apktool d jst.apk这是反编译命令。通常情况下,我是把要反编译的文件放在apktool文件夹下,这样不用担心路径的问题,过程和结果如下:
PS:这是我的路径,需要填写自己apktool的路径。
现在的xml文件,可以通过记事本或者文本编辑工具直接打开,如果需要修改一些代码和功能,smali文件夹下面找到对应的文件进行修改,修改完后的文件,通过apk b jst直接打包,是对文件夹打包,注意的是jst没有后缀,此处未做签名校验,签名后便可以安装运行。
工具链接(apktool、dex2jar、jdgui、Smali2Java)
- android逆向分析之反编译
- Android开发学习之路--逆向分析反编译
- Android逆向反编译之工具介绍
- Android逆向反编译之smali基础
- Android逆向工程之反编译注入代码
- Android逆向之旅---反编译利器Apktool和Jadx源码分析以及错误纠正
- Android应用逆向——分析反编译代码之大神器
- Android逆向之旅---反编译利器Apktool和Jadx源码分析以及错误纠正
- Android逆向之旅---反编译利器Apktool和Jadx源码分析以及错误纠正
- Android逆向之旅---反编译利器Apktool和Jadx源码分析以及错误纠正
- Android逆向之旅---反编译利器Apktool和Jadx源码分析以及错误纠正
- 【Android安全】APK静态分析-源码反编译逆向分析
- Android逆向之静态分析
- Android逆向分析之APKTool
- Android逆向分析之Cydia
- Android逆向分析(反编译)工具ded的使用
- Android逆向分析(反编译)工具ded的使用
- Android软件安全与逆向分析入门-壹-初识反编译
- mapreduce原理--伪分布式hadoop的配置
- windows 下实现函数打桩:拦截API方式
- BootStrap学习
- Linux学习(文件四)
- 【HDOJ】5908 Abelian Period
- android逆向分析之反编译
- hdu 4300 Clairewd’s message(扩展KMP)
- winform对web service的调用
- leetcode facebook面试 convert bst to double-linked list
- mapreduce的高可用性配置
- 有关程序设计
- laraval 分析结果集 中的数据
- Java集合框架面试题目
- AS中的gradle文件