3、HotFixHook

2024年06月13日HOOK专题

摘要一、课程目标 本节课主要学习HotFix Hook技术,这是一种常用于游戏外挂和软件破解的技术。通过本课的学习,你将能够: 1. 理解HotFix Hook的基本概念和应用场景 2. 掌握通过修改内存中的函数代码来实现热修补的方法 3. 实现动态补丁加载和应用机制 4. 理解HotFix Hook在游戏外挂中的典型应用 5. 学习HotFix Hook的检测和防护方法 二、名词解释表 三、技术原理 3.1 HotFix Hook概述 HotFix Hook是一种在程序运行时动态修改其内存中的代码来实现功能变更或修复的技术。它不需要重新启动程序就能立即生效,因此被称为"热修补"。 HotFix Hook广泛应用于: 1. 游戏外挂制作 2. 软件破解 3. Bug修复 4. 功能增强 3.2 实现原理…

1、InlineHook

2024年05月17日HOOK专题

摘要一、课程目标 本节课主要学习Inline Hook技术,掌握其基本原理和实现方法。通过本课的学习,你将能够: 1. 理解Inline Hook的基本概念和工作原理 2. 掌握在x86架构下实现Inline Hook的方法 3. 学会在目标函数头部插入跳转指令来重定向执行流程 4. 实现一个简单的Inline Hook框架 5. 理解Inline Hook的应用场景及潜在风险 二、名词解释表 三、技术原理 3.1 Inline Hook概述 Inline Hook是一种直接修改目标函数机器码的技术,通过在目标函数的开头插入跳转指令(JMP),将程序执行流程重定向到我们自定义的函数中。当目标函数被调用时,会先执行我们的Hook函数,然后再决定是否继续执行原始函数。 3.2 实现原理 1.…

5、阶段合集

2024年04月23日Inject专题

摘要1、课程目标 1. 整合第14章所有注入技术知识点 2. 实现综合性的注入工具 3. 掌握各技术间的协同使用 4. 了解实际应用场景 2、名词解释 3、技术原理 1. 注入技术整合 2. 实际应用场景 3、代码实现 1. 综合注入工具框架 2. 注入执行器 3. 综合注入工具类 4. 反检测与绕过机制 5、实际应用示例 1. 渗透测试场景 2. 红队演练场景 3、课后作业 3.1、作业1:完善综合工具 扩展InjectionToolkit类,实现所有注入方法的完整支持。 3.2、作业2:添加加密载荷支持 实现载荷加密和解密功能,提高隐蔽性。 3.3、作业3:实现绕过机制 研究并实现更高级的绕过安全软件检测的机制。 4、参考资料 1. Windows Internals系列书籍 2. 《恶意代码分析实战》-…

4、UserAPC注入

2024年04月22日Inject专题

摘要1、课程目标 1. 理解APC(异步过程调用)机制 2. 掌握QueueUserAPC API的使用方法 3. 实现基于APC的代码注入技术 4. 了解该技术的检测与防护方法 2、名词解释 3、技术原理 1. APC机制概述 APC(异步过程调用)是Windows提供的一种机制,允许在特定线程的上下文中异步执行函数。当线程处于"可警醒"(Alertable)状态时,系统会检查该线程的APC队列,如果有APC函数,则会执行它们。 2. 可警醒状态函数 线程只有在调用以下函数时才会进入可警醒状态: - SleepEx() - WaitForSingleObjectEx() - WaitForMultipleObjectsEx() - SignalObjectAndWait() -…

3、消息钩子注入

2024年04月17日Inject专题

摘要1、课程目标 1. 理解Windows消息钩子机制 2. 掌握SetWindowsHookEx API的使用方法 3. 实现基于消息钩子的代码注入技术 4. 了解该技术的检测与防护方法 2、名词解释 3、技术原理 1. Windows消息钩子概述 Windows消息钩子是一种允许应用程序监视和拦截系统消息的机制。通过安装钩子,应用程序可以捕获在系统中传递的各种消息,包括键盘输入、鼠标移动、窗口消息等。 2. 钩子类型详解 2.1 键盘钩子 - WHKEYBOARDLL: 低级键盘钩子,可以捕获所有键盘输入 - WHKEYBOARD: 标准键盘钩子,只能捕获当前线程的键盘消息 2.2 鼠标钩子 - WHMOUSELL: 低级鼠标钩子,可以捕获所有鼠标输入 - WHMOUSE:…

2、劫持进程注入

2024年04月12日Inject专题

摘要1、课程目标 1. 理解进程劫持注入的基本原理 2. 掌握进程镂空(Process Hollowing)技术 3. 实现完整的劫持进程注入技术 4. 了解该技术的检测与防护方法 2、名词解释 3、技术原理 1. 进程劫持注入概述 进程劫持注入是一种高级的代码注入技术,通过替换合法进程的内存映像来执行恶意代码。这种技术比传统的远程线程注入更加隐蔽,因为它完全替换了目标进程的原始代码。 2. 进程镂空 vs 远程线程注入 3. 核心技术要点 3.1 挂起进程创建 使用CREATE_SUSPENDED标志创建进程,此时进程尚未开始执行任何代码。 3.2 内存解映射 使用NtUnmapViewOfSection解除目标进程的内存映射,为注入新代码腾出空间。 3.3 PE文件重定位…

1、远程线程注入

2024年03月19日Inject专题

摘要1、课程目标 1. 理解远程线程注入的基本原理 2. 掌握CreateRemoteThread API的使用方法 3. 实现完整的远程线程注入技术 4. 了解该技术的检测与防护方法 2、名词解释 3、技术原理 1. 远程线程注入概述 远程线程注入是一种在目标进程中执行任意代码的技术。通过在目标进程中创建新的线程,攻击者可以在该进程中执行自己的代码。 2. 核心API详解 2.1 OpenProcess 常用权限组合: - PROCESSCREATETHREAD: 创建线程 - PROCESSVMOPERATION: 虚拟内存操作 - PROCESSVMWRITE: 写入内存 - PROCESSVMREAD: 读取内存 - PROCESSQUERYINFORMATION: 查询进程信息 2.2…

7、阶段合集

2024年03月18日安全开发专题

摘要1、课程目标 1. 整合第13章所有技术知识点 2. 实现综合性的安全工具 3. 掌握各技术间的协同使用 4. 了解实际应用场景 2、名词解释 3、技术原理 1. 安全开发技术整合 2. 实际应用场景 3、代码实现 1. 综合安全工具框架 2. 模块集成实现 3. 配置管理实现 4. 完整演示程序 5、课后作业 5.1、作业1:完善综合工具包 将第13章所有技术完整集成到一个综合工具包中,实现完整的功能协同。 5.2、作业2:添加加密通信功能 为综合工具包添加加密通信模块,实现与C&C服务器的安全通信。 5.3、作业3:实现插件化架构 设计插件化架构,使工具包能够动态加载和卸载功能模块。

6、令牌提权

2024年03月17日安全开发专题

摘要1、课程目标 1. 理解Windows安全令牌机制 2. 掌握令牌提权技术实现 3. 实现进程权限提升功能 4. 了解权限管理和安全策略 2、名词解释 3、技术原理 1. Windows令牌机制 2. 令牌提权原理 3、代码实现 1. 基础令牌提权实现 2. 高级令牌提权技术 3. 隐蔽令牌提权实现 4. 令牌提权管理器 5、课后作业 5.1、作业1:实现Bypass UAC功能 研究并实现用户账户控制(UAC)绕过技术。 5.2、作业2:添加令牌持久化功能 实现令牌的持久化存储和恢复功能。 5.3、作业3:实现远程令牌操作 添加远程进程令牌操作功能。

5、屏幕截屏

2024年03月09日安全开发专题

摘要1、课程目标 1. 理解Windows图形设备接口(GDI) 2. 掌握屏幕截图技术实现 3. 实现高效的屏幕捕获功能 4. 了解图像格式转换和保存 2、名词解释 3、技术原理 1. Windows图形系统 2. 屏幕截图技术 3、代码实现 1. 基础屏幕截图实现 2. 高级屏幕截图技术 3. 隐蔽屏幕截图实现 4. 屏幕截图管理器 5、课后作业 5.1、作业1:实现视频录制功能 扩展屏幕截图功能,实现连续截图并合成视频的功能。 5.2、作业2:添加图像压缩功能 实现截图的压缩存储,减小文件大小。 5.3、作业3:实现远程传输功能 添加将截图实时传输到远程服务器的功能。