这是一套聚焦二进制逆向工程(Reverse Engineering)的实战课程,核心解决的是“如何从编译后的机器码中还原逻辑、破解保护机制”这一硬核问题。它并非泛泛而谈的安全理论,而是直接针对 CTF 竞赛及日常软件分析场景,教你使用 IDA Pro 和调试器对 x86 架构的二进制文件进行静态与动态分析。对于需要深入理解软件内部机制、进行漏洞挖掘或应对恶意代码分析工作的技术人员,这套课程提供了从底层原理到工具操作的完整链路。

适合人群与前置基础

这门课不适合零基础小白,它要求你具备扎实的 C 语言编程能力,熟悉指针、内存管理等核心概念,并对计算机组成原理中的 CPU 寄存器、堆栈结构有基本认知。如果你能独立写出中等复杂度的 C 程序,并了解基本的汇编指令,就可以开始学习。课程开头包含 Python 快速入门和 C 语言复习,但这只是辅助工具,核心门槛在于你对二进制世界的理解深度。若你此前仅接触过 Web 安全或脚本语言,建议先补足 C 语言和 x86 架构基础,否则后续内容会显得晦涩难懂。

学习路径与实战落地

建议按照“环境搭建 -> 架构理解 -> 工具操作 -> 算法识别 -> 对抗保护”的顺序推进。首先重点攻克 x86 架构基础章节,这是逆向的地基,不要跳过。随后熟练掌握 IDA Pro 的静态分析技巧和 Linux 远程调试环境,这是日常工作的核心技能。在算法识别部分,课程涵盖了 Hex、Base 家族、RC4、MD5、TEA 以及 RSA 等常见加密算法的逆向特征,这部分内容极具实用价值,能帮你快速定位关键逻辑。最后,针对 UPX 加壳、花指令混淆、反调试等对抗技术进行拆解,这是进阶高手与入门者的分水岭。学完这套资料,你应当能够独立分析一个中等复杂度的 C 语言编译程序,识别其加密算法并绕过简单的反调试保护,最终在 CTF 逆向题或实际软件分析中独立完成从脱壳到逻辑还原的全过程。练习时,务必跟随视频中的赛题动手操作,仅看视频而不敲命令无法形成肌肉记忆,建议配合虚拟机环境反复调试,直到能流畅地在 IDA 与调试器之间切换分析。

课程目录

课程目录86 集
  • 01开班第一课
  • 001.开班第一课.mp4 112.90M
  • 002.快速入门-Python.mp4 189.57M
  • 02 C语言.mp4
  • 003.开发环境搭建.mp4 127.02M
  • 004.基本数据类型.mp4 154.83M
  • 005.常用语法和编程练习.mp4 271.32M
  • 03 x86架构.mp4
  • 006.x86架构基础知识-1.mp4 135.74M
  • 007.x86架构基础知识-2.mp4 149.38M
  • 008.x86架构基础知识-3.mp4 136.43M
  • 009.x86架构基础知识-4.mp4 151.34M
  • 04 IDA使用.mp4
  • 010.静态分析技巧及操作.mp4 169.14M
  • 011.Linux虚拟机安装和Linux远程调试.mp4 198.55M
  • 05 C语言逆向-小试牛刀.mp4
  • 012.入门赛题带做.mp4 176.18M
  • 013.提升IDA操作熟练度.mp4 184.04M
  • 06 C语言逆向-常见算法识别.mp4
  • 014.hex编码.mp4 131.10M
  • 015.base家族编码.mp4 134.96M
  • 016.RC4加密算法.mp4 156.99M
  • 017.MD5摘要算法.mp4 153.46M
  • 018.TEA系列加密算法-1.mp4 176.98M
  • 019.TEA系列加密算法-2.mp4 120.13M
  • 020.分组加密算法-1.mp4 152.76M
  • 021.分组加密算法-2.mp4 187.58M
  • 022.RSA与大数运算-1.mp4 148.22M
  • 023.RSA与大数运算-2.mp4 155.78M
  • 07 C语言逆向-对抗保护混淆.mp4
  • 024.x64dbg工具使用.mp4 187.70M
  • 025.upx压缩壳及其变种.mp4 214.41M
  • 026.花指令.mp4 162.39M
  • 027.反调试.mp4 151.34M
  • 028.自修改代码-1.mp4 179.48M
  • 029.自修改代码-2.mp4 256.60M
  • 030.指令虚拟化-1.mp4 128.06M
  • 031.指令虚拟化-2.mp4 144.12M
  • 032.ollvm-1.mp4 137.52M
  • 033.ollvm-2.mp4 151.44M
  • 08 C语言逆向-杂项.mp4
  • 034.IDAPython常用函数介绍.mp4 174.28M
  • 035.elf文件运行流程.mp4 237.80M
  • 036.MFC图形化界面-1.mp4 129.40M
  • 037.MFC图形化界面-2.mp4 223.43M
  • 038.迷宫及数独问题-1.mp4 151.17M
  • 039.迷宫及数独问题-2.mp4 179.04M
  • 09 C语言逆向-杂项.mp4
  • 040.符号执行框架angr-1.mp4 144.43M
  • 041.符号执行框架angr-2.mp4 261.14M
  • 042.capstone、keystone与unicorn-1.mp4 152.93M
  • 043.capstone、keystone与unicorn-2.mp4 213.60M
  • 044.等式问题与z3的使用.mp4 378.41M
  • 10 其他语言逆向-C++.mp4
  • 045.扩充语法及面向对象.mp4 120.94M
  • 046.汇编层面分析实例代码.mp4 241.07M
  • 11 其他语言逆向-Python.mp4
  • 047.字节码介绍.mp4 155.62M
  • 048.pyc文件.mp4 189.46M
  • 049.pyinstaller打包拆解.mp4 401.89M
  • 12 其他语言逆向-C#.mp4
  • 050.普通C#程序.mp4 186.81M
  • 051.Unity游戏-1.mp4 204.28M
  • 052.Unity游戏-2.mp4 332.86M
  • 13 其他语言逆向-Golang.mp4
  • 053.Go语言快速入门.mp4 164.17M
  • 054.逆向示例程序.mp4 181.96M
  • 055.例题讲解与练习.mp4 464.40M
  • 14 Android逆向.mp4
  • 056.基础知识-1.mp4 150.58M
  • 057.基础知识-2.mp4 193.84M
  • 058.Java层逆向-常用smali指令.mp4 147.66M
  • 059.Java层逆向-smali修改及回编译.mp4 127.32M
  • 060.Java层逆向-静态分析技巧及操作.mp4 382.20M
  • 061.Java层逆向-frida hook(1).mp4 168.38M
  • 062.Java层逆向-frida hook(2).mp4 184.19M
  • 15 Android逆向.mp4
  • 063.Native层逆向-动态调试.mp4 148.45M
  • 064.Native层逆向-常见代码隐藏技巧.mp4 209.75M
  • 065.Native层逆向-frida hook(1).mp4 120.63M
  • 066.Native层逆向-frida hook(2).mp4 156.47M
  • 067.杂项-对抗反逆向手段(1).mp4 180.09M
  • 068.杂项-对抗反逆向手段(2).mp4 197.84M
  • 069.杂项-加壳原理与脱壳.mp4 217.27M
  • 070.杂项-unidbg入门.mp4 216.29M
  • 071.杂项-unidbg进阶使用(1).mp4 182.76M
  • 072.杂项-unidbg进阶使用(2).mp4 204.25M
  • 蚁景-CTF-Reverse实战技能特训班/