《全栈安全 》逆向提升篇

初级 · 41小时57分

6人学过

PE文件 全栈安全
¥398.00购买
  • 课程简介
  • 课程目录
  • 作者信息
  • 教程资料

深入理解PE文件在磁盘与内存中的布局差异(如VA、RVA、FOA转换规则)。


解析DOS头、NT头、节表、导入表、导出表、重定位表等关键数据结构。


掌握PE文件加载机制、内存对齐规则及动态修复原理。


开发自定义的PE解析工具(支持头结构解析、节区分析、导出/导入表遍历)。


实现十六进制数据对比工具、RVA-FOA转换器等实用程序。


理解动态链接库(DLL)的导出/导入逻辑及函数调用过程。


掌握IAT(导入地址表)、INT(导入名称表)的关联与修复技术。


熟悉重定位表的作用及动态内存地址修复方法。


基础介绍准备

  • 01.0 前言-逆向工程提升篇前置知识
  • 01.1 前言-逆向工程提升篇学习路线_1
  • 01.2 前言-逆向工程提升篇学习路线_2
  • 01.3 前言-PE文件结构与工具解析使用
  • 01.4 前言-十六进制数据分析工具开发
  • 01.5 格式-PE文件结构文件与内存状态
  • 01.6 格式-PE文件二进制对比工具_1
  • 01.7 格式-PE文件二进制对比工具_2
  • 01.8 格式-PE文件二进制对比工具_3
  • 01.9 格式-PE文件头和节表结构
  • 02.0 格式-PE文件加载修复过程

DOS头-NT头-FILE头

  • 02.1 DOS-DOS_HEADER成员解析内存布局及DOS_STUB
  • 02.2 DOS-PE程序启动校验测试及非核心成员字段覆盖探测
  • 02.3 NT-IMAGE_NT_HEADER定位与成员组成
  • 02.4 NT-IMAGE_FILE_HEADER成员解析与字段处理
  • 02.5 项目-PE解析工具控制台初始化
  • 02.6 项目-用户指令格式化处理
  • 02.7 项目-数据交互回调执行框架
  • 02.8 项目-文件二进制数据写入
  • 02.9 项目-DOS & NT 头代码定位与计算校验
  • 03.0 项目-节区定位以及健壮性测试
  • 03.1 项目-DOS头成员数据信息展示
  • 03.2 NT-NT FILE头成员字段属性探测
  • 03.3 NT-MAGIC LINKERVER SIZE FOR DATA CODE
  • 03.4 NT-IMAGEBASE RVA VA FOA OEP
  • 03.5 NT-ALIGNMENT
  • 03.6 NT-SIZEOFIMAGE & HEADER
  • 03.7 NT-CheckSum计算方式代码实现与API校验
  • 03.8 NT-SubSystem FileAttribute Stack Heap
  • 03.9 NT-DataDirectory
  • 04.0 项目-FILE头解析与数据拓展
  • 04.1 项目-数据位集合判断
  • 04.2 项目-OPTIONAL头定位与解析
  • 04.3 项目-OPTIONAL数据拓展与值判断
  • 04.4 项目-PE头盲写图解内存布局
  • 04.5 SECTION-数据定位与成员解析
  • 04.6 SECTION-二进制数据分析与节区对齐的影响
  • 04.7 SECTION-全局数据文件状态二进制定位与修改
  • 04.8 SECTION-RVA TO FOA 内存未对齐情况下转换规则与流程
  • 04.9 SECTION-RVA TO FOA 代码转换实现
  • 05.0 SECTION-RVA TO FOA 用户交互策略
  • 05.1 项目-进程转换与核心成员关联
  • 05.2 项目-SECTION节区属性遍历与属性获取
  • 05.3 项目-SECTION节区内存保护探测
  • 05.4 图解-PE文件二进制存储布局与空间对齐
  • 05.5 图解-PE文件状态缓存转换对比拉伸过程

导入表-导出表-重定位表

  • 05.6 EXPORT-自身函数库函数三方函数反汇编调用区别
  • 05.7 EXPORT-动态链接库的开发与导出方式
  • 05.8 EXPORT-模块加载本质及导出函数使用
  • 05.9 EXPORT-导出表数据文件二进制定位
  • 06.0 EXPORT-导出表数据字段初探
  • 06.1 EXPORT-导出函数地址表特征与遍历
  • 06.2 EXPORT-导出函数名称表二层转换以及RVA测试
  • 06.3 EXPORT-函数地址名称序号表的数据联动
  • 06.4 EXPORT-GetProcAddr实现原理与执行规则
  • 06.5 项目-导出表结构代码定位与解析
  • 06.6 项目-地址表函数名称序号表顺序关联输出
  • 06.7 项目-函数名称序号回溯函数执行地址
  • 06.8 项目-导出数据用户交互框架完善
  • 06.9 EXPORT-导出表数据移动替换思路
  • 07.0 EXPORT-导出表安全攻防常见实例
  • 07.1 IMPORT-API执行地址表文件转储定位拆解
  • 07.2 IMPORT-导入表文件定位与数据特征探测
  • 07.3 IMPORT-导入名称地址表特性与使用场景
  • 07.4 IMPORT-IAT INT表文件数据关联以及序号名称差异
  • 07.5 IMPORT-IAT INT内存状态下的数据关联
  • 07.6 IMPORT-导入地址表内存修复过程及导出表联系
  • 07.7 IMPORT-导入表数据代码定位遍历解析
  • 07.8 RELOCATION-PE文件加载修复导入地址过程
  • 07.9 RELOCATION-全局数据赋值反汇编指令特性
  • 08.0 RELOCATION-全局数据操作二进制数据动态修复
  • 08.1 RELOCATION-重定位数据文件内存差值计算公式
  • 08.2 RELOCATION-重定位表文件数据特征描述
  • 08.3 RELOCATION-重定位块的步长以及待修复元素个数
  • 08.4 RELOCATION-待修复数据文件与内存对比及修复原理
  • 08.5 RELOCATION-模拟重定位项目内存修复过程及计算公式
  • 08.6 RELOCATION-代码定位遍历重定位块及项目数据内容
  • 08.7 项目-无模块实现思路及加载修复过程
  • 08.8 项目-文件缓存转换为内存缓存
  • 08.9 项目-内存映像写会文件状态并修正大小
  • 09.0 项目-内存状态转储写回文件数据
  • 09.1 项目-无模块用户交互与框架搭建
  • 09.2 项目-模块自加载流程构建梳理
  • 09.3 项目-导入表定位及INT丢失情况处理
  • 09.4 项目-导入地址表动态加载修复实现
  • 09.5 项目-待修复重定项数据定位及修正匹配
  • 09.6 项目-导出函数名称序号定位内存地址
  • 09.7 项目-无模块加载数据初始测试
  • 09.8 项目-无模块导出函数用户交互实现
  • 09.9 项目-无模块框架流程测试与函数隐藏调用
  • 10.0 项目-无模块自身内存加载动态链接库框架完结

模块隐藏

  • 10.1 模块隐藏-反射式注入动态链接库模块思路
  • 10.2 模块隐藏-系统核心DLL内存属性探测
  • 10.3 模块隐藏-私有映射映像内存申请与属性
  • 10.4 模块隐藏-线性地址与物理地址转换及值写回判定
  • 10.5 模块隐藏-共享内存本质及系统DLL页共享写拷贝
  • 10.6 模块隐藏-核心动态链接库共享与写拷贝保护基址
  • 10.7 模块隐藏-模块反射注入交互框架构建
  • 10.8 模块隐藏-注入目标进程遍历定位
  • 10.9 模块隐藏-PE结构与转储数据封装
  • 11.0 模块隐藏-simple映像转换
  • 11.1 模块隐藏-跨进程二进制数据交互操作
  • 11.2 模块隐藏-远程读写修正RelocationEntry
  • 11.3 模块隐藏-远程线程执行规则与地址限制
  • 11.4 模块隐藏-跨进程内存交互与线程执行体准备
  • 11.5 模块隐藏-远程SHELLCODE定位模块基址数据
  • 11.6 模块隐藏-导入表修正远程框架搭建
  • 11.7 模块隐藏-远程线程多参传递原理与数据定位
  • 11.8 模块隐藏-动态获取跨进程目标IMP数据
  • 11.9 模块隐藏-导入地址表数据实时获取并修正写入
  • 12.0 模块隐藏-DllMain函数执行与参数解析
  • 12.1 模块隐藏-远程执行入口点与案例完结

文件结构

  • 12.2 数据目录-DirDesc成员及对应学习路线
  • 12.3 RESOURCE-GUISdk编写及特征对比
  • 12.4 RESOURCE-资源文件的使用和二进制数据比对
  • 12.5 RESOURCE-资源数据存储格式与数据管理
  • 12.6 RESOURCE-资源结构层级内存布局与嵌套对应关系
  • 12.7 RESOURCE-资源数据项目文件定位流程与层级架构对应解析
  • 12.8 RESOURCE-资源数据目录管理图解内存布局
  • 12.9 RESOURCE-资源数据代码解析_1
  • 13.0 RESOURCE-资源数据代码解析_2
  • 13.1 RESOURCE-递归遍历资源目录ID项目内容
  • 13.2 RESOURCE-资源数据项目文件内存定位
  • 13.3 RESOURCE-ICO图标数据存储与结构组成
  • 13.4 图标数据-应用程序图标资源提取PE方式思路
  • 13.5 图标数据-图标数据与图标组关联及图标文件存储格式
  • 13.6 图标数据-项目工程数据管理框架搭建
  • 13.7 图标数据-图标组定位流程及函数流程
  • 13.8 图标数据-RT_GROUP_ICON图标组数据ID提取
  • 13.9 图标数据-图标组数据与图标属性对应联系
  • 14.0 图标数据-资源类型控件ID动态查找相关数据
  • 14.1 图标数据-图标组结构 & 图标数据与文件关联
  • 14.2 图标数据-图标文件转储数据结构规化
  • 14.3 图标数据-数据提取与格式输出
  • 14.4 图标数据-PE程序图标资源提取完结

异常处理(EXCEPTION)

  • 14.5 EXCEPTION-异常触发与不同架构下处理机制
  • 14.6 EXCEPTION-SEH STACK RUNTIME_FUNCTION
  • 14.7 EXCEPTION-SEH 调用实例与框架实现
  • 14.8 EXCEPTION-SEH 异常过滤表达式拓展及异常处理返回
  • 14.9 EXCEPTION-SEH 异常结构基于堆栈填充论证
  • 15.0 EXCEPTION-TEB PEB EXCEPTIONLIST
  • 15.1 EXCEPTION-KernelKiDispatchException
  • 15.2 EXCEPTION-SEH 异常链表定位与遍历节点数据
  • 15.3 EXCEPTION-SEH 汇编实现异常链表挂载并拦截回调
  • 15.4 EXCEPTION-SEH Node Handler ScopeTable TryLevel
  • 15.5 EXCEPTION-SEH X86 异常trylevel层级记录标志
  • 15.6 EXCEPTION-SEH X86 异常底层实现派遣原理机制
  • 15.7 EXCEPTION-SEH X64 异常数据目录项结构
  • 15.8 EXCEPTION-SEH X64 PE结构拓展变化内容
  • 15.9 EXCEPTION-SEH X64 异常结构RUNTIME_FUNCTION
  • 16.0 EXCEPTION-SEH X64 UNWIND_INFO数据内存布局及对应关联
  • 16.1 EXCEPTION-SEH X64 UNWIND_CODE内容展开与捕获地址定位
  • 16.2 EXCEPTION-SEH X64 异常数据表全过程解析及样式差异
  • 16.3 EXCEPTION-代码定位及数据RUNTIME_FUNCTION遍历解析
  • 16.4 EXCEPTION-UNWIND_INFO数据递进及UNWIND_CODE数据展开
  • 16.5 EXCEPTION-C_SPEC_HANDLER函数定位及SCOPE_TABLE异常回调数组数据
  • 16.6 SECURITY-安全属性证书及存在含义
  • 16.7 SECURITY-特殊的相对地址及存储方式
  • 16.8 SECURITY-模块证书定位及解析

调试信息(DEBUG)

  • 16.9 DEBUG-调试信息PDB文件基于调试器下的符号展现
  • 17.0 DEBUG-调试信息数据目录结构数组
  • 17.1 DEBUG-二进制数据解析调试目录内容
  • 17.2 DEBUG-调试信息类型检测与指向结构
  • 17.3 DEBUG-代码解析调试目录项目内容
  • 17.4 DEBUG-PDB符号文件结构及流目录数据定位
  • 17.5 DEBUG-DIA_SDK项目工程配置
  • 17.6 DEBUG-数据源初始化及符号获取
  • 17.7 DEBUG-交互框架及符号解析流程
  • 17.8 DEBUG-公共符号数据遍历获取
  • 17.9 DEBUG-PDB函数符号信息
  • 18.0 DEBUG-变量名称存储位域类型大小解析
  • 18.1 DEBUG-变量层级递归回溯符号信息
  • 18.2 DEBUG-数据类型源码级定义解析
  • 18.3 DEBUG-枚举类型双重结构定位
  • 18.4 DEBUG-类信息符号成员函数变量基类区别
  • 18.5 DEBUG-类成员变量属性符号存储格式
  • 18.6 DEBUG-函数基本符号信息获取
  • 18.7 DEBUG-PDB符号静态解析完结.

线程局部存储(TLS)

  • 18.8 TLS-线程创建原理及主线程与子线程
  • 18.9 TLS-线程切换调度机制及数据丢失原因
  • 19.0 TLS-线程数据同步互斥及死锁处理释放权限
  • 19.1 TLS-线程局部存储静态实现与TEB定位TLS指针查询数据
  • 19.2 TLS-动态调用TLS机制及内存管理
  • 19.3 TLS-TLS SLOTS INDEX
  • 19.4 TLS-多线程抢占式框架搭建及数据管理维护系统
  • 19.5 TLS-线程局部存储数据分配及线程启动管理
  • 19.6 TLS-初始化任务队列及信号释放
  • 19.7 TLS-线程内部任务接管与抢占式流程
  • 19.8 TLS-线程局部存储数据初始化及清理
  • 19.9 TLS-线程运行日志对接报告缓存
  • 20.0 TLS-多线程抢占式同步互斥及数据日志信息局部存储管理
  • 20.1 TLS-TLS动态与静态区别及回调函数原型
  • 20.2 TLS-函数地址表与回调注册机制
  • 20.3 TLS-线程局部存储代码定位解析及回调过滤
0xCC

教程资料购买后才能查看或下载。