您的浏览器并非安全空间
Corey Ham //
Tl;dr
使用密码管理器而非浏览器存储密码、信用卡号和其他自动填充项。
个人安全:不要在浏览器中保存任何敏感信息,尤其是凭据。这些数据可能会传播得比您意识到的更远,并且可以被恶意软件访问。考虑从您选择的浏览器中删除所有凭据和自动填充项。
企业安全:防止用户在浏览器凭据存储中保存凭据,并考虑阻止用户在企业托管主机上登录其浏览器。如果可能,强制执行访问控制,防止用户在非托管主机上登录浏览器。监控凭据滥用情况。
故事
我为 BHIS 执行红队演练。这些演练旨在覆盖目标实体的最广泛攻击面。我们的操作范围广泛——意味着我们可以攻击任何被识别为目标拥有的用户、计算机、应用程序或传真机,除非事先明确提供为超出范围。
在最近的一次红队演练中,我在测试的第一天就获得了员工凭据、浏览器 cookie、用户桌面的屏幕截图以及一些有趣的文件。现在,您可能认为这听起来像是我在吹嘘自己神级的黑客技能,或者目标的安全措施非常糟糕,如果我在第一天就取得了如此进展。事实是,我可能甚至还没有建立命令和控制基础设施,而且目标的安全性非常出色。那么这是怎么发生的呢?我在一些窃取日志中找到了所有这些数据。
窃取日志?
我第一次意识到窃取日志是在 WWHF Deadwood 2022,当时我在 Mishaal Khan 的演讲后与他进行了精彩的对话,他演示了如何使用它们进行 OSINT。我自己也是 OSINT 的粉丝,并且是 BHIS 的主要数据泄露处理者,所以我决定亲自获取一些这些数据并查看一下。最终,我设法获取了大量的数据,总计超过 10TB。然后,我努力处理尽可能多的数据,使其可搜索。我不会赘述这些无聊的细节,但足以说明黑帽黑客在组织文件方面绝对糟糕。如果您想看到单独的博客文章或网络广播,详细说明我如何处理数据并使其在我们的私人泄露数据库中可搜索,请告诉我。
要快速了解日志本身的样子,请查看 IntelTechniques 的这篇优秀博客(https://inteltechniques.com/blog/2022/07/06/new-breach-data-lesson-ii-stealer-logs/)。
简要概述:
- 窃取恶意软件通过多种方式分发,包括与破解/盗版软件打包、在网络钓鱼活动中以及在恶意广告中。
- 窃取者是廉价的商品恶意软件(100 美元),并且有相当多的变种,包括 Redline、Raccoon、Vidar 等。窃取者通常从受害者那里获取以下信息:
- 系统信息(运行进程、安装的软件、屏幕截图)
- 浏览器数据(凭据、历史记录、cookie、自动填充等)
- 浏览器凭据数据通常报告为四个字段:
- 主机/URL
- 用户名
- 密码
- 浏览器版本(即 Chrome 104)
- 有趣的文件
- 为高价值软件构建了特定的提取器,例如加密货币钱包、视频游戏、Discord 身份验证令牌等。
- 网络摄像头捕获,取决于变种
恶意软件不会停留太久,但会尽可能抓取数据并将其发送到中央服务器进行处理。到达那里后,每个受害者的数据被打包,数据在论坛和 Telegram 群组中出售,通常是大规模集合。它们并不特别昂贵,平均受害者的数据成本为几分甚至几分之一美分。作为参考,受害者的文件夹可能看起来像这样:
内容几乎是不言自明的。一些变种列出了存在的防病毒程序、进程是否提升以及用户拥有的 UAC 权限。
受害者桌面的屏幕截图既令人悲伤又滑稽。其中一些让我觉得我在过度设计我的有效载荷……
受害者
那么,回到故事。
正如您可能想象的那样,侦察是红队的重要组成部分。我个人喜欢侦察过程,因为我用它来收集情境意识和信心,以便以后执行攻击。我对目标实体的运作方式了解得越多,我就越能利用它来对付他们,尤其是在社会工程和后期利用期间。在我开始处理窃取日志后,我将搜索它们添加到所有演练的侦察工作流程中;具体来说,在主机字段和用户名字段中搜索客户端域。这几乎立即开始产生结果,但这里有一个具体的故事,我认为很好地说明了风险。
我发现了一个结果,其中一个捕获的凭据的 URL 类似于 https://citrix.client.com/vpn/login。为该站点捕获的用户名似乎是一个有效的用户名,但保存的密码是一个六位数字。这很可能是一个临时的 MFA 代码,我们无法使用捕获的信息访问 Citrix 界面。
我提取并浏览了用户的整个日志文件夹,其中包含大约 67 组凭据,但没有其他我们可以利用进行初始访问的信息。我们针对该用户发起了一个长期运行的凭据填充活动,使用窃取日志中列出的所有凭据。对我们不利(但对客户有利),这次攻击不成功,我们在所有数据中心中对该用户帐户触发了智能锁定。
一旦我们承认使用数据进行初始访问失败,我们联系了客户通知他们情况,并让他们与受害者取得联系。我想向用户提供完整的窃取日志文件存档,以便他们尝试使所有披露的信息无效。然而,鉴于数据的个人性质,我不愿意与受害者的雇主共享整个转储。同时,我们的客户不希望负责传输和存储用户的个人数据。最终,我们决定将内容发送到一个加密的 zip 文件中,密码通过电话口头交换。受害者非常有礼貌,并对提醒表示赞赏,我觉得这令人钦佩。
最让我惊讶的部分是,受害者没有意识到他们的计算机被入侵,甚至没有意识到他们的数据被暴露。我问他们是否收到了虚假的 MFA 推送通知、可疑的登录通知或任何其他入侵指标,但他们都没有意识到。恶意软件在我发现它之前一年多就执行了。这使我相信,收集这些数据的攻击者必须对其进行分类,并仅针对最有价值的目标采取行动——那些拥有信用卡、加密货币钱包和其他可以导致快速直接财务收益的信息的目标。
至于受害者是如何被感染的,他们的一个孩子在安装破解软件时感染了家庭计算机。受害者在我们的对话中向我提到,他们将召开一次“家庭会议”,共同努力更改所有受影响的密码,并将其作为一个可教的时刻,这很好。在这一点上,我们分道扬镳,我们继续我们的红队演练。
下一步?
当我们结束演练并转向报告时,我开始考虑客户可以做些什么来防止这种事情再次发生。
首先,我考虑了导致这种数据泄露的技术机制。我没有足够的证据来证明到底发生了什么,但我想出了一些可能性:
- 用户使用他们的个人帐户登录了他们的工作浏览器,导致现有和未来的凭据通过他们的个人 Google/Microsoft 帐户同步到他们的家庭计算机。
- 用户使用他们的工作帐户登录了他们的家庭计算机浏览器,将所有存储在那里的凭据同步到他们的家庭计算机。
- 客户使用自带设备(BYOD)访问模型,允许员工从个人计算机远程访问公司资源。
在所有情况下,个人和工作数据都会混合,导致潜在的数据泄露。
技术控制?
多年来,我一直在报告“允许浏览器凭据存储”作为一个发现,主要是在后期利用期间使用 SharpChromium 和 SharpDPAPI 等工具时,发现用户将密码保存在浏览器凭据存储中而不是密码管理器中。那里的建议是使用 GPO 或 MDM 在所有浏览器中完全禁用此功能。如果用户仅从托管计算机登录 Citrix 界面,这有可能阻止用户首先保存密码。
这种情况提出了一个额外的建议可能性,即完全阻止用户登录他们的浏览器。虽然我考虑过这一点,但它可能会降低一些经常在批准设备之间切换的工人的效率。这也是我讨厌的那种安全解决方案——那种阻止一堆有用功能以防止其中一部分被滥用的解决方案。
用户安全意识?
尽管我经常犹豫是否要拉动这个杠杆,但我认为让用户意识到浏览器同步的含义对员工和雇主都有帮助。这远远超出了安全范围;我认为大多数人不会希望他们的浏览器历史记录与配偶或亲密朋友共享,更不用说他们的雇主了。随着更多应用程序转向 Web 客户端模型,我们将比以往任何时候都更多的敏感数据放入浏览器中。
检测?
尽管泄露的数据可能似乎超出我们的控制,但监控和检测可以防止这些数据被滥用。
首先确切知道哪些数据被泄露对公司和个人都有很大帮助。在撰写本文时,我没有意识到有任何公共网站像 HaveIBeenPwned 但用于窃取日志。如果您知道一个好的,请联系。
对于公司,可能有付费的数据泄露监控服务可以摄取窃取日志。您也可以订阅我们的持续测试产品,其结构方式允许我们像真实攻击者一样长期使用这些技术(无耻的插播)。
对于个人,在窃取日志中搜索您的数据更加困难。有一个政府网站(https://raccoon.ic3.gov/home)可以让您确定您的数据是否被 Raccoon Stealer 窃取。HaveIBeenPwned 有大约 400,000 条来自 Redline 窃取者的记录,这是一个有限的子集。目前,我的数据集包含近 1000 万受害者,我可能遗漏了相当多的数据。
公司还应监控凭据填充攻击并相应响应,特别是如果发生有效登录。防御者还应意识到浏览器数据的安全影响。
我的建议
- 使用好的密码管理器,用于企业和个人安全。
- 使用组策略或设备管理工具(如 Intune)禁用所有托管计算机上所有浏览器的浏览器凭据存储。
- 清理先前保存的登录信息和其他敏感数据。
- 教育用户和防御者:
- 提高对登录浏览器时交换的数据量的认识。
- 演示如何手动禁用凭据存储、导出旧凭据并将其导入他们选择的密码管理器。
感谢阅读!
准备好了解更多?
通过 Antisyphon 的实惠课程提升您的技能!
Pay-Forward-What-You-Can 培训
提供实时/虚拟和点播