您当前的位置:首页 > 电脑百科 > 程序开发 > 移动端 > Android

Android逆向反编译代码注入APK过程思路分析

时间:2020-08-06 14:15:49  来源:  作者:

一、名称解释

  • 逆向 - 是一种产品设计技术再现过程,从可运行的程序系统出发,运用解 密、反汇编、系统分析等多种计算机技术,对软件的结构、流程、算法、 代码等进行逆向拆解和分析,推导出软件产品的源代码、设计原理、结构、 算法、处理过程、运行方法及相关文档等。
  • 反编译 – 指把机器码(汇编语言) → 高级编程语言,也就是通过反编译工 具对低级语言进行逆向工程,获取其源代码,比如JAVA的反编译,就是将 class文件转换成java文件。
  • APK - (全称:Android Application package,Android应用程序包)是 Android操作系统使用的一种应用程序包文件格式,用于分发和安装移动 应用及中间件,一个包含所有代码和资源文件的压缩包。

二、反编译工具

Apktool

  • 功能: 将APK文件反编译出程序源代码、图片资源、布局文件以 及smali文件等,并能将编译后的项目重新打包成APK。

dex2jar

  • 功能: 将classes.dex转化成.jar文件。

JD-GUI

  • 功能: 查看.jar源码文件。

三、注入思路

Android逆向反编译代码注入APK过程思路分析

注入思路流程图

四、流程详解

  1. 将目标apk反编译出smali1文件;
  2. 把目标apk解压后,使用dex2jar工具将dex文件转为jar文件;
  3. 通过JD打开jar文件,查看目标App业务逻辑,找到对应 注入的地方;
  4. 开发jar包库文件;
  5. 将jar包文件转为smali2文件;
  6. 把smali1和smali2合成为smali3文件;
  7. 在smali1文件中调用smali2相关代码,完成注入;
  8. 回编译;
  9. 重签名;
  10. 安装测试;

综上:通过反编译工具,再结合注入流程,即可将我们想要的功能注入到APK安装包,实现代码注入的目标



Tags:Android   点击:()  评论:()
声明:本站部分内容来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除,谢谢。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
过去几年以来,Netflix 一直在开发 Prodicle 移动应用,借此在电视节目与电影制作领域推进创新。时至今日,实体生产的具体方式可谓日新月异,不同国家、地区甚至是不同生产体系之间...【详细内容】
2020-11-16   Android  点击:(2)  评论:(0)  加入收藏
我们都知道,对于安卓手机,随着手机的使用,内存会越来越小,尤其是QQ、微信这一类的聊天通讯软件,应用数据是一天一天的见长,动不动就是好几个G,今天就给大家安排一款软件Avast Clean...【详细内容】
2020-10-27   Android  点击:(10)  评论:(0)  加入收藏
对于刚从Android转到iPhone的用户来说,最大的担忧之一就是担心丢失所有数据。由于它们是两个截然不同的操作系统,因此在两个操作系统之间传输所有有价值的数据通常会感到很复...【详细内容】
2020-10-15   Android  点击:(11)  评论:(0)  加入收藏
时光匆匆,时间转瞬即逝,科技发展的步伐,远远超出我们普通人的预计,从当初的通信手机到如今的智能手机,每年手机的发展都在快速的变化,从当初还可拆卸的电池,到现如今的一体机。从哪...【详细内容】
2020-10-15   Android  点击:(3)  评论:(0)  加入收藏
Brave Privacy 浏览器Brave浏览器提供了一系列旨在保护你在网络上的安全和隐私的功能。例如,它包括针对内置广告、弹出窗口、脚本和第三方cookies的拦截器。它甚至实现了HTTP...【详细内容】
2020-10-12   Android  点击:(11)  评论:(0)  加入收藏
Intent 用于通过描述您想在某个 Intent 对象中执行的简单操作(如“查看地图”或“拍摄照片”)来启动另一应用中的某个 Activity。这种 Intent 称作隐式 Intent,因为它并不指定...【详细内容】
2020-10-10   Android  点击:(4)  评论:(0)  加入收藏
通过 Android Studio 创建“Hello, World!”项目并运行它。①打开AS,在 Welcome to Android Studio 窗口中,点击 Start a new Android Studio project。②在 Configure your p...【详细内容】
2020-10-09   Android  点击:(3)  评论:(0)  加入收藏
XPopup 提供了 Android 开发中功能强大,交互优雅,动画丝滑的通用弹窗。可以替代Dialog,PopupWindow,PopupMenu,BottomSheet,DrawerLayout,Spinner等组件,自带十几种效果良好的动画, 支持完全的UI和动画自定义。...【详细内容】
2020-09-29   Android  点击:(7)  评论:(0)  加入收藏
Hawk框架,是Android用于数据本地保存,是一个安全,简单的键值对保存框架。使用方法也是快捷简单。Hawk这个框架分为有两个版本,一个是1.0+的版本,另一个是2.0+的版本。本文介绍的...【详细内容】
2020-09-25   Android  点击:(8)  评论:(0)  加入收藏
导读高德地图开放平台产品不断迭代,代码逻辑越来越复杂,现有的测试流程不能保证完全覆盖所有业务代码,测试不到的代码及分支,会存在一定的风险。为了保证测试全面覆盖,需要引入代...【详细内容】
2020-09-16   Android  点击:(7)  评论:(0)  加入收藏
一、Android JetPack——Google多么痛的领悟最近好几个小伙伴问我什么是Android JetPack,听说这个包好像有点牛,帅哥你会不?我心想什么鬼!Android JetPack这货不是一...【详细内容】
2020-09-14   Android  点击:(4)  评论:(0)  加入收藏
Google改进Android资料存储方法,推出用来代替原本SharedPreferences的Jetpack DataStore测试版,Jetpack DataStore是以Kotlin协程和Flow功能为基础,并提供了Proto DataStore和P...【详细内容】
2020-09-09   Android  点击:(16)  评论:(0)  加入收藏
对于早期的微信应用,基本上就是一个类似于QQ的即时通讯应用,没有太多复杂的功能,恰好满足了许多人的社交需求。不过,随着小程序、小游戏以及浮窗等功能的推出,微信在网络上被调侃...【详细内容】
2020-09-02   Android  点击:(6)  评论:(0)  加入收藏
上一篇文章从Native角度讲解了Android进程管理的相关概念,本文将继续从上层的Framework中的进程启动、销毁场景和优先级处理、以及它们与四大组件的种种关联,来逐步解析Androi...【详细内容】
2020-08-27   Android  点击:(5)  评论:(0)  加入收藏
两个内存泄漏和一个数组索引越界漏洞简介 Issue 74882215: Bluetooth L2CAP L2CAP_CMD_CONN_REQ Remote Memory Disclosure(蓝牙L2CAP L2CAP_CMD_CONN_REQ远程内存泄漏) Issu...【详细内容】
2020-08-26   Android  点击:(9)  评论:(0)  加入收藏
大部分应用都会请求 ( READ_EXTERNAL_STORAGE ) ( WRITE_EXTERNAL_STORAGE ) 存储权限,来做一些诸如在 SD 卡中存储文件或者读取多媒体文件等常规操作。这些应用可能会在磁盘中存储大量文件,即使应用被卸载了还会依然存...【详细内容】
2020-08-21   Android  点击:(3)  评论:(0)  加入收藏
本文通过一类 Android 机型上相机拍摄过程中的 native 内存 OOM 的问题展开,借助内存快照裁剪回捞和 Native 内存监控工具的赋能,来深入剖析此类问题。背景Raphael 是西瓜视频...【详细内容】
2020-08-20   Android  点击:(4)  评论:(0)  加入收藏
在微博、微信上想要拍照上传时,想直接用FaceU或美图秀秀作为默认拍照程序,给自拍加个滤镜? 在即将推出的Android 11里,这些第三方相机的选择都将不复存在——...【详细内容】
2020-08-20   Android  点击:(13)  评论:(0)  加入收藏
Android官方推荐架构组件Navigation 让单 Activity 应用成为首选架构,更好的管理Fragment框架Navigation目前仅AndroidStudio 3.2以上版本支持,如果您的版本不足3.2, 下载Andro...【详细内容】
2020-08-18   Android  点击:(7)  评论:(0)  加入收藏
Android IDE如今,由于易用性,高度可定制性,庞大的社区,最适合智能手机等多种因素,Android被公认为市场上最好的操作系统。 配备Android操作系统的智能手机的数量远远高于iOS。随...【详细内容】
2020-08-18   Android  点击:(17)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条