FTP免杀绕过杀软及钓鱼绕过邮箱检测
字数 1639 2025-08-29 08:30:19

FTP免杀绕过杀软及钓鱼绕过邮箱检测技术详解

一、技术概述

本技术通过FTP命令执行结合PowerShell脚本实现恶意代码的免杀执行,并配合钓鱼邮件绕过邮箱安全检测。主要包含以下关键点:

  1. 利用FTP命令的!执行特性进行命令执行
  2. PowerShell脚本的多层混淆绕过杀软静态检测
  3. 伪造HTML页面隐藏真实恶意文件下载链接
  4. 绕过主流邮箱的安全检测机制

二、环境准备

所需工具

  • Cobalt Strike (CS) 服务端和客户端
  • 文本编辑器(如Notepad++)
  • FTP客户端
  • Web服务器(用于托管恶意文件)

基础配置

  1. 启动CS服务端
  2. 客户端连接至服务端
  3. 建立监听器
  4. 生成PowerShell格式的payload

三、技术实现步骤

1. 生成恶意PowerShell脚本

使用CS生成PowerShell格式的payload,保存为a.ps1,然后重命名为bad.ps1

2. 制作FTP命令执行文件

创建good.dll文件,内容如下:

^ -exec bypass .\\bad.ps1

技术原理:

  • ^:转义字符,用于绕过简单字符串检测
  • -exec bypass:绕过PowerShell执行策略
  • .\\bad.ps1:执行当前目录下的恶意脚本

3. 制作主执行文件

创建a.ps1文件,内容为:

1 -""s:aaa.dll

参数说明:

  • -s:FTP的标准参数,指定包含FTP命令的脚本文件
  • "":空字符串,用于混淆和绕过安全检查
  • aaa.dll:实际应为good.dll,此处可能是笔误

4. 文件结构组织

完整文件结构:

攻击文件夹/
├── a.ps1            (主执行文件)
├── good.dll         (FTP命令执行文件)
└── bad.ps1          (CS生成的恶意PowerShell脚本)

5. 打包与分发

  1. 将上述文件打包为ZIP压缩包
  2. 上传至GitHub获取下载链接
  3. 创建伪造的HTML页面,将下载链接伪装成"查杀后的docx文件"

四、技术原理分析

1. FTP命令执行绕过

利用FTP客户端的特性:

  • 在FTP命令模式下,输入!可以执行系统命令
  • 通过脚本自动执行这一过程,避免人工交互

2. PowerShell混淆技术

采用的混淆方法:

  • 大小写混合(如$ExeCuTiOnCoNtExT
  • 转义字符(^
  • 执行策略绕过参数(-exec bypass
  • 分块执行(InvOkeCoMmAnD.NeWScriPtBlOcK

3. 杀软绕过机制

静态检测绕过:

  • 多层文件调用,分离恶意代码
  • 非常规文件扩展名(.dll用于存储命令)
  • 命令字符串混淆

动态检测绕过:

  • 针对360杀毒、Windows Defender有效
  • 火绒会检测到可疑的PowerShell进程创建

五、钓鱼邮件制作

1. HTML页面伪装

创建看似合法的文件下载页面:

  • 界面伪装成杀毒软件扫描完成界面
  • 下载按钮链接指向恶意ZIP包
  • 文件名显示为"已查杀_文档.docx"类安全名称

2. 邮箱检测绕过技巧

成功要素:

  • 不直接发送可执行文件
  • 下载链接托管在可信平台(GitHub)
  • 链接显示名称与真实内容不符
  • 邮件正文诱导用户认为文件已通过安全检测

六、防御建议

针对企业管理员

  1. 禁用不必要的命令行工具(FTP、PowerShell)
  2. 监控异常进程创建(特别是cmd->ftp->powershell链)
  3. 限制从外部下载ZIP文件并自动执行内容

针对终端用户

  1. 谨慎下载邮件中的附件,即使显示为"已查杀"
  2. 注意文件实际扩展名与显示名称是否一致
  3. 对可疑的PowerShell执行请求保持警惕

七、测试结果

实际测试验证:

  • 成功绕过主流邮箱的安全检测
  • 静态查杀全部绕过
  • 动态检测绕过360杀毒、Windows Defender
  • 火绒会检测到可疑的PowerShell进程创建行为

八、技术演进方向

  1. 替换FTP为其他可信命令行工具
  2. 增加更多层文件调用混淆
  3. 结合文档漏洞(如Office宏)提高成功率
  4. 使用更隐蔽的C2通信方式

本技术文档详细说明了从环境准备到最终攻击成功的完整链条,重点突出了各环节的绕过技术和实现原理,同时提供了相应的防御建议。使用时请确保符合法律法规,仅用于安全研究目的。

FTP免杀绕过杀软及钓鱼绕过邮箱检测技术详解 一、技术概述 本技术通过FTP命令执行结合PowerShell脚本实现恶意代码的免杀执行,并配合钓鱼邮件绕过邮箱安全检测。主要包含以下关键点: 利用FTP命令的 ! 执行特性进行命令执行 PowerShell脚本的多层混淆绕过杀软静态检测 伪造HTML页面隐藏真实恶意文件下载链接 绕过主流邮箱的安全检测机制 二、环境准备 所需工具 Cobalt Strike (CS) 服务端和客户端 文本编辑器(如Notepad++) FTP客户端 Web服务器(用于托管恶意文件) 基础配置 启动CS服务端 客户端连接至服务端 建立监听器 生成PowerShell格式的payload 三、技术实现步骤 1. 生成恶意PowerShell脚本 使用CS生成PowerShell格式的payload,保存为 a.ps1 ,然后重命名为 bad.ps1 。 2. 制作FTP命令执行文件 创建 good.dll 文件,内容如下: 技术原理: ^ :转义字符,用于绕过简单字符串检测 -exec bypass :绕过PowerShell执行策略 .\\bad.ps1 :执行当前目录下的恶意脚本 3. 制作主执行文件 创建 a.ps1 文件,内容为: 参数说明: -s :FTP的标准参数,指定包含FTP命令的脚本文件 "" :空字符串,用于混淆和绕过安全检查 aaa.dll :实际应为 good.dll ,此处可能是笔误 4. 文件结构组织 完整文件结构: 5. 打包与分发 将上述文件打包为ZIP压缩包 上传至GitHub获取下载链接 创建伪造的HTML页面,将下载链接伪装成"查杀后的docx文件" 四、技术原理分析 1. FTP命令执行绕过 利用FTP客户端的特性: 在FTP命令模式下,输入 ! 可以执行系统命令 通过脚本自动执行这一过程,避免人工交互 2. PowerShell混淆技术 采用的混淆方法: 大小写混合(如 $ExeCuTiOnCoNtExT ) 转义字符( ^ ) 执行策略绕过参数( -exec bypass ) 分块执行( InvOkeCoMmAnD.NeWScriPtBlOcK ) 3. 杀软绕过机制 静态检测绕过: 多层文件调用,分离恶意代码 非常规文件扩展名(.dll用于存储命令) 命令字符串混淆 动态检测绕过: 针对360杀毒、Windows Defender有效 火绒会检测到可疑的PowerShell进程创建 五、钓鱼邮件制作 1. HTML页面伪装 创建看似合法的文件下载页面: 界面伪装成杀毒软件扫描完成界面 下载按钮链接指向恶意ZIP包 文件名显示为"已查杀_ 文档.docx"类安全名称 2. 邮箱检测绕过技巧 成功要素: 不直接发送可执行文件 下载链接托管在可信平台(GitHub) 链接显示名称与真实内容不符 邮件正文诱导用户认为文件已通过安全检测 六、防御建议 针对企业管理员 禁用不必要的命令行工具(FTP、PowerShell) 监控异常进程创建(特别是cmd->ftp->powershell链) 限制从外部下载ZIP文件并自动执行内容 针对终端用户 谨慎下载邮件中的附件,即使显示为"已查杀" 注意文件实际扩展名与显示名称是否一致 对可疑的PowerShell执行请求保持警惕 七、测试结果 实际测试验证: 成功绕过主流邮箱的安全检测 静态查杀全部绕过 动态检测绕过360杀毒、Windows Defender 火绒会检测到可疑的PowerShell进程创建行为 八、技术演进方向 替换FTP为其他可信命令行工具 增加更多层文件调用混淆 结合文档漏洞(如Office宏)提高成功率 使用更隐蔽的C2通信方式 本技术文档详细说明了从环境准备到最终攻击成功的完整链条,重点突出了各环节的绕过技术和实现原理,同时提供了相应的防御建议。使用时请确保符合法律法规,仅用于安全研究目的。