0.1 课程目录(更新:新增第四季和第五季)




课程的内容

课程涉及到Linux平台上的eBPF软件开发技术,安卓平台上的eBPF开发与安全对抗。


课程的目标

课程学习完成后,您将具备以下能力:


  • Linux平台eBPF工具的技术原理与开发能力

  • Linux平台上eBPF恶意软件分析能力

  • 安卓内核的修改与定制能力

  • 安卓平台抓包软件开发

  • 自己动手完成eBPF的安全分析环境构建

  • 使用eBPF完成安卓App hook

  • 使用eBPF完成沙箱环境改机安全对抗


课程的目录

课程由简到难,循序渐进,正式课程共三季内容,60多节课程。分为基础开发篇,安卓开发篇,安卓安全对抗篇。除此,还有一个特别季课程,讲解更多软件开发的技巧,属于赠送部分,具体参见课程大纲思维导图。


授课方式,更新进度,多久可以学完?

课程采用录播授课,每位学员单独的本地学习环境。为保证课程质量,更新频率初步定为一周一至两节,承诺所有课程200天内全部完成。更新完课程后,学员可以继续学习,直到学会为止,


我需要准备什么学习环境与设备吗?

学习环境只需要你一台电脑,可以安装Ubuntu22.04系统,Windows系统虚拟机也可以。安卓eBPF的学习环境,会在课程中提供,学员打开学习即可。如果你手上有安卓内核4.9以后的设备(Pixel 2)在手,并且可以自己访问到设备的内核代码,那也可以作为学习辅助设备。


学习需要什么必备的编程基础与知识储备?

学习课程中的内容,需要使用到C、Python、Golang等编程语言,课程基本不涉及C++语言。通常,这些程序的内核都会有C语言的版本示例代码。学员需要对C语言熟悉。课程涉及到的Python与Golang语言的内容,不熟悉可以使用C语言版本的程序代替,但掌握这两门语言可以让您学习更加轻松。除此外,学员还需要对Linux/安卓的软件基本开发流程熟悉,对Linux内核有基本的认识。


《eBPF安全开发与攻防对抗系列课程大纲