在红蓝对抗或者国家某活动中,钓鱼是红队比较常见的攻击手段。通常的钓鱼手段包括exe文件的投递,自解压文件的投递,office系文件的投递等等。这几种文件投递的方式都能直接向对方电脑投递木马文件,但是现在的防守客户普遍使用了强有力的查杀手段,特别是针对exe等文件的查杀,这对木马文件的免杀提出了新的挑战(当然,免杀大佬请当我这句话没说过)。Office作为目前最常见的办公软件套件使用,因为它的普遍使用性可以作为我们从外网到内网的一个突破口,但是目前我在GitHub找到现有的一些项目在面对国内使用的三大杀软显得应付有些吃力,所以才有了自己编写一个工具进行bypass的想法。
本次使用的是office套装的宏进行本地写vbs文件的做法进行上线。Vbs是Windows上的可执行文件,可以直接运行Windows的操作命令,但是vbs在渗透测试或者钓鱼中有个比较大的缺点,就是代码明文。受害者或者蓝队可以直接阅读VBS的代码,可以很容易直接找出cs会连地址(Emmm至少在我本次使用的这个脚本里是这样),所以我们必须对VBS脚本进行加密,加密的工具为微软官方给出的加密软件screnc.exe。这个工具已经写进打包好的工具里,程序运行时会在C盘根目录下自动释放,程序自动生成VBS代码,对VBS文件进行加密,程序运行完成后会被删除。
-
本次使用的是VBS调用powershell执行命令的方式进行上线,程序执行成功后会在系统内存运行,不产生exe等可执行文件后台进程,减少被查杀的风险;而且当excel程序被受害者关闭后,仍然可以正常上线,无需要excel进程一直后台启动。
-
受害者上线后,程序会自动删除相关的文件,减少在受害者电脑上留存文件,防止被逆向找到攻击者来源。
-
对原始VBA代码进行混淆,每次生成的VBA代码都是唯一的,MD5值都是不同的。防止被杀毒厂商记录MD5值和特征码。
-
投递到对方电脑的文件为不可读的二进制文件(VBE格式),在一定程度上减少被回溯的可能性
-
绕过国内主流杀软的检测,360安全卫士,360杀毒,火绒,腾讯管家
-
先在CS上开启监听
2 . 使用CS的 Attacks -- Web Drive-by -- Scritped Web Delivery(S)模块进行生成powershell攻击模块
3. 在CS Event Logs 复制powershell脚本链接,生成后弹出的powershell命令不用管
4. 从
https://github.com/PDWR/3vilMacro/releases
下载3vilMacro.exe文件。
文件的使用很简单,
3vilMacro.exe
[你刚刚复制的powershell脚本链接]。3秒钟后会在本路径下生成一个sourceVba.txt的文件。文件里面的内容就是加密后的VBA脚本
5. 把刚刚生成的VBA脚本内容全选复制粘贴到excel,开发工具—Visual Basic—ThisWorkBook里,保存,选择保存为xlsm格式的文件