Corax的博客

“我想做我能做的事 ”

【Android改机】实现Java调用Jni调用Smali执行Trace

Android改机

省流资源分享 https://github.com/C0raxx/AndroidCompile/tree/main/Android10/Android10SmaliTrace 1 方法的解释执行流程 之前抽取壳看过从java中method的inoke反射调用中的函数调用流程。 Artmethod下的invoke是方法调用的关键,甚至jni最后也会调用到到这个invoke invo...

【Android改机】Fart移植到Android10(抽取脱壳+Frida增强)

Android改机

Fart移植到Android10(抽取脱壳+Frida增强) 这一篇主要研究学习的是,Fart脱壳机的源代码,它如何起到抽取脱壳作用,以及如何将之移植到Android10Aosp中,并且在成功之后,如何用Frida主动调用Fart中的Api,利用其对指定的类进行脱壳,还有脱下来的东西如何进行dex重构。文章开头处分享了我成功编译并成功刷机的一个刷机包,pixel3。 至于抽取壳,双亲委派...

【Android改机】Fart移植到Android10(整体脱壳)

Android改机

Fart移植到Android10(整体脱壳) 本篇主要是Fart整体脱壳函数的移植,其实在FART里,整体和抽取都是一样拖得,但是我学习的这个课程也就是小肩膀师傅的课程把这玩意分开来分析,我也这样做吧,感觉可以细致一点。 关于壳的基础知识,例如壳的发展,双亲委派机制,一代二代壳的原理主要在前面几篇博客里面已经做了一些分享和学习,这里我们就只做一些关于Fart移植相关内容的学习,涉及到Fa...

【Android改机】Frida持久化

Android改机

Frida持久化 这一块的内容最好先源码导入到AS里面去,这个要生成一个idegen.jar文件再导入,可以百度一下。 本篇文章主要是记录一下,我在将Frida-gadget持久化方案通过改机进行实现的一个过程和步骤。 不管是我们之前用的server,还是这个gadget,其本意都是完成注入,注入一个能实现所需要hook功能的东西,注入到目标进程里面。 省流资源分享 编译成果 ht...

【Android改机】Android源码编译并刷机记录

Android改机

Android源码编译并刷机记录 仅以此文用来记录安卓源码编译成功时的一些经验和心得,并将成功编译的 android-10.0.0_r17,pixel3的userdebug版本置于GitHub。 后续会有关于源码魔改角度出发的Frida持久化,整体壳和抽取壳脱壳相关的内容,敬请期待。 资源省流 编译成果:https://github.com/C0raxx/AndroidCompile...

【Android源码】应用进程启动过程分析

源码研读

环境 源码版本 android-7.0.0_r1 链接:https://pan.baidu.com/s/1yla9fqd4EbxSBSemrYVjsA?pwd=ukvt 提取码:ukvt --来自百度网盘超级会员V3的分享 前言 其实我觉得学习应用启动流程最应该好好读是这一个部分,也就是前言这个部分。 整个启动流程还是非常庞大的,虽然下图看起来并不是非常复杂,但是其实隐去了很多...

【Android源码】系统启动过程分析

源码研读

OK来到第二部分,打算给到系统启动流程,还是很重要的,网上也有不少资料可以参考,可以结合起来再加上源码一起学习。 先来一个总览 1.启动电源 按下电源之后,引导芯片代码从预定义的地方开始执行(硬件写死的一个位置)开始执行,加载Bootloader到RAM,开始执行。 2.Bootloader程序 在Android操作系统开始前的一个程序,主要作用把系统OS给拉起 这一块经...

【Android源码】应用安装过程分析

源码研读

首先我打算把Android应用安装流程作为第一个专题,也没啥别的原因,因为我看书这部分之前看的最潦草。 本篇参考资料 《Android系统源代码情景分析》 《Android进阶解密》 https://david1840.github.io/2021/03/24/Android%E5%8C%85%E7%AE%A1%E7%90%86%E6%9C%BA%E5%88%B6-%E4%B8%89-PM...

【Android源码】引言

源码研读

开一个新系列,之前第一次读《Android进阶解密》,《深入理解Android Java虚拟机ART》,《Andorid系统源代码情景分析》的时候,因为知识体系庞大,再加上罗老师的情景分析有些年头了,很多东西都是草草读过,虚拟机创建启动、dex2oat、内存分配释放等等都仅仅有了大致认识。 对于想从事这方面安全技术的我来说还是不太够,故接下来这个系列会花一些时间,尽我之力博采众长,尽量深入...

【Android学习】近期壳相关回顾

工具学习

最近在补app壳的东西,东西很多,脑子很晕,故写个博客来整理整理 本篇仅作梳理和简单回顾,更多分析内容在前面几篇博客 大致分为: 前置知识 壳通识 一代壳 dexclassloader 我理解的落地加载 一代壳 inmemorydexclassloader 我理解的不落地加载 二代壳 dalvik下抽取壳的实现 二代壳 art下抽取壳的实现 前置知识 JVM的三种类加载器 ...