摘要1. 课程目标 学习如何定位安全软件检测的特征码位置,这是免杀技术的基础技能。 1.1 学习目标 - 理解特征码定位的原理 - 掌握二分法定位技术 - 学会使用定位工具 - 实践特征码修改 2. 名词解释 3. 定位原理 3.1 二分法定位流程 3.2 定位策略 4. 手动定位实现 4.1 文件分块工具 4.2 二分法定位工具 5. 使用现有工具 5.1 MyCCL使用步骤 5.2 VirTest使用 6. 特征码分析 6.1 分析定位到的特征码 6.2 特征码类型 7. 多特征码定位 7.1 复合特征定位 8. 课后作业 8.1、作业1:手动定位(必做) 1. 选择一个被杀毒软件查杀的样本 2. 使用二分法手动定位特征码 3. 记录特征码的偏移和内容 8.2、作业2:工具使用(必做) 1.…
摘要1. 课程目标 深入了解Windows的PPL保护机制,学习如何识别PPL进程以及相关的攻防技术。 1.1 学习目标 - 理解PP和PPL的区别 - 掌握PPL进程的识别方法 - 了解PPL的保护范围 - 学习绕过PPL的已知技术 2. 名词解释 3. PPL基础知识 3.1 PP vs PPL 3.2 保护级别层次 3.3 Signer类型 4. 识别PPL进程 4.1 使用NtQueryInformationProcess 4.2 枚举所有PPL进程 5. PPL保护范围 5.1 阻止的操作 5.2 允许的操作 6. LSASS PPL保护 6.1 启用LSASS PPL 6.2 检查LSASS保护状态 7. 绕过PPL的已知技术 7.1 内核驱动方式 7.2 概念性代码 7.3 PPLDump工具原理…
摘要1. 课程目标 学习利用DLL劫持技术绕过UAC,通过劫持自动提权程序加载的DLL来实现权限提升。 1.1 学习目标 - 理解DLL劫持原理 - 掌握DLL搜索顺序 - 学会查找可劫持的DLL - 实现DLL劫持绕过UAC 2. 名词解释 3. DLL搜索顺序 3.1 默认搜索顺序 3.2 KnownDLLs保护 4. 寻找可劫持的DLL 4.1 使用Process Monitor 4.2 自动化扫描工具 5. 常见的可劫持目标 5.1 自动提权程序的DLL劫持 5.2 sysprep.exe劫持示例 6. 完整利用流程 6.1 步骤概述 6.2 sysprep利用实现 6.3 恶意DLL模板 7. 使用WinSxS绕过 7.1 WinSxS机制 Windows…
摘要1. 课程目标 学习CVE-2019-1388漏洞的原理和利用方法,这是一个利用证书对话框实现UAC绕过的经典漏洞。 1.1 学习目标 - 理解CVE-2019-1388漏洞原理 - 掌握漏洞利用步骤 - 了解受影响的Windows版本 - 学习防御和检测方法 2. 漏洞概述 2.1 受影响版本 - Windows 7 - Windows 8/8.1 - Windows 10 (1903之前) - Windows Server 2008/2012/2016/2019 3. 漏洞原理 3.1 原理说明 3.2 漏洞流程图 4. 手动利用步骤 4.1 准备工作 1. 获取一个有签名的需要提权的可执行文件 2. 推荐使用旧版本的 (HTML Help可执行更新程序) 3.…
摘要1. 课程目标 深入学习UAC绕过的代码实现技术,包括COM对象劫持、Token复制等高级方法。 1.1 学习目标 - 掌握COM对象劫持绕过UAC - 学习Token复制提权技术 - 了解环境变量劫持方法 - 实现自动化UAC绕过框架 2. 名词解释 3. COM对象劫持 3.1 ICMLuaUtil接口 3.2 IFileOperation接口 4. Token复制提权 4.1 从高权限进程窃取Token 5. 命名管道Token窃取 6. 环境变量劫持 7. 综合UAC绕过框架 8. 课后作业 8.1、作业1:COM对象(必做) 实现CMSTPLUA COM对象的UAC绕过。 8.2、作业2:Token窃取(进阶) 从lsass.exe或winlogon.exe窃取Token并创建提权进程。…
摘要1. 课程目标 学习利用Windows UAC白名单机制绕过用户账户控制,实现静默提权。 1.1 学习目标 - 理解UAC的工作原理 - 了解UAC白名单机制 - 掌握常见的白名单绕过方法 - 实现自动提权工具 2. 名词解释 3. UAC工作原理 3.1 UAC流程 3.2 白名单条件 程序满足以下条件可以自动提权: 1. 位于 目录 2. 具有微软签名 3. Manifest中声明 3.3 常见白名单程序 4. 核心实现代码 4.1 fodhelper.exe绕过 4.2 eventvwr.exe绕过 4.3 computerdefaults.exe绕过 4.4 检查UAC级别 5. 工作原理详解 5.1 fodhelper.exe劫持原理 5.2 注册表劫持流程 6. 检测与防御 6.1 检测方法…
摘要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.…