- 博客(13)
- 资源 (8)
- 收藏
- 关注
转载 Android am & pm 命令
先说下am命令,am全称activity manager,你能使用am去模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等等。当你在adb shell命令下执行am命令:am 你也可以在adb shell前执行am命令:adb shell am start -a android.intent.action.VIEW关于一些am命令的介绍:
2014-12-25 14:20:04 753
转载 Android Java Hook 方法
说明:安卓系统的可执行对象有两个世界,一个是Linux Native世界,一个是Java世界.两个世界能够通过jvm产生交互,具体来说就是通过jni技术进行互相干涉.但是在正常情况下,只能在Java世界通过jni调用native方法,二native不能在没有任何java上的支持下干涉java世界.在一些应用中,我们需要对一个app的java世界进行干涉.再说到linux上的进程注入技术
2014-12-12 20:30:56 7537 1
转载 x86 CPU所有的寄存器种类
1.一般寄存器:AX、BX、CX、DX AX:累加寄存器,BX:基址寄存器,CX:計數寄存器,DX:数据寄存器 ax,bx,cx,dx各為16位即2bytes空間的寄存器,其中ax又可化分為ah與al,而bx可化分為bh與bl,cx及dx亦同,而ah與al空間即為8位1byte的空間,舉例,如果ax=3478h,那麼ah=34h、al=78h 其中bx又可用來間接寻址
2014-12-11 10:54:26 6047
转载 汇编语言基本指令
一.机械码,又称机器码.ultraedit打开,编辑exe文件时你会看到许许多多的由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F组成的数码,这些数码就是机器码.修改程序时必须通过修改机器码来修改exe文件.二.需要熟练掌握的全部汇编知识(只有这么多)不大容易理解,可先强行背住,混个脸儿熟,以后慢慢的就理解了cmp a,b 比较a与bmov a,
2014-12-10 20:05:14 12413
转载 基于Android的ELF PLT/GOT符号重定向过程及ELF Hook实现
引言写这篇技术文的原因,主要有两个:其一是发现网上大部分描述PLT/GOT符号重定向过程的文章都是针对x86的,比如《Redirecting functions in shared ELF libraries》就写得非常不错。虽然其过程跟ARM非常类似,但由于CPU体系不同,指令实现差异非常大;其二是网上大部分关于ELF文件格式的介绍,都是基于链接视图(Linking View
2014-12-05 20:20:04 1139
转载 ARM汇编指令
ARM 汇编指令ARM处理器的指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协处理器指令和异常产生指令6大指令。一、跳转指令跳转指令用于实现程序流程的跳转,在ARM程序中有以下两种方法可以实现程序流程的跳转。Ⅰ.使用专门的跳转指令;Ⅱ.直接向程序计数器PC写入跳转地址值,通过向程序计数器PC写入跳转地址值,可以实现在4GB的地址空间中的
2014-12-05 20:17:31 473
转载 Android 启动过程详解
Android从Linux系统启动有4个步骤;(1) init进程启动(2) Native服务启动(3) System Server,Android服务启动(4) Home启动总体启动框架图如: 第一步:initial进程(system\core\init) init进程,它是一个由内核
2014-12-04 20:48:39 474
转载 Android SystemServer 解析
SystemServer是Android系统的一个核心进程,它是由zygote进程创建的,因此在android的启动过程中位于zygote之后。android的所有服务循环都是建立在 SystemServer之上的。在SystemServer中,将可以看到它建立了android中的大部分服务,并通过ServerManager的add_service方法把这些服务加入到了ServiceManager
2014-12-04 12:31:52 555
转载 Android ServiceManager 如何注册和查找service
ServiceMananger是android中比较重要的一个进程,它是在init进程启动之后启动,从名字上就可以看出来它是用来管理系统中的service。比如:InputMethodService、ActivityManagerService等。在ServiceManager中有两个比较重要的方法:add_service、check_service。系统的service需要通过add_servi
2014-12-04 12:06:20 2547
转载 Android Native/Android service 详解
Android体系架构中三种意义上服务: Native服务 Android服务 Init空间的服务,主要是属性设置,这个IPC是利用Socket来完成的,这个我将在另外一章来讨论。Navite服务,实际上就是指完全在C++空间完成的服务,主要是指系统一开始初始化,通过Init.rc脚本起来的服务,例如Service Manger service,Zygote service,Med
2014-12-03 16:57:05 2756
转载 Android Binder,Service,Service manager 框架分析
IPC框架分析 Binder,Service,Service manager 我首先从宏观的角度观察Binder,Service,Service Manager,并阐述各自的概念。从Linux的概念空间中,Android的设计Activity托管在不同的的进程,Service也都是托管在不同的进程,不同进程间的Activity,Service之间要交换数据属于IPC。Binder就是为了Ac
2014-12-03 16:55:23 852
转载 ELF 格式详解
ARM的可执行文件的格式是ELF格式文件,下文对ELF格式做个详细的介绍。序言1. OBJECT文件 导言 ELF头(ELF Header) Sections String表(String Table) Symbol表(Symbol Table) 重定位(Relocation)2. 程序装载与动态连接 导言 Progr
2014-12-01 21:29:05 3329
转载 ELF 文件中的 GOT 表和 PLT 表解读
ELF可以生成一种特殊的代码——与位置无关的代码(position-independent code,PIC)。用户对gcc使用-fPIC指示GNU编译系统生成PIC代码。它是实现共享库或共享可执行代码的基础.这种代码的特殊性在于它可以加载到内存地址空间的任何地址执行.这也是加载器可以很方便的在进程中动态链接共享库。 PIC的实现运用了一个事实,就是代码段中任何指令和数据段中的任何变量之
2014-12-01 21:26:42 9831
android PackageManager 反射调用相关的类
2016-08-03
Cordova_android_demo
2016-01-21
WD412.exe驱动程序开发工具
2009-08-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人