1.工具准备

1.1 apktool

用于将apk逆向为目录,内含字节码文件。使用好压软件可以将apk解压为目录,但没有反编译的效果,看不到smali文件。
下载地址: http://download.csdn.net/detail/chuchus/9425744
其他参考:http://apktool.shoujifans.com/

1.2 smali2java:

将字节码反编译为java。

自行百度,这个很好拿到。

2.拿到apk

拿到apk。

可以直接用好压解压,看一下。

图2-1 好压直接解压apk文件

一般来讲,xxx.dex文件就是编译后的业务代码。

但图2-1这个例子中有一个xxx.des文件,是加密、混淆后的业务代码。

3.apktool反编译到字节码

注意apktool的版本号。过低的话逆向高版本apk可能报错。

命令为: apktool d -o outPutDir  xxx.apk

完成后得到目录。大致结构见图3-1。

图3-1 apktool逆向后的目录结构

smali目录主要是由classes.dex文件逆向得到。

.smali文件类似java中的.class文件,为字节码文件,被Dalvik VM解释执行。

图3-2 smali目录下的文件

观察图3-2可以看到有secneo目录,这是个app加密的公司,官网见:http://www.secneo.com  中文网站叫梆梆加固,见http://www.bangcle.com/

4.字节码反编译到java

使用smali2java工具即可。

apktool(android app逆向)相关推荐

  1. 裁判文书android app逆向

    首先使用apktool解包:apktool d wenshuapp.apk 修改AndroidManifest.xml,添加android:debuggable="true" , ...

  2. android app逆向分析,如何开始对Android应用的逆向分析?

    本文是我的关于如何开始Android逆向系列文章的第一部分.在文末提供了一个文档,你可以根据该文档说明部署同我一样的实验环境. 在了解android应用的逆向之前,你必须对android平台及其架构和 ...

  3. 安卓逆向与java_Java语言的逆向(Android APP)

    Java语言的逆向比较简单,只说一些关键思路和小技巧.下面以QQ音乐为例,讲述Android APP逆向的基本过程. 静态分析 将APK反编译成比较方便理解的代码(如smali.Java代码等),进行 ...

  4. 不反编译、无逆向基础也能轻松编写Android App Hook插件? Xposed的远房表弟,Hookworm来也!

    前言 Xposed的大名相信很多同学都不陌生,它提供了一种能力,可以在不修改原apk的情况下,以插件的方式改变目标App的某些行为. 但随着Android系统版本的迭代,原来的Xposed已经不适合在 ...

  5. 010 Android之逆向入门

    文章目录 Android APK文件结构 META-INF res AndroidManifest.xml classes.dex resources.arsc lib Assets Android ...

  6. 动态分析Android App之动态调试

    这个系列一共有五篇左右,内容主要介绍如何在Java层动态分析和调试Android App,和网上其他教程相比,内容更充实,体系更健全,深入而浅出. 闻道有先后,术业有专攻,希望能给刚入门Android ...

  7. Android app如何加密?

    欢迎访问网易云社区,了解更多网易技术产品运营经验. Android App包含的内容有dex文件,so文件,res,assets资源文件.对应的加密按此内容分为三大方面:dex保护.so加密.资源保护 ...

  8. Android app security安全问题总结

    数据泄漏 本地文件敏感数据不能明文保存,不能伪加密(Base64,自定义算法等) android:allowbackup=false. 防止 adb backup 导出数据 Activity inte ...

  9. android app 渗透测试,android app渗透测试方法大全.pdf

    Android APP 渗透测试方法大全 by backlion 一.Android APP 渗透测试方法 1.测试环境 SDK : J a JDK , Android SDK. 工具: 7zip, ...

最新文章

  1. python - DBUtils 连接池减少oracle数据库的连接数
  2. 阳光与阴谋:从投资者角度看理财周报-赛迪事件
  3. 【TensorFlow】笔记4:图像识别与CNN
  4. VC项目配置基础 (VC6.0 和VC2005)
  5. Android:新建一个Activity(隐式/显式),并携带数据
  6. Pylot——跨平台的网站压力测试工具
  7. python中map()函数的用法讲解
  8. OFFICE2003的自动保存功能。
  9. Win11 如何跳过微软注册界面
  10. oracle递归查询出现死循环,一次马失前蹄的SQL优化:递归查询引发的血案
  11. Python注释之TODO注释
  12. 【USACO 2020 January Silver】Loan Repayment 题解
  13. 云帆加速:广电新媒体营收如何跑赢成本
  14. 谷歌云服务_Google Cloud_使用注意
  15. 第五届蓝桥杯真题解析【JavaC组】
  16. blt功能_BitBlt使用详解 | 学步园
  17. http://blog.sina.com.cn/s/blog_7f5ad8c20101cnna.html#commonComment
  18. 抗体偶联药物 (ADC)——抗肿瘤细胞
  19. Unix时间戳,GPS时间戳 ,UTC时间 , 本地时间
  20. 如何手动删除windows服务

热门文章

  1. 剑指offer面试题[3]-二维数组的查找
  2. java无框架开发,DON: java 小型web项目快速开发框架,实现无配置,直接关注业务开发.主要解决请求分发解析...
  3. 十分钟弄懂最快的APP自动化工具uiautomator2
  4. 新闻页面_页面加载功能设计总结
  5. python如何实现日期格式的转换_python开发中时间格式如何转化?
  6. vscode 切换开发者工具_大整理!JavaScript开发者的27个神奇VSCode工具
  7. 测绘计算机编程在在道路中的应用,CASIO系列编程计算器在公路测量中的应用.doc...
  8. 基于深度卷积神经网络的玉米病害识别
  9. 《R语言预测实战》PDF,数据及代码
  10. 自动人脸识别高颜值抖音小姐姐并点赞(python)