当前位置: 首页 > news >正文

预备阶段-Android逆向基础

Android程序一般是使用Java语言开发的,通过打包生成一个APK文件安装到Android手机上来运行。通过一些反汇编工具可以得知APK文件内部的逻辑,甚至得到它最初的Java源代码(不完全等同于开发时的源代码,但是大体上相同)。也可以通过反汇编工具得到类似的Smali代码,Smali代码是一种类似于汇编语言的代码,适合机器执行,但对于程序员来说就很晦涩难懂。随着业务安全性的提高,现在大多数加密都放置在so文件中生成,想要了解so文件就需要掌握Arm汇编语法,了解寄存器和指令集。

APK

APK(Android Application package,Android应用程序包)是Android软件包的分发格式,它本身是个Zip压缩包,用于分发和安装移动应用及中间件。一个Android应用程序的代码想要在Android设备上运行,必须先进行编译,然后打包成一个被Android系统能识别的文件才可以被运行,而这种能被Android系统识别并运行的文件格式便是 APK。

APK根目录下可能出现的目录和文件如下:

名称简介
META-INF存放元数据(签名、证书等)
AndroidManifest.

http://www.mrgr.cn/news/37286.html

相关文章:

  • 极狐GitLab 17.4 重点功能解读【八】
  • 深入理解 CompletableFuture 的底层原理
  • 四DHCP服务实验
  • MK米客方德SD NAND参考设计
  • C++实现二叉树的创建删除,dfslfs,求叶子结点个数,求叶子结点个数,求树的高度
  • 【单元测试】任务3:JUnit assertThat断言
  • ppython 实现k nearest neighbours k最近邻分类算法
  • python 实现knn sklearn K近邻分类算法
  • LeetCode //C - 387. First Unique Character in a String
  • Spring Boot 进阶- Spring Boot日志框架介绍
  • ArcGIS与ArcGIS Pro去除在线地图服务名单
  • C++:笔试题
  • 深入理解C#中的装箱与拆箱操作及其性能影响
  • 力扣经典笔试题 最小K个数 小根堆 大根堆 快速排序 一题多解
  • 硬件设计很简单?合宙低功耗4G模组Air780E—开机启动及外围电路设计
  • 代码随想录算法训练营第四四天| 1143.最长公共子序列 1035.不相交的线 53. 最大子序和 392.判断子序列
  • 大学生科技竞赛系统小程序的设计
  • Day 2 词汇备战
  • MySQL_插入、更新和删除数据
  • 【Python报错已解决】TypeError: list indices must be integers or slices, not str