如何在Discord上防范诈骗
引言
随着2020年人们因社交隔离而居家,在线消息传递需求激增,以保持彼此联系。在某些情况下,甚至整个社交活动(如会议和俱乐部聚会)都迁移到Discord和Slack等平台,以增加生物安全性,同时仍允许个人见面和交流。但像所有事物一样,当用户群迁移时,试图利用他们的攻击者也会随之而来。由于Black Hills Information Security(BHIS)对Discord有既得利益,我们想写这篇博客,概述当前常见的针对Discord用户的攻击,以及如何保护自己免受这些攻击。
用户账户接管
在我们的研究中,我们发现Discord上社交工程最常见的目标之一是接管合法的Discord用户账户。要理解这些攻击背后的动机,重要的是理解这些账户的价值以及攻击者如何使用它们。毕竟,为什么攻击者不简单地创建新账户,而是费心去入侵他人的账户?
在研究这个主题时,我们亲身体验了现有账户的价值。为了了解更多关于Discord网络钓鱼的信息,我们积极尝试成为此类攻击的目标。我们创建了Discord临时账户,并加入了可能吸引诈骗者的各种主题的服务器。然而,我们注意到许多Discord服务器设置了障碍,使用户更难加入。虽然有些服务器只允许验证过手机号的用户账户,但其他服务器要求解决小挑战来证明用户不是机器人,例如对特定消息做出反应。
在一个案例中,我们甚至在与管理员讨论中接受了审查,管理员还询问了我们账户的短暂生命周期。
入侵现有用户账户可以帮助攻击者绕过这些服务器保护,因为现有账户通常已经是服务器的成员。访问这些服务器使他们有机会在聊天室中发布钓鱼消息,或向其他服务器成员发送直接消息。使社交工程更有效的是,Discord服务器通常专注于特定主题——如游戏、加密货币或信息安全。这允许攻击者针对特定受众精心设计消息 pretext,增加成功机会。例如,与加密货币相关的Discord服务器成员可能比其他主题更容易受到相关钓鱼消息的影响。类似地,游戏Discord服务器的成员是旨在接管游戏平台(如Steam)账户的攻击的绝佳目标。
此外,现有用户通常在Discord内有联系人,这些联系人可能更信任他们,从而增加进一步社交工程攻击的成功机会。这些进一步攻击可能旨在入侵更多Discord账户,或实现额外目标,如财务收益。我们将在本博客后面讨论这些账户接管活动的典型最终目标。
现在我们已经确定了合法Discord账户的价值,我们将提供一些常见攻击方式的例子。在这里,我们发现针对Discord账户的网络钓鱼通常使用与Discord相关的pretexts。
一种过去讨论过的社交工程技术(例如,在这篇Portswigger博客文章中:https://portswigger.net/daily-swig/discord-users-warned-over-qr-code-login-scam-that-can-result-in-pwned-accounts)涉及Discord的QR码登录功能。为此,受害者需要登录到手机上的Discord移动应用。攻击者然后会向受害者发送从Discord登录页面获取的QR码,并试图诱骗受害者用其应用扫描它。
如果受害者扫描QR码,他们将收到确认是否要登录的提示。如果按下“是,登录”按钮,攻击者将登录到受害者的账户。
Discord已经承认这些QR码攻击,并将QR码的有效期缩短到两分钟,以降低成功可能性(https://support.discord.com/hc/en-us/articles/360039213771-QR-Code-Login-FAQ)。然而,在这些限制内,攻击仍然可能以上述方式进行。
我们的研究表明,一些最常见的账户接管攻击与免费的Discord Nitro订阅有关。Discord Nitro是一种付费订阅,为Discord用户提供额外功能。这些包括更详细的个人资料页面、额外的表情符号和贴纸、更大的文件上传等。这些功能对许多用户来说足够有吸引力,以至于免费Nitro的提议已成为相当成功的社交工程pretext。攻击者可能在这里受益的一个因素是,过去发生过合法的Nitro赠送活动。除此之外,存在一种向其他用户赠送Discord Nitro的合法方式,这会生成指向discord.gift域的链接(来源:https://support.discord.com/hc/de/articles/1500001829622-Claiming-a-Nitro-Gift-FAQ)。知道这些合法赠送活动的用户可能更倾向于对模仿这些赠送活动的社交工程攻击做出反应。
这些网络钓鱼攻击可以采取各种形式。例如,它们可能诱使用户打开指向攻击者网站的链接,提示用户使用其Discord凭据登录,可能为攻击者提供访问用户账户的权限。一种欺骗用户认为链接合法的方法是通过typosquatting一个看似与Nitro礼物相关的域。这些攻击可能针对Discord账户接管或第三方平台账户接管。我们将在下一节提供后者的例子。
Steam账户接管
这种攻击方法的一个流行变体使用免费Nitro访问的承诺来入侵Steam账户。Steam是一个流行的游戏平台,被数百万玩家使用。它还包括市场交易功能,可用于购买、出售和交易游戏中的虚拟物品,以及允许用户存储资金的钱包功能。入侵Steam账户的攻击者可能能够从中获得直接财务收益。Steam论坛和Reddit等社区包含许多用户的报告,他们在落入类似的Discord Nitro网络钓鱼攻击后遭受了账户接管。
以下大纲提供了此类网络钓鱼攻击的例子。攻击从向用户发送包含typosquatting链接的消息开始。
打开的页面试图模仿官方discord.com网站的外观。许多包含的链接甚至指向有效的Discord域,试图使网站看起来尽可能合法。
点击“获取Nitro”按钮会打开一个视觉上类似于Steam登录页面的登录页面。然而,此页面也托管在steamdlscord[.]com域上,表明这旨在捕获Steam凭据。
如果账户接管成功,攻击者可能试图交易账户库存中的任何有价值物品,或使用账户的钱包余额购买游戏礼品代码。虽然通常可以恢复账户,但这些努力可能无法恢复任何丢失的贵重物品。
Steam账户接管类别中另一个不光彩的提及涉及诈骗者在Discord上向受害者发送消息,称他们“意外”在Steam上报告了他们滥用行为,现在受害者必须采取行动以防止其账户被禁止。这里pretext的一个重要部分是受害者已将其Discord和Steam账户链接,为攻击者提供了非常有用的信息,允许他们创建更可信的pretext。这篇博客详细描述了这种技术:https://blog.malwarebytes.com/scams/2021/03/steam-users-dont-fall-for-the-i-accidentally-reported-you-scam/。
加密货币诈骗
加密货币是Discord上社交工程尝试中另一个常用主题。虽然它们预期在与该主题相关的服务器上相当常见,但它们也在无关的服务器上普遍存在。虽然pretexts和传递方法可能不同,但最终目标始终相同:以毫无戒心的受害者为代价获得财务收益。
以下消息显示了一个例子,试图让受害者在比特币赠送的幌子下访问一个看似合法的加密货币交易网站。
发送者提供一个促销代码,承诺0.42 BTC(比特币)作为赠送。在撰写本文时,这相当于大约20,000美元。这听起来好得令人难以置信,对吧?
诈骗者已付出巨大努力使目标网站看起来像合法的加密货币交易所。
当通过urlscan.io扫描该网站时,可以做出一个有趣的观察。似乎有大量其他类似网站可用。
视觉上,这些网站之间的唯一区别是它们的域名,以及网站上显示的名称。
从这一点开始,受害者需要注册到这个交易网站以输入“促销”代码。我们没有进一步调查这个特定网站,但基于其他研究,我们怀疑接下来的步骤会要求我们支付费用以解锁0.42 BTC,而承诺的比特币之后永远不会支付。有关此诈骗的进一步解释,请查看此视频:https://youtu.be/R7WL_xFF0R8。
我们观察到的另一种常见社交工程技术包括通过直接消息或其他服务器聊天室发送Discord服务器邀请链接。虽然邀请用户到新服务器并不直接恶意,但它可以作为后来社交工程攻击的前兆。
我们收到以下消息,邀请我们加入一个加密货币套利交易服务器,承诺通过不同交易平台之间的套利获得免费资金。
这种特定攻击似乎围绕受害者被胁迫从合法交易网站购买加密货币,然后将其发送到欺诈性网站。
通过Discord分发恶意软件
通常与上述方法一起使用,已有大量关于通过Discord分发恶意软件的报告。有几个因素导致这特别适用于Discord而不是其他平台。主要原因之一是Discord拥有全球可用的内容分发网络(CDN)。旨在允许用户来回共享文件和图片,此服务允许攻击者在Discord拥有的受信任服务器上托管恶意软件。当文件上传到Discord时,它将上传到托管在cdn.discordapp.com的服务。虽然CDN滥用并不新鲜,但当与鱼叉式网络钓鱼配对时,这可能会说服一些用户该文件来自“受信任”来源。
这也意味着对于任何运行访问控制列表(ACL)阻止常用滥用网站(如GitHub或Pastebin)的用户/雇主,如果您允许流量到Discord的CDN服务,攻击者可能能够绕过所述保护。
针对Discord客户端的恶意软件
当然,那个例子要求用户下载并执行存储在CDN上的文件。然而,历史上还有更简单的方法……2020年,Masato Kinugawa发布了一篇博客文章,关于Discord客户端上的完整漏洞利用链,通过最终用户点击iframe实现远程代码执行,导致托管在sketchfab上的3d项目文件渲染并执行NodeJS代码。Discord建立在Electron上,这允许Web应用程序访问本地系统资源,绕过一些已成为现代Web浏览器安全支柱的沙盒功能。虽然客户端可能是访问聊天应用程序的便捷方式,但它可能不是您最安全的选择。漏洞利用链中另一个值得注意的元素是Discord Web应用程序中iframe嵌入的利用。虽然此功能可以在用户设置中禁用,但默认启用。
另一个著名的Discord恶意软件称为BlueFace,由MalwareHunterTeam发现,并由bleepingcomputer.com在2019年报告,当时发现恶意软件修改应用程序的JavaScript以武器化客户端并将信息外泄给攻击者。这些例子表明,Discord客户端正在积极测试与其使用Electron相关的漏洞利用。根据您的威胁模型,您可能要考虑禁用此功能,尽管这会以破坏聊天中所有那些 fantastic gifs为代价。更好的是,如果可能,考虑通过Web浏览器而不是Electron应用程序访问Discord。
保护和应对措施
对抗社交工程攻击的最佳保护是知道它们可能发生,并对消息、链接或服务器邀请保持怀疑。如果所有其他预防措施失败,恶意消息到达用户,这也将是最后一道防线。为了降低此类消息出现的可能性,用户可以配置以下设置:
安全直接消息:这将扫描通过直接消息发送给用户的所有图像和视频,并阻止可能不需要的内容。虽然不直接旨在防止网络钓鱼,但这可能有助于在某些情况下过滤恶意消息。我们建议选择顶部或中间选项。
服务器隐私默认值:此选项设置允许与用户至少有一个共同服务器的用户发送直接消息的默认值。禁用此选项将降低接收网络钓鱼消息的风险。此选项也可以通过右键单击特定服务器在每服务器基础上设置。我们建议将默认值设置为“禁用”,并仅为您信任的服务器启用直接消息。
谁可以将您添加为朋友:此选项定义谁可以在Discord中将您添加为朋友。您添加为朋友的任何用户将能够向您发送直接消息,无论设置#2如何。禁用“所有人”选项可以帮助防止社交工程攻击,但也可能阻止合法的朋友请求。为了增加安全性,禁用“服务器成员”设置也是一个选项。
为了降低成功账户劫持攻击的可能性,我们建议启用双因素身份验证。虽然这不能保护 against 上述QR码攻击,但它可以减少其他凭据窃取攻击的影响。
如前所述,为了增加安全性,从Web浏览器内使用Discord,而不是桌面应用程序。然而,如果您选择使用桌面应用程序,我们建议检查“自动检测此计算机上其他平台的账户”功能是否禁用。
此外,我们建议您不要将其他服务(如Steam或Twitch)的账户连接到您的Discord账户。连接其他账户可能为攻击者提供可用于社交工程攻击的额外信息。这种做法也对隐私有益。
除了个别用户可以采取的措施外,服务器管理员还有方法可以提高安全性。请参阅此官方Discord文档页面以获取更多信息:https://discord.com/safety/360043653152-Four-steps-to-a-super-safe-server
总结
我们写这篇博客的目的是概述当前常见的针对Discord用户的攻击。我们表明攻击者经常使用Discord针对特定用户群体,如Steam用户或加密货币爱好者,并可能使用Discord平台本身为其攻击托管恶意文件。了解社交工程攻击的普遍性和不同变体可以帮助加强用户的安全态势。作为后续,我们提供了一份缓解措施列表,以及用户如何实施它们以降低成为此类攻击受害者的可能性的说明。然而,像大多数网络钓鱼和社交工程攻击向量一样,它通常取决于每个用户的警惕性以避免成为受害者。