摘要1. 课程目标 掌握父进程伪装技术,使创建的进程看起来是由另一个合法进程创建的,用于绑过安全软件的进程链检测。 1.1 学习目标 - 理解父进程在安全检测中的作用 - 掌握PROCTHREADATTRIBUTEPARENTPROCESS的使用 - 学会伪装为系统进程的子进程 2. 名词解释 3. 技术原理 3.1 为什么需要父进程伪装 安全软件检测逻辑: 3.2 检测点 4. 核心实现代码 4.1 基础父进程伪装 4.2 伪装为svchost.exe 4.3 结合进程镂空 5. 检测父进程伪装 5.1 检测方法 6. 常见问题 6.1 权限不足 问题: 失败 解决: - 选择权限较低的父进程 - 以管理员权限运行 - 选择同用户的进程 6.2 父进程终止 问题: 伪装的父进程终止后子进程PPID变为0 说明:…
摘要1. 课程目标 理解Windows如何使用安全策略防止ShellCode执行,以及如何绕过这些保护机制。 1.1 学习目标 - 了解DEP、CFG、ACG等保护机制原理 - 学习如何检测这些保护是否启用 - 掌握合法绕过这些保护的方法 2. 名词解释 3. DEP保护机制 3.1 DEP工作原理 3.2 检测DEP状态 4. 绕过DEP的方法 4.1 合法方法:VirtualProtect 4.2 直接分配可执行内存 4.3 使用ROP链绕过(高级) 5. ACG保护机制 5.1 ACG原理 ACG阻止以下操作: - - - 任何动态生成可执行代码的操作 5.2 检测ACG状态 5.3 绕过ACG 方法1:线程选择退出 方法2:使用已存在的可执行内存 - 模块镂空(Module Stomping) -…
摘要1. 课程目标 学习如何利用Windows安全策略来防止安全软件挂钩我们的进程,保护代码执行不被监控。 1.1 学习目标 - 了解Windows提供的进程保护机制 - 掌握ACG、CIG等策略的使用 - 学会配置进程缓解策略 - 理解各策略的优缺点 2. 名词解释 3. 进程缓解策略概述 3.1 可用的缓解策略 4. 核心实现代码 4.1 创建受保护的子进程 4.2 设置当前进程的缓解策略 4.3 完整的策略保护示例 5. 各策略详细说明 5.1 BLOCKNONMICROSOFTBINARIES 作用: 阻止非微软签名的DLL加载到进程 效果: - 安全软件的Hook DLL无法注入 - 第三方DLL无法加载 - 仅限微软签名的DLL可用 注意: 这会阻止很多正常DLL,可能导致应用功能受限 5.2…
摘要1. 课程目标 掌握模块镂空技术,通过替换已加载DLL的代码段来执行恶意代码,这是一种比进程镂空更隐蔽的注入方式。 1.1 学习目标 - 理解模块镂空与进程镂空的区别 - 掌握如何定位和替换DLL代码段 - 学会处理DLL的代码段权限 - 实现完整的模块镂空注入 2. 名词解释 3. 技术原理 3.1 模块镂空 vs 进程镂空 3.2 技术流程 3.3 牺牲DLL选择标准 推荐的牺牲DLL列表: - - 反恶意软件接口(体积小,但可绕过AMSI) - - HTML渲染(体积大) - - 调试帮助库 - - COM+ 分类管理器 - - 属性系统 4. 核心实现代码 4.1 本地模块镂空 4.2 远程进程模块镂空 5. 高级技术:AMSI绕过结合 模块镂空amsi.dll可以同时实现: 1. 代码注入执行 2.…
摘要1. 课程目标 掌握进程镂空(Process Hollowing)技术,这是一种高级的代码注入技术,通过替换合法进程的内存映像来执行恶意代码。 1.1 学习目标 - 理解进程镂空的工作原理 - 掌握进程创建与挂起技术 - 学会解映射与重新映射操作 - 实现完整的进程镂空注入 2. 名词解释 3. 技术原理 3.1 进程镂空 vs 进程挂起注入 3.2 技术流程 4. 必备工具与环境 5. 核心数据结构 5.1 必要的类型定义 5.2 PEB中ImageBaseAddress偏移 6. 完整实现代码 6.1 主函数实现 7. 关键技术点详解 7.1 为什么需要解映射 7.2 线程上下文寄存器 8. 常见问题与解决 8.1 解映射失败 原因: 某些系统DLL可能已经映射到目标区域 解决:…
摘要1. 课程概述 1.1 学习目标 - 理解Windows事件日志机制 - 掌握ETW(Event Tracing for Windows)原理 - 学会禁用或绕过日志记录 - 理解安全软件的日志监控方式 2. 名词解释 3. 技术原理 3.1 ETW架构 3.2 关键的ETW Provider 4. 实现代码 4.1 禁用ETW(Patch EtwEventWrite) 4.2 利用NtTraceEvent绕过 4.3 清除事件日志 5. AMSI绕过 5.1 Patch AmsiScanBuffer 6. 安全注意事项 - 禁用日志本身可能被检测 - 清除日志需要管理员权限 - 兩游检测可能发现异常 7. 课后作业 1. 实现ETW bypass并验证效果 2. 研究其他ETW Provider的禁用方法…
摘要1. 课程概述 1.1 学习目标 - 理解进程挂起状态的原理 - 掌握Process Hollowing技术 - 学会在挂起进程中注入ShellCode - 理解如何绕过进程创建监控 2. 名词解释 3. 技术原理 4. 实现代码 4.1 基本挂起进程注入 4.2 使用QueueUserAPC的方式 5. 免杀优势 - 利用合法进程身份 - 挂起状态时无法检测行为 - 可选择可信的系统进程 6. 课后作业 1. 实现挂起进程注入并弹出计算器 2. 尝试注入到不同的系统进程 3. 对比APC和Context修改的效果 7. 下一课预告 下一课我们将学习“Windows日志绕过”。
摘要1. 课程概述 1.1 学习目标 - 理解Windows内存映射机制 - 掌握Section映射注入技术 - 学会使用NtCreateSection/NtMapViewOfSection - 理解如何绕过常见内存分配检测 2. 名词解释 2.1 与VirtualAlloc的区别 3. 实现代码 3.1 本地映射注入 3.2 远程进程映射注入 4. 免杀优势 - 不使用VirtualAllocEx - 不使用WriteProcessMemory - 内存类型为Mapped而非Private - 共享内存不容易被检测 5. 课后作业 1. 实现本地Section映射执行ShellCode 2. 实现跨进程的映射注入 3. 对比VirtualAlloc与Section映射的检测效果 6. 下一课预告…
摘要1. 课程概述 1.1 学习目标 - 理解安全软件Hook ntdll的方式 - 掌握从磁盘重新加载ntdll的技术 - 学会使用干净ntdll副本绕过Hook - 理解内存映射与PE加载机制 1.2 前置知识 - PE文件结构 - 内存映射基础 - API Hook原理 2. 名词解释 2.1 核心术语 2.2 为什么需要重载NTDLL 3. 实现方案 3.1 方案比较 4. 实现代码 4.1 从磁盘读取并重载 4.2 从KnownDLLs读取 4.3 完整加载器示例 5. 检测与对抗 5.1 安全软件可能的检测方式 - 监控对ntdll.dll文件的访问 - 检测.text段的修改 - 重新Hook 5.2 绕过思路 - 从其他位置获取ntdll(如WoW64) - 使用挂起进程技术 -…
摘要1. 课程目标 深入了解安全软件的查杀原理,为后续的免杀技术学习打下理论基础。 1.1 学习目标 - 理解杀毒软件的工作原理 - 掌握静态检测与动态检测的区别 - 了解机器学习在安全检测中的应用 - 学会分析样本被查杀的原因 2. 名词解释 3. 检测技术分类 3.1 检测层次 4. 静态检测技术 4.1 特征码检测 4.2 哈希检测 4.3 PE结构分析 5. 动态检测技术 5.1 API监控 5.2 行为规则 5.3 沙箱分析 6. 机器学习检测 6.1 特征提取 6.2 检测模型 7. 云查杀机制 7.1 工作流程 7.2 信誉系统 8. AMSI机制 8.1 AMSI工作原理 8.2 AMSI扫描点 9. 免杀思路总结 10. 课后作业 10.1、作业1:特征分析(必做) 1.…