Android
巧克力工厂的查理
这个作者很懒,什么都没留下…
展开
-
关于使用Androguard解析dex文件的问题[]
最近使用androguard来反编译apk sample并分析,发现了一些问题有些apk sample的dex文件的文件头的link_size和link_off不是默认的0值,填充着非零值,如05和06,这个值正好落在了dex文件头的magic number和checksum字段中,应该是没有任何意义的。使用Androguard反编译该dex文件时候,总是通不过,会有异常抛出。原创 2011-12-21 16:58:15 · 26868 阅读 · 2 评论 -
Android Root方法原理解析及Hook(一) adbd漏洞
漏洞在于Android源码中的 adb.c文件 中int main(){ ... ... setgid(AIL_SHELL); // 失败不退出 setuid(AIL_SHELL); //同上 ... ... }adbd进程启动,开始时会以root权限执行一些初始化操作,之后会降权至当前shell用户权限;但若降权失败,adbd进程不会退出,仍然启动起来,此时就原创 2012-02-23 11:18:49 · 32094 阅读 · 3 评论 -
Android Root方法原理解析及Hook(二) udev漏洞
android并没有实现linux的udev,其功能由vold进程实现,其包含VolumeManager,NetlinkManager,CommandListener等modules vold工作机制: kernel检测到硬件事件,然后广播出去,Native层的init进程通知vold(root权限)去处理该广播信息,vold再通知JNI层的MountService,其与J原创 2012-02-23 11:21:01 · 30863 阅读 · 0 评论 -
Android Root方法原理解析及Hook(三) FrameworkListener漏洞
Vold进程(root权限)在启动时会有一个CommandListener对象启动startListener线程,其继承自FrameworkListenr,存在漏洞的函数为FrameworkListener::dispatchCommand(),其中的局部变量argv为固定大小的指针数组,当输入参数的数量超过其大小时,会越界写入栈中。恶意程序可据此将恶意指令写入,由root权限的vold进原创 2012-02-23 17:16:33 · 30811 阅读 · 1 评论 -
Android Root方法原理解析及Hook(四) GingerBreak
和zergRush的攻击原理是一样的,其实zergRush的code部分源于GingerBreak,都是先使vold进程崩溃,从logcat拿到调试信息,然后让vold进程以root权限执行恶意的shellcode(boomsh), 利用了android的/system/vold/DirectVolume.cpp中handlePartitionAdded()函数的漏洞void原创 2012-02-23 17:18:28 · 29536 阅读 · 0 评论 -
浅析GrowingIO的“无需埋点”-- 编译时动态修改源代码
最近看到一个GrowingIO的产品,号称植入SDK,可以使得开发人员不需要为数据追踪和上报在代码中埋点。通过分析一下app的生命周期,可以大概知道其“无需埋点”的原理。App的生命周期可以划为1. programming: 也就是开发人员写代码2. compiling: 编译代码得到App package3. installing: 在device上 安装 app4. r原创 2016-07-22 16:18:58 · 44810 阅读 · 2 评论 -
Android智能事件触发器---ApkViewTracer
本文介绍我业余时间开发的一个工具,ApkViewTracer,主要是通过与Android模拟器中View Server通信,可以跟踪并分析模拟器当前Views的状态,可以向指定的某个View发送事件,触发其行为。目前,这个工具主要提供两个功能:1. Intelligent event trigger,在apk运行过程中更拟人地更智能地触发其行为,用于辅助Android Applica原创 2012-06-14 11:12:15 · 74141 阅读 · 3 评论