![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android Hook学习
Fly20141201
做真实的自己,不为别人而活;做自己喜欢的事,努力、踏实~
展开
-
Xposed框架之函数Hook学习
作者:Fly2015Xposed是Android下Java层的开源Hook框架类似的有cydiasubstrate框架并且据说cydiasubstrate框架能实现Android的Java层和Native层的函数的Hook。学习Android的逆向也有一段时间了,记录一下学习Xposed框架的过程。Xposed框架的学习网站: http://repo.xposed.info/原创 2015-07-06 16:54:53 · 19241 阅读 · 12 评论 -
编译Android内核 For nexus 5 以及绕过Android的反调试
前面的博客中已经记录了Nexus 5手机的Android 4.4.4 r1源码的编译基于ubuntu14.04.5,后面来学习一下Android内核源码的编译基于Nexus 5手机。一、Android内核源码的下载有关Android内核源码的下载信息可以参考谷歌官网的地址https://source.android.com/source/building-kernels.html#原创 2017-02-07 09:59:29 · 8929 阅读 · 0 评论 -
Hook android系统调用研究(一)
一、Android内核源码的编译环境系统环境:Ubuntu 14.04Android系统版本:Android 4.4.4 r1Android内核版本:android-msm-hammerhead-3.4-kitkat-mr1手机设备:Nexus 5研究Android系统调用的目的:Android的内核是逆向工程师的好伙伴。虽然常规的Android应用被限制和沙盒化,原创 2017-02-20 18:43:47 · 10697 阅读 · 2 评论 -
Android Hook框架adbi的分析(1)---注入工具hijack
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/74055505一、Android Hook框架adbi的基本介绍adbi是Android平台的inline Hook框架,和前面博客中提到的libinject和poison注入工具原理差不多,要说具体的相似性的话,poison注入工具可以替换此处adbi的hijack注入工具实现so的原创 2017-07-01 21:57:53 · 5038 阅读 · 0 评论 -
Android Apk加固的初步实现思路(dex整体加固)
一、前 言Android Apk加固的发展已经有一段时间了,相对来说本篇博客要记录的Android加壳的实现思路是4年的东西了,已经被老鸟玩烂了,Android加固的安全厂商也不会采用这么粗犷的方式来进行Android Apk的加固处理。早期Android加固聚焦的两个点主要是在DexClassLoader和Android类加载这两条代码执行流程上去下功夫,后期Android加固会在Android动原创 2017-07-05 15:29:50 · 6191 阅读 · 6 评论 -
Android Hook框架adbi的分析(3)---编译和inline Hook实践
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/75200800一、序言在前面的博客中,已经分析过了Android Hook框架adbi源码的具体实现,Android Hook框架adbi的实现主要分为两部分,一部分是root权限下的Android跨进程的so注入,一部分是基于Android系统的inline Hook。原创 2017-07-16 23:30:15 · 3454 阅读 · 1 评论 -
Android Hook框架adbi的分析(2)--- inline Hook的实现
一、 Android Hook框架adbi源码中inline Hook实现部分的代码结构 Android Hook框架adbi源码中inline Hook部分的实现代码结构示意图如下所示,hijack代码部分是前面的博客中提到的root下Android跨进程注入so的注入工具,instruments\base代码部分为inline Hook的操作实现,instruments\example代码部原创 2017-07-09 12:16:04 · 5598 阅读 · 0 评论 -
Android平台dalvik模式下java Hook框架ddi的分析(1)
一、前 言在前面的博客中已经学习了作者crmulliner编写的,针对Android系统的跨进程 inline Hook的实现即Android native Hook框架adbi的实现。Android Hook框架adbi主要是针对的Android的native函数进行inline Hook操作,那么如果需要对Android系统中Java编写的函数进行Hook,又该怎么操作呢?作者crmulline原创 2017-07-23 18:25:22 · 1894 阅读 · 0 评论 -
基于dalvik模式下的Xposed Hook开发的某加固脱壳工具
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/77966109这段时间好好的学习了一下Android加固相关的知识和流程也大致把Android加固的一些思路理清楚了,不巧在博客上看到了这篇文章《某加固使用xposed脱壳》感觉还不错,正好有时间可以学习一下这款基于Xposed Hook框架开发的某加固脱壳工具,原作原创 2017-09-13 17:09:56 · 5503 阅读 · 0 评论 -
Dalvik模式下基于Android运行时类加载的函数dexFindClass脱壳
前段时间在看雪论坛发现了《发现一个安卓万能脱壳方法》这篇文章,文章说的很简略,其实原理很简单也很有意思,说白了还是dalvik虚拟机模式下基于Android运行时的内存dex文件的dump,对一些免费版本的加固壳还是有效果的,dalvik模式下二代之后的加固壳就不行了。文章脱壳的原理涉及到dalvik模式下dex文件的类查找和加载的过程,下图是dalvik模式下dex文件的类查找和加载的流程示意图原创 2017-09-16 14:05:08 · 4763 阅读 · 9 评论 -
ART模式下基于Xposed Hook开发脱壳工具
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/78092365Dalvik模式下的Android加固技术已经很成熟了,Dalvik虚拟机模式下的Android加固技术也在不断的发展和加强,鉴于Art虚拟机比Dalvik虚拟机的设计更复杂,Art虚拟机模式下兼容性更严格,一些Dalvik虚拟机模式下的Android加固技术并不能马上...原创 2017-09-26 10:20:28 · 4956 阅读 · 7 评论 -
Android so加固的简单脱壳
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/78077603Android应用的so库文件的加固一直存在,也比较常见,特地花时间整理了一下Android so库文件加固方面的知识。本篇文章主要是对看雪论坛《简单的so脱壳器》这篇文章的思路和代码的分析,很久之前就阅读过这篇文章但是一直没有时间来详细分析它的代码,最近比原创 2017-09-24 16:24:21 · 6116 阅读 · 1 评论 -
Android平台dalvik模式下java Hook框架ddi的分析(2)--dex文件的注入和调用
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/77942585前面的博客《Android平台dalvik模式下java Hook框架 ddi 的分析(1)》中,已经分析了dalvik模式下 ddi 框架Hook java方法的原理和流程,这里来学习一下ddi框架代码中涉及到的 dex文件的注入和调用。将一个Android的原创 2017-09-12 16:10:01 · 1639 阅读 · 0 评论 -
查找和定位Android应用的按钮点击事件的代码位置基于Xposed Hook实现
本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80956455在进行Android程序的逆向分析的时候,经常需要通过Android应用程序的界面UI来定位代码的位置,比较常见的例子就是分析Android应用的网络协议时,用户点击登录按钮,实现客户端程序的登录,将用户的账号信息发送给服务器端进行验证,那么我们分析这个网络数据传输的...原创 2018-07-08 07:31:28 · 6773 阅读 · 8 评论 -
修改Android手机内核,绕过反调试
0x1.手机设备环境Model number: Nexus 5OS Version: Android 4.4.4 KTU84PKernel Version: 3.4.0-gd59db4e0x2.Android内核提取查找Android设备的boot分区文件。高通芯片的设备可以通过下面的命令进行查找。cd /home/androidcode/AndroidDevlop原创 2017-02-26 11:32:53 · 14043 阅读 · 7 评论 -
从Android设备中提取内核和逆向分析
一、手机设备环境Model number: Nexus 5OS Version: Android 4.4.4 KTU84PKernel Version: 3.4.0-gd59db4e二、Android内核提取adb shellsucd /dev/block/platform/msm_sdcc.1/by-namels -l bootboot 是个系统符号软链原创 2017-02-25 14:09:46 · 9137 阅读 · 0 评论 -
Android内核模块编译执行
Author: GeneBlue0X01 前言内核驱动是漏洞的高发区,了解Android驱动代码的编写是分析、利用驱动漏洞的基础。本文以一个“hello”驱动为例,简单介绍内核驱动编写、编译的基本过程,包括内核模块的内建编译和动态加载方式的编译。0X02 编写在./goldsifh/drivers文件夹下新建hello目录,在hello目录中新建hello.c文转载 2017-02-24 23:03:04 · 6468 阅读 · 0 评论 -
Android的so注入( inject)和函数Hook(基于got表) - 支持arm和x86
前面深入学习了古河的Libinject注入Android进程,下面来 深入学习一下作者ariesjzj的博文《Android中的so注入(inject)和挂钩(hook) - For both x86 and arm》,注入的思路和古河的是一样的,但是代码的兼容性更好更好理解,适用于arm和x86模式下so注入和函数的Hook,这份代码自己也测试了一下,确实可以Hook目标函数成功,只是被Ho原创 2017-01-01 20:00:58 · 9552 阅读 · 12 评论 -
Android平台的so注入--LibInject
大牛古河在看雪论坛分享的Android平台的注入代码,相信很多搞Android安全的同学应该都看过。刚接触Android平台的逆向时,我也下载了LibInject代码并且仔细的阅读和分析过,见我前面的博文《Android的so库注入》。我已经基本把Android so注入的原理分析的很清楚了,想学习的同学可以参考一下。虽然作者古河分享了LibInject代码,但是在eclispe下NDK编译还原创 2016-12-27 14:38:29 · 5725 阅读 · 9 评论 -
Android Hook学习之ptrace函数的使用
Synopsis#include sys/ptrace.h>long ptrace(enum __ptrace_request request, pid_t pid, void *addr, void*data);DescriptionThe ptrace() system call provides a means bywhich one process (the "tracer原创 2015-05-25 11:26:50 · 3670 阅读 · 1 评论 -
Android的so库注入
作者:Fly2015Android平台的so库的注入是有Linux平台的进程注入移植来的。由于Android系统的底层实现是基于Linux系统的源码修改而来,因此很多Linux下的应用可以移植到Android平台上来比如漏洞。由于Linux平台的注入需要权限,相比较于Windows平台的进程的注入没有被玩的那么火热。但是到了,Android平台以后,很多Android的安全手机软件,都是从这里原创 2015-08-21 14:51:43 · 9698 阅读 · 3 评论 -
Android进程so注入Hook java方法
Andorid的Hook方式比较多,现在来学习下,基于Android进程so注入Hook java方法的原理,可以说现在Android这种方式的Hook已经很成熟了,比较好的Android注入框架如:Xposed、ddi等都是采用这种方式进行Android的Hook原创 2016-12-22 18:44:30 · 9949 阅读 · 6 评论 -
Android进程的so注入--Poison(稳定注入版)
Android进程的so注入已经是老技术了,网上能用的Android注入的工程也有很多,虽然分享代码的作者在测试的时候能注入成功,但是其他的同学使用这些代码的时候总是出现这样或者那样的问题。在Android逆向学习的这段时间里,我也陆续测试了几个作者给出的Android的注入的代码,但是总是效果不明显,今天就学习一下大牛boyliang分享的Android的so注入的代码框架Poison,作者bo原创 2016-12-26 14:53:22 · 21086 阅读 · 47 评论 -
Android so注入( inject)和Hook(挂钩)的实现思路讨论
前面的博客中分析一些Android的so注入和Hook目标函数的代码,它们的实现思路基本是一致的只是在一些细节实现的地方稍有不同。下面的文章中,将前面学习的别人的Android的so注入和目标函数的Hook的实现方法,进行整理一下,对Android的so注入和目标函数的Hook的代码实现的方法进行思考和分析。原创 2017-01-07 22:59:56 · 10825 阅读 · 0 评论 -
在Android so文件的.init、.init_array上和JNI_OnLoad处下断点
移动端Android安全的发展,催生了各种Android加固的诞生,基于ELF文件的特性,很多的加固厂商在进行Android逆向的对抗的时,都会在Android的so文件中进行动态的对抗,对抗的点一般在so文件的.init段和JNI_OnLoad处。因此,我们在逆向分析各种厂商的加固so时,需要在so文件的.init段和JNI_OnLoad处下断点进行分析,过掉这些加固的so对抗。一、原创 2017-01-08 21:58:57 · 7428 阅读 · 10 评论 -
Building and booting Nexus 5 kernel
Date 06/05/2014 Tags english / master's thesis / linuxMy description of building process will be strongly based on this article which was a great help in whole process:http://pete.akeo.ie/2013转载 2017-02-05 22:24:33 · 1165 阅读 · 0 评论 -
安卓源码+内核修改编译(修改内核调试标志绕过反调试)
标 题: 【分享】安卓源码+内核修改编译(修改内核调试标志绕过反调试)作 者: koflfy时 间: 2016-10-26,18:05:19链 接: http://bbs.pediy.com/showthread.php?t=213481历经两天时间,终于完整的编译完安卓操作系统源码+内核,并修改了内核的几个调试标志以达到绕过一些反调试的目的。在此感谢同学辉哥以及群友f8的转载 2017-02-17 14:24:05 · 6652 阅读 · 0 评论 -
hook Android系统调用的乐趣和好处
翻译:myswsun0x00 前言Android的内核是逆向工程师的好伙伴。虽然常规的Android应用被限制和沙盒化,逆向工程师可以按自己希望自定义和改变操作系统和内核中行为。这给了你不可多得的优势,因为大部分完整性校验和防篡改功能都依赖内核的服务。部署这种可以滥用信任并自我欺骗的内核和环境,可以避免走很多歪路。Android应用有几种方式和系统环境交互。标准转载 2017-02-02 21:58:39 · 3455 阅读 · 0 评论 -
Xposed框架Hook Android应用的所有类方法打印Log日志
本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80954759在进行Android程序的逆向分析的时候,经常需要Android程序的静态分析和动态调试的结合,尤其是对一些加固后的Android类方法被调用的确认,需要Hook java类方法打印java类方法的调用堆栈。有幸在网上看到了这篇文章《XPosed暴力列举Pac...原创 2018-07-07 21:27:38 · 20421 阅读 · 12 评论