android逆向android进程简介(android应用启动流程)(代码片段)

韩曙亮 韩曙亮     2023-01-21     594

关键词:

前言

参考 【Android 逆向】Android 系统文件分析 ( /proc/pid 进程号对应进程目录 | oom_adj | maps | smaps | mem | task | environ ) 博客 , /proc/ 目录中存放的是所有进程相关信息 ;





一、Android 进程



Android 操作系统中运行程序 , 首先要给程序分配内存 , 除内存外 , 程序运行还需要 文件 , 套接字 等维持其运行 ; 每个程序都需要一套上述机制 , 才能保证运行 ;

为了解决上述问题 , 引入进程机制 , 进程是操作系统中最小的资源调度单位 , 被调度的资源包括 CPU , 内存 , 存储空间 等 ;

执行 ps -ef 可以打印出当前正在运行的所有进程 ;

进程中 , 除进程号之外 , 其它元素都可能会重复 ;

应用 与 进程 的对应关系是 一对多的关系 , 一个应用可能有多个进程 ;

一个进程 只可能对应 一个应用 ;





二、Android 应用启动流程



Android 中的 ActivityManagerService 就是用于管理应用进程的 ;

用户点击应用图标 , 请求 ActivityManagerService 启动某个应用 , ActivityManagerService 会向 Zygote 发出创建应用的请求 , 应用进程实际上是有 Zygote 创建的 ;

zygote 也是进程 ;

android逆向android进程注入工具开发(注入代码分析|远程调用目标进程中libc.so动态库中的mmap函数一|mmap函数简介)(代码片段)

文章目录一、mmap简介二、mmap函数作用一、mmap简介mmap函数的作用是将文件映射到内存中,映射的单位必须是PAGE_SIZE;mmap函数引入头文件:<sys/mman.h>mmap函数原型:<sys/mman.h>void*mmap(void*start,size_tlength,intprot,intflags,intfd,off_toffset);i... 查看详情

android逆向android系统文件分析(/proc/目录文件分析|记录系统和进程信息|version内核版本信息文件)(代码片段)

...件,该目录中的文件的作用,主要是记录系统和进程的信息;Android系统将进程,以及进程相关信息,映射到/proc/目录下,作为一个文件,方便用户使用内核相关对象;/proc/目录映射了一些内核的参数和信息;应用只能修改自己的进程信息,无... 查看详情

android逆向android系统文件分析(/proc/目录文件分析|记录系统和进程信息|version内核版本信息文件)(代码片段)

...件,该目录中的文件的作用,主要是记录系统和进程的信息;Android系统将进程,以及进程相关信息,映射到/proc/目录下,作为一个文件,方便用户使用内核相关对象;/proc/目录映射了一些内核的参数和信息;应用只能修改自己的进程信息,无... 查看详情

android逆向android进程注入工具开发(visualstudio开发androidndk应用|visualstudio中sdk和ndk安装位置)(代码片段(代码片段)

...用C++的移动开发"开发库二、VisualStudio中安装的AndroidSDK和NDK位置三、VisualStudio中安装的NDK头文件位置四、VisualStudio中查看NDK头文件一、VisualStudio中安装"使用C++的移动开发"开发库参考【Android逆向】Andr 查看详情

android逆向android进程注入工具开发(总结|源码编译|逆向环境搭建使用|使用进程注入工具进行逆向操作)★★★(代码片段)

文章目录一、Android进程注入工具开发系列博客二、Android进程注入工具源码下载编译三、逆向环境搭建四、使用注入工具进行逆向操作1、获取远程进程号2、注入工具准备3、注入动态库4、查询内存5、修改内存一、Android进程注入... 查看详情

android逆向代码调试器开发(代码调试器功能简介|设置断点|读写内存|读写寄存器|恢复运行|attach进程)(代码片段)

文章目录一、代码调试器功能简介二、Attach进程一、代码调试器功能简介代码调试器功能:设置断点:无论什么类型的调试器,都必须可以设置断点,运行到断点处,挂起被调试进程,读取当前状态的CPU寄存器和内存数据;arm架构中,有一... 查看详情

android逆向ptrace函数(c标准库ptrace函数简介|ptrace函数真实作用)(代码片段)

文章目录一、C标准库ptrace函数简介二、ptrace函数真实作用一、C标准库ptrace函数简介ptrace函数:在C标准库中有一个ptrace函数,该函数是一个系统调用方法,可以监视进程执行,查看/更改被监视进程的内存和寄存器情况,常用于断点调试... 查看详情

android逆向android进程注入工具开发(注入代码分析|获取linker中的dlopen函数地址并通过远程调用执行该函数)(代码片段)

文章目录一、dlopen函数简介二、获取目标进程linker中的dlopen函数地址三、远程调用目标进程linker中的dlopen函数一、dlopen函数简介dlopen函数的作用是打开一个so动态库,并返回该so的句柄;包含头文件:#include<dlfcn.h>函数原型:void*dlo... 查看详情

android逆向apktool工具使用(apktool简介|apktool解包和打包)(代码片段)

...ktool解包2、使用apktool打包前言之前写的ApkTool相关博客:【Android安全】DEX加密(常用Android反编译工具|apktool|dex2jar|enjarify|jd-gui|jadx)【Android逆向】Android逆向工具(Apktool|IDA|Python)【Android逆向】APK 查看详情

android逆向android进程注入工具开发(注入代码分析|注入工具收尾操作|关闭注入的动态库|恢复寄存器|脱离远程调试附着)(代码片段)

文章目录一、dlclose函数简介二、关闭注入的libbridge.so动态库三、恢复寄存器四、脱离远程调试附着一、dlclose函数简介dlclose函数的作用是卸载一个指定句柄的动态库;包含头文件:#include<dlfcn.h>函数原型:intdlclose(void*handle);参数... 查看详情

android逆向android进程注入工具开发(注入代码分析|远程调用目标进程中libc.so动态库中的mmap函数三|等待远程函数执行完毕|寄存器获取返回值)(代(代码片段)

...寄存器中获取进程返回值三、博客资源前言前置博客:【Android逆向】Android进程注入工具开发(注入代码分析|远程调用目标进程中libc.so动态库中的mmap函数一|mmap函数简介)【Android逆向】Android进程注入工具开发(注入代码分析|远程调... 查看详情

android逆向android进程注入工具开发(注入代码分析|获取注入的libbridge.so动态库中的load函数地址并通过远程调用执行该函数)(代码片段)

文章目录一、dlsym函数简介二、获取目标进程linker中的dlsym函数地址三、远程调用目标进程linker中的dlsym函数获取注入的libbridge.so动态库中的load函数地址四、远程调用目标进程中的libbridge.so动态库中的load函数一、dlsym函数简介dlsym... 查看详情

android逆向substrate框架(substrate简介|substrate相关文档资料)

...架是开源的;substrate配合对应的so动态库和头文件,可以在Android/iOS平台中独立运行;substrate框架可用于拦截函数;其没有注入动态库的功能;sub 查看详情

android逆向android进程注入工具开发(远程调用总结|远程调用注意事项)

...二、远程调用注意事项一、远程调用总结在之前的博客【Android逆向】Android进程注入工具开发(调试进程中寄存器的作用|通过EIP寄存器控制程序运行|EIP寄存器的存档与恢复)【Android逆向】Android进程注入工具开发(EIP寄存器指向dlopen... 查看详情

android逆向android进程注入工具开发(注入代码分析|远程调用目标进程中libc.so动态库中的mmap函数二|准备参数|远程调用mmap函数)(代码片(代码片段)

...、mmap函数远程调用一、准备mmap函数的参数上一篇博客【Android逆向】Android进程注入工具开发(注入代码分析|远程调用目标进程中libc.so动态库中的mmap函数一|mmap函数简介)中介绍了mmap函数;mmap函数的函数原型如下:<sys/mman.h>void*m... 查看详情

android逆向android进程注入工具开发(注入代码分析|注入工具的main函数分析)(代码片段)

...程二、注入工具的main函数分析一、注入流程开始分析【Android逆向】Android进程注入工具开发(编译注入工具|编译结果文件说明|注入过程说明)博客中的tool工具代码;tool工具使用前,先获取要注入的目标进程进程号,使用dumpsysactivitytop... 查看详情

android逆向apktool工具使用(apktool简介|apktool解包和打包)(代码片段)

...ktool解包2、使用apktool打包前言之前写的ApkTool相关博客:【Android安全】DEX加密(常用Android反编译工具|apktool|dex2jar|enjarify|jd-gui|jadx)【Android逆向】Android逆向工具(Apktool|IDA|Python)【Android逆向】APK文件处理脚本ApkTool.py(脚本简介|用法|分... 查看详情

android逆向android进程注入工具开发(so进程注入环境及root权限获取|进程注入时序分析)(代码片段)

...root权限后,才能调用ptrace相关函数;SO注入环境有两种情况,Android模拟器或真实手机;这里特别推荐使用雷电模拟器进行逆向操作,在真机上会出现各种问题;使用Android模拟器,如雷电模拟器,使用ld工具查看日志,查看日志命令为:ld.exel 查看详情