课程简介
课程定位与核心痛点 Android 逆向工程是连接客户端安全分析与服务端漏洞挖掘的关键技术栈,但多数学习者在面对复杂 App 时往往止步于“抓包修改”或简单的 So 文件解密。这门课程聚焦于 Android 逆向的深度实战,旨在解决从“会用工具”到“理解机制”的断层问题。课程内容并非泛泛而谈的理论堆砌,而是基于真实 Android 开发体系中的薄弱环节进行…
课程定位与核心痛点
Android 逆向工程是连接客户端安全分析与服务端漏洞挖掘的关键技术栈,但多数学习者在面对复杂 App 时往往止步于“抓包修改”或简单的 So 文件解密。这门课程聚焦于 Android 逆向的深度实战,旨在解决从“会用工具”到“理解机制”的断层问题。课程内容并非泛泛而谈的理论堆砌,而是基于真实 Android 开发体系中的薄弱环节进行拆解。逆向的核心难点在于对系统底层交互逻辑的掌握,尤其是 Binder 通信机制、NDK 本地代码混淆以及运行时反射Hook技术。本课程通过逆向视角反向验证正向开发原理,帮助学习者建立完整的攻防知识闭环,从而在面对加壳、反调试、代码混淆等反逆向手段时,具备独立分析并绕过保护的能力。
知识结构与前置要求
本资料包含两部分核心模块:Android 开发基础补充与 NDK 专项突破。适合具有 Java/Kotlin 基础,但缺乏系统底层视图或 Native 层开发经验的开发者。建议学习路径如下:
- 组件与生命周期(第4课):虽为基础内容,但逆向中常利用组件启动时序差异进行 Hook 植入,需重点理解状态机流转。
- 存储与权限(第5课):掌握 SDCard 读写及沙箱隔离机制,是后续分析数据持久化与密钥存储的基础。
- Handler 消息机制(第6课):理解主线程 Looper 与 MessageQueue 原理,便于在动态调式中分析线程阻塞与异步回调路径。
- Binder 通信机制(第8-9课):这是 Android 逆向的核心难点。通过源码级的 Binder 使用演示,揭示进程间通信(IPC)的底层实现,为后续分析 SystemServer、ActivityManagerService 等系统级服务提供理论支撑。
- NDK 编程与反射(第12-13课):针对 Native 层逆向的关键技能。第12课夯实 C/C++ 与 Java 的交互边界;第13课则演示如何通过 JNI 反射修改 Java 变量,这是实现无源码环境下药水编写和动态 Patch 的核心技术。
实践方法与产出目标
本资料包中的 .rar 和 .zip 文件均为配套的可运行工程源码或练习代码,而非单纯的视频附件。建议学习者采取“对照编码”的学习模式:先阅读课程视频中的逆向思路分析,再自行编译运行对应章节的代码,复现出正常的业务逻辑,最后尝试通过 Frida 或 Xposed 框架对关键节点进行插桩和 Hook。
学完本系列后,你将能够独立胜任以下工作:分析 Android App 的安全风险点,编写针对性的内存修改脚本,解读 Native 层的加解密逻辑,以及构建基于 Binder 机制的系统级监控工具。这种“以逆向促开发,以开发懂逆向”的实战闭环,是提升工程师架构安全视野的高性价比路径。
课程介绍
1.png (325.82 KB, 下载次数: 0) 2024-7-7 16:18 上传 2.png (11.48 KB, 下载次数: 0) 2024-7-7 16:18 上传 ├──第二章 Android开发基础 | ├──资料 | | ├──12课-NDK编程.rar 122.30kb | | ├──13课-NDK中反射修改java变量.rar 45.75kb | | ├──4课-组件的生命周期.rar 47.42kb | | ├──5课-读写sdcard.rar 37.77kb | | ├──6课-认识Handler.rar 39.68kb | | ├──8课-认识Binder.rar 42.64kb | | ├──9课-使用Binder.rar 78.21kb | | ├──code03.zip 7.11kb | | ├──code10.rar 0.33kb | | ├──code
课程目录
课程目录5 集
- 1.png (325.82 KB, 下载次数: 0) 2024-7-7 16:18 上传 2.png (11.48 KB, 下载次数: 0) 2024-7-7 16:18 上传 ├──第二章 Android开发基础 | ├──资料 | | ├──12课-NDK编程.rar 122.30kb | | ├──13课-NDK中反射修改java变量.rar 45.75kb | | ├──4课-组件的生命周期.rar 47.42kb | | ├──5课-读写sdcard.rar 37.77kb | | ├──6课-认识Handler.rar 39.68kb | | ├──8课-认识Binder.rar 42.64kb | | ├──9课-使用Binder.rar 78.21kb | | ├──code03.zip 7.11kb | | ├──code10.rar 0.33kb | | ├──code11.rar 2.95kb | | ├──code14.rar 2.64kb | | ├──
- 第02章-Android开发基础-第01课-配置AndroidStudio环境.pptx 43.57kb | | ├──
- 第02章-Android开发基础-第02课-创建一个安卓程序.pptx 50.96kb | | ├──
- 第02章-Android开发基础-第03课-认识安卓四大组件.pptx 76.44kb | | └──
- 第02章-Android开发基础-第07课-认识Handler02.pptx 48.88kb | ├──8月考试-多种方式练习SDCard目录遍历.mp4 8.36M | ├──8月考试讲解-多种方式练习SDCard目录遍历.mp4 137.06M | ├──课时10:生成Android能动态加载的Jar包.mp4 61.69M | ├──课时11:动态加载SDCard可执行文件.mp4 51.91M | ├──课时12:NDK编程.mp4 134.85M | ├──课时13:NDK中反射修改java变量.mp4 170.71M | ├──课时14:NDK中反射获取包名.mp4 140.69M | ├──课时1:配置AndroidStudio环境.mp4 88.83M | ├──课时2:创建一个安卓程序.mp4 91.26M | ├──课时3:认识安卓四大组件.mp4 527.72M | ├──课时4:组件的生命周期.mp4 73.34M | ├──课时5:读写sdcard.mp4 166.50M | ├──课时6:认识Handler.mp4 151.78M | ├──课时7:认识Handler02.mp4 69.93M | ├──课时8:认识Binder.mp4 189.25M | └──课时9:使用Binder.mp4 176.88M ├──第六章 认识安卓常见安全风险 | ├──课时1:应用重打包风险讲解.mp4 41.66M | ├──课时2-敏感数据明文保存风险讲解.rar 43.22kb | ├──课时2:敏感数据明文保存风险讲解.mp4 51.36M | ├──课时3test62.rar 19.73M | ├──课时3:Activity组件越权风险讲解.mp4 64.02M | ├──课时4:WebView跨域访问风险讲解.mp4 99.79M | ├──课时4课件.rar 38.25M | ├──课时5code.rar 2.90kb | ├──课时5:ContentProvider目录遍历漏洞讲解.mp4 72.10M | ├──课时6code.rar 1.42kb | ├──课时6:组件拒绝服务漏洞讲解.mp4 35.99M | ├──课时7code.rar 43.22kb | ├──课时7:BroadcastReceiver导出漏洞讲解.mp4 74.34M | ├──课时8:安全审计工具Drozer安装与使用.mp4 258.29M | ├──课时9docker安装.txt 1.66kb | └──课时9:安全审计工具Mobsf安装与使用.mp4 149.10M ├──第七章 配置逆向工作环境 | ├──课件.rar 48.89M | ├──课时1:配置真机root环境.mp4 70.83M | └──课时1课件.txt 0.13kb ├──第三章 了解安卓Apk,Dex,so文件格式 | ├──资料 | | ├──课时1Android逆向助手_v2.2.rar 13.19M | | ├──课时2code.rar 1.98kb | | ├──课时3code.rar 24.60M | | ├──课时4code.rar 582.85kb | | └──课时5code.rar 23.62kb | ├──课时1:apk基本结构.mp4 167.27M | ├──课时2:Dex基本结构.mp4 152.77M | ├──课时3:代码解析Dex文件.mp4 568.38M | ├──课时4:ELF基本结构.mp4 96.31M | ├──课时5:解析ELF头.mp4 58.04M | ├──课时6:解析程序头.mp4 49.62M | ├──课时7:解析节表信息.mp4 206.70M | └──课时8:解析符号表信息.mp4 132.19M ├──第四章 了解Smali,ARM | ├──资料 | | ├──11月份作业.rar 4.78M | | ├──11月份作业讲解.rar 4.78M | | ├──code10.rar 28.91M | | ├──code11.rar 28.91M | | ├──code12.rar 28.95M | | ├──code2.rar 18.81M | | ├──code3.rar 2.50kb | | ├──code4.rar 2.50kb | | ├──code5.rar 1.09kb | | ├──code6.rar 1.09kb | | ├──code7.rar 71.52M | | ├──code8.rar 28.91M | | └──code9.rar 28.91M | ├──11月作业.mp4 12.29M | ├──11月作业讲解.mp4 111.60M | ├──课时10:Arm汇编-跳转和寻址.mp4 74.36M | ├──课时11:Arm汇编-内联汇编.mp4 84.79M | ├──课时12:修改应用ARM代码实现破解功能.mp4 161.35M | ├──课时1:了解安卓虚拟机.mp4 26.62M | ├──课时2:Smali汇编-头文件定义与接口实现.mp4 45.77M | ├──课时3:Smali汇编-变量的定义.mp4 37.75M | ├──课时4:Smali汇编-方法的定义.mp4 38.84M | ├──课时5:Smali汇编-方法的调用.mp4 85.32M | ├──课时6:Smali汇编-对象的创建.mp4 73.53M | ├──课时7:Smali汇编-修改应用Smali代码实现破解功能.mp4 96.79M | ├──课时8:Arm汇编-常见ARM汇编指令.mp4 123.13M | └──课时9:Arm汇编-常见ARM汇编指令2.mp4 47.80M ├──第五章 认识安卓系统源码AOSP | ├──看雪1W-刷自己编译好的安卓系统镜像.zip 669.56M | ├──课时1:安卓系统源码基础知识讲解.mp4 74.06M | ├──课时2:安卓系统源码编译环境配置.mp4 118.20M | ├──课时2笔记.txt 1.92kb | ├──课时3:安卓系统源码编译镜像刷机.mp4 48.73M | └──课时4:安卓系统源码修改注入so.mp4 164.69M └──第一章 Java语言基础知识入门 | ├──24课-自定义异常.rar 36.54kb | ├──25课-输入数据流与输出数据流.rar 41.38kb | ├──26课-文件数据流.rar 46.35kb | ├──27课-字符流和字节流.rar 43.64kb | ├──28课-文件的处理.rar 102.43kb | ├──30课-继承Thread类.rar 39.33kb | ├──31课-实现Runnable接口.rar 41.76kb | ├──32课-线程的启动、调度与挂起.rar 39.79kb | ├──33课-线程间的通信.rar 40.34kb | ├──35课-使用InetAddress.rar 37.76kb | ├──36课-统一资源定位器概念与URL的创建.rar 38.92kb | ├──37课-异步请求.rar 2.24M | ├──38课-socket通信基本步骤.rar 39.83kb | ├──5月考试-单线程坦克大战.mp4 111.68M | ├──5月考试讲解-单线程坦克大战编程.mp4 178.82M | ├──5月作业_单线程坦克大战.docx 13.74kb | ├──6课.rar 41.84kb | ├──code12.zip 1.40kb | ├──code13.zip 0.82kb | ├──code14.rar 0.60kb | ├──code15.rar 0.73kb | ├──code16.zip 1.43kb | ├──code17.rar 0.80kb | ├──code18.rar 0.36kb | ├──code19.rar 0.77kb | ├──code20.rar 1.76kb | ├──K007-Java语言基础-第07课-基本数据类型.rar 41.80kb | ├──K009-Java语言基础-第09课-类型转换.pptx 52.57kb | ├──K010-Java语言基础-第10课-表达式语句、块、分支语句.pptx 51.12kb | ├──K011-Java语言基础-第11课-循环语句与break、continue.pptx 54.45kb | ├──K012-Java语言基础-第12课-类的定义格式.pptx 71.12kb | ├──K013-Java语言基础-第13课-对象的创建和初始化.pptx 46.86kb | ├──K014-Java语言基础-第14课-构造方法及其重载.pptx 53.01kb | ├──K015-Java语言基础-第15课-类继承的定义.pptx 62.76kb | ├──K016-Java语言基础-第16课-多态性与转换对象.pptx 48.08kb | ├──K017-Java语言基础-第17课-理解关键字.pptx 57.09kb | ├──K018-Java语言基础-第18课-方法重写规则与包装类型.pptx 52.32kb | ├──K019-Java语言基础-第19课-接口的定义和实现.pptx 68.77kb | ├──K020-Java语言基础-第20课-内部类与匿名类.pptx 56.55kb | ├──K021-Java语言基础-第21课-数组初始化与使用.rar 46.58kb | ├──K022-Java语言基础-第22课-容器和字符串.rar 39.91kb | ├──K023-Java语言基础-第23课-公共异常.rar 99.82kb | ├──K029-Java语言基础-第29课-线程的概念和结构.pptx 56.33kb | ├──K034-Java语言基础-第34课-网络相关概念.pptx 59.29kb | ├──K04-java语言基础-第4课-面向对象的重要性.pptx 43.37kb | ├──K05-java语言基础-第5课-空白注释及语句关键字标识符.pptx 168.55kb | ├──src21.zip 2.23kb | ├──课时10code.zip 0.57kb | ├──课时10:表达式语句、块、分支语句.mp4 32.80M | ├──课时11: 循环语句与break、continue.mp4 64.38M | ├──课时12:类的定义格式.mp4 69.95M | ├──课时13:对象的创建和初始化.mp4 29.47M | ├──课时14:构造方法及其重载.mp4 43.21M | ├──课时15:类继承的定义.mp4 62.61M | ├──课时16:多态性与转换对象.mp4 40.19M | ├──课时17:理解关键字.mp4 50.63M | ├──课时18:方法重写规则与包装类型.mp4 42.19M | ├──课时19:接口的定义和实现.mp4 24.67M | ├──课时1K02-Java语言基础-第一课-配置IDEA环境.pptx 59.68kb | ├──课时1:配置IDEA环境.mp4 96.86M | ├──课时20:内部类与匿名类.mp4 82.69M | ├──课时21:数组初始化与使用.mp4 75.36M | ├──课时22:容器和字符串.mp4 105.15M | ├──课时23:公共异常.mp4 44.66M | ├──课时24:自定义异常.mp4 36.64M | ├──课时25:输入数据流与输出数据流.mp4 47.52M | ├──课时26:文件数据流.mp4 82.11M | ├──课时27:字符流和字节流.mp4 116.01M | ├──课时28:文件的处理.mp4 74.76M | ├──课时29:线程的概念和结构.mp4 40.12M | ├──课时2K03-Java语言基础-第二课-面向对象程序设计概念.pptx 46.38kb | ├──课时2:什么是面向对象程序设计.mp4 18.10M | ├──课时30:继承Thread类.mp4 61.42M | ├──课时31:实现Runnable接口.mp4 25.57M | ├──课时32:线程的启动、调度与挂起.mp4 52.64M | ├──课时33:线程间的通信.mp4 79.80M | ├──课时34:网络相关概念.mp4 15.39M | ├──课时35:使用InetAddress.mp4 82.38M | ├──课时36:统一资源定位器概念与URL的创建.mp4 119.60M | ├──课时37:异步请求.mp4 126.59M | ├──课时38:socket通信基本步骤.mp4 132.10M | ├──课时3:什么是类和对象.mp4 121.22M | ├──课时3课件.rar 36.67kb | ├──课时4:面向对象的重要性.mp4 44.91M | ├──课时5:空白注释及语句关键字标识符.mp4 55.31M | ├──课时6:变量与常量.mp4 48.79M | ├──课时7: 基本数据类型.mp4 80.74M | ├──课时8:运算符.mp4 72.45M | ├──课时8资料.rar 131.02kb | ├──课时9code.zip 0.57kb | ├──课时9:类型转换.mp4 41.27M | └──作业代码.txt 19.46kb