【翻译】深入分析Tycoon 2FA最新版AiTM钓鱼文件
面包and牛奶 发表于 山东 企业安全 782浏览 · 2024-05-15 14:32

翻译:https://blog.sekoia.io/tycoon-2fa-an-in-depth-analysis-of-the-latest-version-of-the-aitm-phishing-kit/

0X00 前言


为了增强我们的威胁情报、改善检测能力并识别新的威胁,Sekoia分析师持续进行威胁狩猎,以应对影响我们客户的主要威胁。为此,我们主动搜索并识别新出现的威胁,利用我们的遥测数据、内部工具和外部服务。2023年10月,我们日常的威胁狩猎活动让我们发现了一个新的中间人钓鱼工具包(AiTM phishing kit),据称多个威胁行为者使用它进行广泛且有效的攻击。我们的调查揭示,这个工具包与活跃于至少2023年8月以来的Tycoon 2FA Phishing-as-a-Service (PhaaS) 平台有关。
当时,Sekoia威胁检测与研究(TDR)团队对Tycoon 2FA PhaaS进行了深入分析,并在Twitter上与网络安全社区分享了一些发现。自那以后,我们一直在积极监控Tycoon 2FA钓鱼页面的基础设施、利用工具包的活动、源代码更新以及所谓开发者的活动。我们对这个著名的PhaaS的监控揭示了,自2023年10月末到2024年2月末的几个月时间里,Tycoon 2FA已成为最广泛使用的中间人钓鱼工具包之一,我们检测到超过1100个域名。
2024年2月中旬,我们识别出一种新出现的Tycoon 2FA版本,在野外被广泛分发。这个新版本增强了其混淆和反检测能力,并改变了网络流量模式。为了应对这些发展,Sekoia分析了这些变化,并突出了新的基础设施。本博客文章旨在展示对Tycoon 2FA以及我们发现的钓鱼工具包的最新发展的深入分析。此外,本报告提供了跟踪机会,以主动监控基础设施并降低与Tycoon 2FA相关的风险。

0X01 调查Tycoon 2FA


2023年10月,我们披露了对难以察觉的钓鱼活动的威胁狩猎识别出使用大量二维码重定向到几个中间人钓鱼工具包的活动。虽然已经知晓并监视了其中的一些(例如:Caffeine、Dadsec、EvilProxy和NakedPages),但是其他的还是陌生的。分析未知的钓鱼页面,我们确认了数百个类似中间人钓鱼页面的不断增长的基础设施(如下图一)。这些相似之处包括:

  • 一个包含脚本的小型HTML页面,该脚本使用base64和XOR操作反混淆额外的脚本并执行;
  • 对相同的混淆JavaScript代码的请求,命名为"myscr[0-9]{6}.js";
  • 使用自定义CloudFlare Turnstile页面,即Cloudflare的验证码替代品,来保护钓鱼页面;
  • 对特定级联样式表(CSS)资源的请求,命名为"pages-godaddy.css"和"pages-okta.css";
  • 使用WebSocket来窃取用户输入的数据;

图一:(电子邮件附件重定向用户至Tycoon 2FA钓鱼页面)

通过使用urlscan.io对这些相似之处进行深入分析,因此我们列出了这个之前未知网络的数百个钓鱼页面。2023年10月,我们分享了以下urlscan.io的查询,以追踪使用特定资源文件名的类似钓鱼页面:filename:(“pages-godaddy.css” AND "pages-okta.css")这个启发式搜索返回的最早的钓鱼页面从同一个域名codecrafterspro[.]com检索其资源,这似乎是此网络的中心服务器。
利用DNS、注册商和WHOIS记录,我们侧重于识别出属于同一威胁行为者的域名:

域名 时间
tycoongroup[.]ws 2023-07-29
codecrafters[.]su 2023-08-09
codecrafterspro[.]com 2023-08-17
devcraftingsolutions[.]com 2023-09-07

2023年10月,codecrafters[.]sudevcraftingsolutions[.]com也托管了我们分析的钓鱼页面的资源。值得注意的是,两个域名上都发现了相同的登录面板Powered by TycoonGroup(见图二),这证实了域名tycoongroup[.]ws属于这一基础设施。在那时,该域名托管了一个网站,宣传Tycoon为“最佳的2FA绕过钓鱼平台”(见图二)。这一具体证据使Sekoia能够将这一成百上千的钓鱼页面的不断增长的基础设施与Tycoon 2FA钓鱼平台联系起来。

图二:(2023年10月Tycoon 2FA管理面板和Tycoon 2FA网站(tycoongroup[.]ws)的登录页面)

0X02 梳理Tycoon 2FA


除了一个专门的网站之外,Tycoon 2FA的运营者还自2023年10月以来通过Telegram宣传其PhaaS服务。这个威胁行为者使用的别名包括Tycoon Group、SaaadFridi以及Mr_XaaD,并在Telegram频道hxxps://t.me/tycoon_2fa_Link定期发布关于Tycoon 2FA最新更新的更新日志。这个威胁行为者,也是钓鱼工具包的所谓开发者,销售现成可用的Microsoft 365和Gmail钓鱼页面,以及附件模板,起价为10天120美元,并且根据顶级域名的不同价格会有所提高。2023年3月,钓鱼服务提供了多个域名扩展(.ru、.su、.fr、.com、.net和.org)。

图三:(名为Saad Tycoon Group的Tycoon 2FA Telegram频道的发布内容,宣传Tycoon 2FA PhaaS服务)

发布内容还包括了客户可访问的管理面板的屏幕截图。这使我们能够识别出Tycoon 2FA与另一个已知钓鱼平台之间的联系。正如我们在2023年10月在Twitter上提到的,Tycoon 2FA钓鱼平台与我们在“FLINT 2023-043 – Dadsec OTT:利用AitM钓鱼的一种新普遍PhaaS”中深入分析的Dadsec OTT钓鱼工具包有几处相似之处,该报告已于2023年11月发送给我们的客户。
首先,Dadsec OTT和Tycoon 2FA的管理面板在内容和设计上几乎完全相同,如图4所示。在这两个平台上,我们都可以在右上角找到PhaaS的标志,相同的统计数据类别(阻挡的机器人,总访问量,有效登录,单点登录和无效登录),相似的主标签(设置和清除日志),以及几乎相同的UI设计,同样的表格、按钮、字体等。其次,Dadsec OTT和Tycoon 2FA钓鱼工具包的运行方式相似。为了防止机器人流量,这两个钓鱼页面首先通过Cloudflare Turnstile对用户进行测试。它们都使用自定义HTML页面来嵌入Cloudflare的验证码替代品(见图五):
Dadsec OTT页面在Cloudflare Turnstile测试上方包含文本"While we are checking your browser…"。Tycoon 2FA页面在其之前的版本中包含与Dadsec相同的文本。在2024年,页面在Cloudflare Turnstile测试下方包括文本“此页面正在运行浏览器检查以确保您的安全”。一旦通过了挑战,这两个钓鱼页面都会展示一个模仿Microsoft身份验证的页面。这两个钓鱼工具包检索、反混淆和处理假身份验证页面的工作流程有所不同。

图四:(Dadsec OTT与Tycoon 2FA管理面板仪表板的比较)

图五:(Tycoon 2FA钓鱼工具包使用的自定义页面嵌入了Cloudflare Turnstile)

Sekoia分析师高度自信地评估,Tycoon 2FA PhaaS的所谓开发者曾访问并部分重用了Dadsec OTT钓鱼工具包的源代码。Tycoon 2FA的开发者复制了Dadsec OTT管理面板的代码,并开发了新的AiTM钓鱼工具包的核心功能,包括钓鱼页面的前端HTML代码和身份验证过程的后端代码,这是有可能的。我们在2023年10月分析的Dadsec源代码的泄露支持了这一假设,因为Tycoon 2FA的开发者可能通过这一泄露来启动其新的PhaaS项目。另一种可能是,Tycoon 2FA的开发者是Dadsec OTT的客户,并能访问前端代码。进一步搜集额外的证据,如Tycoon 2FA的源代码,可能有助于证实或反驳这些假设。

0X03 分析Tycoon 2FA


此报告提供的技术分析基于2024年2月中旬发布的Tycoon 2FA新版本。根据Sekoia对Tycoon 2FA钓鱼页面的追踪,最早观察到这个新版本的页面是在2024年2月12日野外出现的。这个版本的一个例子可以在hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/找到,该页面通过urlscan[.]iohttps://urlscan.io/result/1876f332-e54f-4d24-9a42-d703e80cc9ec/进行了扫描。
Tycoon 2FA钓鱼工具包的工作方式我们的分析主要基于“面向受害者”的互动。我们无法访问Tycoon 2FA钓鱼工具包的源代码,这意味着我们不能研究敌对基础设施的后端。钓鱼工具包依赖于AiTM技术,涉及一个攻击者服务器(也称为反向代理服务器)托管钓鱼网页,截取受害者的输入并将其转发给合法服务,并促使MFA请求。一旦用户完成MFA挑战,并且认证成功,服务器在中间捕获会话cookie。窃取的cookie允许攻击者重放一个会话,因此即使凭据在此期间已被更改,也能绕过MFA。
以下是Tycoon 2FA钓鱼工具包特定的主要操作的全面概述:

图六:(截至2024年3月的Tycoon 2FA钓鱼工具包的主要操作概述)

Stage0 钓鱼页面

Tycoon 2FA PhaaS的客户主要使用来自URL和二维码的重定向来分发他们的钓鱼页面,这些都嵌入在电子邮件附件或邮件正文中。Tycoon 2FA服务为其客户提供钓鱼附件模板(HTML页面),旨在提供现成的诱饵文档,并使网络犯罪分子更容易开展他们的活动。
例如,一些PDF使用人力资源、金融或安全主题的诱饵,以说服目标按照步骤进行,直至分享他们的凭据和解决MFA挑战。Sekoia观察到的假冒文档有模仿DocuSign、Microsoft、Adobe等多种形式(见图1)。Tycoon 2FA客户进行的大多数钓鱼活动似乎都在对全球组织进行针对性攻击,通过发送大量钓鱼邮件。一些客户专注于识别和针对金融、会计或高管部门的员工,利用他们的访问权限进行诈骗或使用特权信息。

Stage1 Cloudflare Turnstile

当用户点击钓鱼URL时,会被重定向到一个嵌入了Cloudflare Turnstile挑战的页面(见附件1),以防止不希望的流量。以下是一些URL的示例:

hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/;
hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/Xred@act.ed;
hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/Xbase64(red@act.ed)

这个页面的HTML代码包含:

  1. 一个样式属性,带有实现无限加载的CSS代码;
  2. 一个脚本属性,请求一个所谓的中央指挥与控制(C2)服务器,并接收“0”或“1”:

    如果请求返回“0”,脚本将反混淆并写入第二个HTML代码,即嵌入Cloudflare Turnstile挑战的页面;
    如果请求返回“1”,脚本将进入下一步,即假冒Microsoft钓鱼页面提示输入电子邮件地址;

  3. 一个base64和XOR混淆的HTML代码导入Cloudflare Turnstile挑战,并显示定制文本“此页面正在运行浏览器检查以确保您的安全”。它包含一个执行以下操作的脚本:

    运行Cloudflare Turnstile;
    将信息泄露到可能属于Tycoon 2FA客户的钓鱼域。POST请求发送以下数据:“pagelink”,“bltdip”(用户的IP地址),“bltdref”(钓鱼页面的URL),“bltdua”(User-Agent)和“bltddata”。C2服务器以“成功”或“错误”响应;
    当收到C2服务器的“成功”时,重新加载页面;
    当收到“错误”时重定向到另一个页面。

有趣的是,挑战下方显示的定制文本是Tycoon 2FA钓鱼工具包特有的,使我们能够迅速识别出这个PhaaS的钓鱼页面。下一步对应于用户继续进行Cloudflare Turnstile挑战的验证,并从C2服务器收到“成功”的常见情况。

Stage2 电子邮件

这个阶段对用户不可见,因为它在后台执行JavaScript代码,然后根据是否存在电子邮件地址将用户重定向到另一个页面。对于这个阶段,URL与前一个相同,因为页面是重新加载的。因此,它可以是:

hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/;
hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/Xred@act.ed;>hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/Xbase64(red@act.ed)

这个页面的HTML代码包含一个JavaScript代码,它使用正则表达式从URL中提取电子邮件地址(如果包含电子邮件地址),覆盖使用base64编码的电子邮件地址和明文电子邮件地址。然后它重定向到相同的URL,但是分隔符“?”后面的字符不同,这取决于电子邮件地址的存在和格式。下一阶段URL的例子是:

hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/?
hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/?rred@act.ed”;>hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/?rrred@act.ed;

值得注意的是,分隔符"?"和电子邮件地址之间的字符据称是由C2服务器随机生成的。

Stage3 重定向

页面此阶段对用户来说也是不可见的,因为它会重定向到钓鱼域的另一个网页。HTML代码仅包含“Redirecting to”文本和下一阶段的URL,在HTML标题和正文中均有显示。下一阶段URL的示例是:

hxxps://i9152.cisele0[.]com/lbuakdidnqmytlcBiVbomCGYTSPFFZAABOLJGWUCZHXZKPGZOQRAVFAAF?317727838333203306556902opEXJOOmXGJPZNFTJIXPAAFUILTKKRQQEFFSNIABRZNUPXEUOAKDATDS

Stage4 Microsoft身份验证

HTML代码是一个脚本属性,它嵌入了一个反混淆函数和混淆的HTML代码,这是假冒的Microsoft身份验证页面,以及其抓取特性。反混淆函数采用混淆的有效负载和XOR密钥作为参数,解码base64编码的有效负载,并对其进行XOR运算。解码的HTML嵌入了假冒Microsoft身份验证页面的源代码,该页面下载资源,包括:
JavaScript文件:

hxxps://www.google[.]com/recaptcha/api.js
hxxps://cdn.socket[.]io/4.6.0/socket.io.min.js
hxxps://code.jquery[.]com/jquery-3.6.0.min.js
钓鱼页面背景图像和图标;
如果身份验证过程成功重定向URL

它还包含超过260行的JavaScript代码,旨在:

使用User-Agent对用户的Web浏览器进行指纹识别;
使用已下载的库“socket.io.min.js”与钓鱼页面相同域的C2服务器启动WebSocket;
施Socket通信;
捕获并泄露用户输入;
检索最终的重定向URL。

在JavaScript代码结束时,它会下载并执行一个额外的高度混淆的JavaScript,它实施了两因素认证(2FA)挑战。
JavaScript代码URL的例子是:

hxxps://i9152.cisele0[.]com/34S7EHRE0DB8QrFfvijoRMsX632e0GRF8rZ89110

Stage5 2FA中继

JavaScript代码与上一个阶段的HTML互动,构建并显示Microsoft 2FA页面。代码使用大量的变量重命名为十六进制模式(例如_0x40e211;_0x2db5;_0x5e1add),字符串操作(例如分割,提取,串联),函数叠加,和其他代码转换进行混淆。TDR分析师评估,Tycoon 2FA的开发者可能使用了GitHub上可用的开源工具javascript-obfuscator来混淆这个阶段。如果使用电子邮件地址和密码的第一步身份验证成功,那么JavaScript代码就负责处理用户交互和钓鱼页面的表单验证。它还会用假冒的Microsoft页面更新HTML页面,实现2FA方法。为此,它根据用户的输入和Microsoft服务器的响应实施了许多条件语句。钓鱼页面上显示的一些元素也通过WebSockets接收,包括最终的重定向页面,或者如果Microsoft API拒绝2FA挑战的错误消息。
基于用户Web浏览器接收的JavaScript代码,Tycoon 2FA实施了以下2FA方法:

推送通知
一次性密码
短信电话验证

使用商业代理服务器,Tycoon 2FA钓鱼页面将用户输入的数据,包括电子邮件地址、密码和2FA代码,中继到合法的Microsoft身份验证API。对Microsoft API流量的响应会将适当的页面和信息返回给用户。

Stage6 重定向

Tycoon 2FA钓鱼工具包的最后阶段涉及将用户重定向到网络罪犯指定的URL。Stage4阶段的JavaScript代码嵌入了一个终端URL,在变量"urlo"中,旨在返回最终的重定向URL。当认证成功时,钓鱼页面发送一个POST请求到这个终端,带有一个在WebSocket通信过程中设置的会话标识符("pagelink")和其他信息。
然后,C2服务器响应重定向URL。Tycoon 2FA PhaaS的大多数客户使用默认的重定向URL,即hxxps://login.microsoftonline[.]com/common/SAS/ProcessAuth。随后,我们观察到一个威胁行为者使用了一个不存在的WeTransfer URL:hxxps://wetransfer[.]com/invoicedocument。这种用法可能与一封钓鱼电子邮件有关,它假装用户必须在Microsoft 365上进行认证才能访问文档。一旦通过Tycoon 2FA钓鱼页面进行了认证,用户就会被重定向到这个合法的"not found"网页,这可能导致他们不怀疑之前的页面是恶意的。对于默认重定向URL也是如此,它会将用户重定向到合法的Microsoft网站的错误页面。

图七:(在Tycoon 2FA钓鱼页面成功认证后,重定向到一个不存在的WeTransfer网页)

最后,钓鱼页面再次通过HTTP POST请求将一些受害者详情传送给C2服务器。发送的数据包括会话标识符("pagelink")、从httpbin[.]orgAPI获取的IP地址、User-Agent和其他信息。就这种通信的冗余性而言,Sekoia分析师认为,开发者并没有在优化钓鱼工具包的代码上投入大量努力,这表明这个钓鱼工具包并不像Caffeine等一些其他PhaaS竞争者那样复杂。

0X04 WebSockets数据泄露


从伪造的Microsoft页面的渲染到用户关闭钓鱼页面的过程中,C2服务器使用WebSockets收集获取的数据和操作状态。它还向用户的网络浏览器传送一些元素,以构建下一个钓鱼页面。
启动WebSockets通信的URL示例是:hxxps://i9152.cisele0[.]com/web6socket/socket.io/?type=User&appnum=1&EIO=4&transport=websocket。以下是使用Microsoft Authenticator作为2FA进行成功认证的Tycoon 2FA WebSocket通信的主要步骤(客户端为用户的网络浏览器):

通讯步骤 特征
WebSocket 的启动(server to client) {“sid”:”4KP6W7ZLo_GpdtK9AF6E”,”upgrades”:[],”pingInterval”:1000,”pingTimeout”:60000,”maxPayload”:1000000}
泄露用户详细信息 (client to server) [“send_to_browser”,{“route”:”enteremail”,”arguments”:[“<EMAIL ADDRESS”,”<session id="">”,”chrome”,”<ip address="">”],”getresponse”:1}]</ip></session>
状态更新(client to server) [“browser_connected”,”4572″]
服务器的响应(server to client) [“response_from_browser”,{“message”:”correct email”,”bottomsection”:[{“a_text”:”Forgot my password”,”a_id”:”idA_PWD_ForgotPassword”,”type”:”link”}],”backbutton”:1}]
泄露用户密码(client to server) [“send_to_browser”,{“route”:”enterpassword”,”arguments”:[“<password>”],”getresponse”:1}]</password>
服务器的响应(server to client) [“response_from_browser”,{“message”:”approve auth request auth app”,”bottomsection”:[{“a_text”:”I can’t use my Microsoft Authenticator app right now”,”a_id”:”signInAnotherWay”,”type”:”link”},{“a_text”:”More information”,”a_id”:”moreInfoUrl”,”type”:”link”}],”backbutton”:0,”authappcode”:”39″,”description”:{“type”:”text”,”text”:”Open your Authenticator app, and enter the number shown to sign in.”},”image_src”:”<icon_link>”}]</icon_link>
客户端确认(client to server) [“send_to_browser”,{“route”:”responserecieved”,”arguments”:[],”getresponse”:0}]
→ 等待 2FA 验证Authenticator) (client to server) [“send_to_browser”,{“route”:“waitauth”,“arguments”:[“app”],“getresponse”:1}]

通过WebSocket通信泄露的搜集到的认证信息在最新版本的Tycoon 2FA钓鱼工具包中保持不变。

0X05 WebSockets数据泄露


最新版本的主要变化Tycoon 2FA的最新版本对负责其主要钓鱼能力的JavaScript和HTML代码进行了更改。此外,钓鱼页面以不同的顺序获取其各种资源,并更广泛地过滤不需要的流量,以阻止来自机器人或分析的流量。为了识别最新版本引入的主要变化,下面是前一个版本如何工作的概述,以及与我们对新版本分析的比较:

1.第一个HTML页面包含一段JavaScript代码,用于对Web浏览器进行指纹识别、对下一阶段URL进行反混淆并重定向到下一阶段。

此阶段与新版本的Stage1阶段类似,但不嵌入Cloudflare Turnstile

2.下一阶段的有效负载是一段混淆的JavaScript代码,以特征模式/myscr[0-9]{6}.js命名,它对应于伪造的Microsoft身份验证页面,并且还嵌入了Cloudflare Turnstile质询。假冒Microsoft登录页面的HTML代码在一个大型整数数组中被编码为unicode。

此阶段包括新版本Stage4阶段(登录页面)和Stage1阶段(CloudFlare Turnstile)的一部分

3.旧版本下载以下三个JavaScript代码:

/web6/assets/js/pages-head-top-web.min.js,下载WebSocket JavaScript库和第二个JavaScript代码;
/web6/assets/js/pages-head-web.min.js,使用WebSocket实现2FA并下载第三个JavaScript代码;
/web6/assets/js/pages.min.js,构建2FA挑战网页;此阶段现在是Stage4阶段和Stage5阶段的一部分。

4.它使用多个POST请求将数据发送到/web6/info,并检索HTML代码以构建2FA挑战网页。
通过比较Tycoon 2FA钓鱼工具包的两个版本,我们发现了相似的去混淆功能和核心功能。然而,对于不同阶段的结构进行了显著的改变。特别是,在用户解决Cloudflare Turnstile挑战后提供恶意资源的隐蔽策略得到了增强。并且现在使用伪随机名称设置URL。
此外,钓鱼工具包开发者似乎扩展了工具包的能力,以识别和避开更多与分析或扫描环境相关的流量模式。这包括托管在数据中心的IP地址或与Tor网络相关的IP地址,以及特定的机器人User-Agent字符串和某些版本的Linux Web浏览器。这些变化表明有意地提高钓鱼工具包的隐蔽性和逃避技术,以增强其抵御检测和分析的能力。

0X06 检测AiTM钓鱼攻击


Sekoia分析师通过追踪钓鱼URL积极监控Tycoon 2FA的钓鱼基础设施。为了应对2024年2月中旬对钓鱼工具包所做的改变,我们更新了我们的跟踪启发式,以揭示托管Tycoon 2024新版本的基础设施。
如上文所述,Tycoon 2FA的旧版本使用具有特征模式或硬编码名称的JavaScript文件。我们基于URL模式的一些基本启发式源自Tycoon 2FA的请求。Sekoia分析师在urlscan[.]io上使用了类似于以下的查询:

  • filename:("pages-godaddy.css” AND “pages-okta.css")

此查询依赖于钓鱼工具包用来复制登录页面的两个CSS文件的特定名称。到2024年3月,这个启发式在urlscan上产生了超过3000个结果,全部与Tycoon 2FA钓鱼页面高度相关。

  • filename.keyword:/.*\/myscr[0-9]{6}\.js/ filename:”turnstile/v0/api.js

此查询基于嵌入伪造的Microsoft登录页面和Cloudflare Turnstile挑战的JavaScript代码的特定生成名称。到2024年3月,这个启发式在urlscan上产生了超过4000个结果,全部与Tycoon 2FA钓鱼页面强烈相关

  • filename:("/web6/assets/js/pages-head-top-web.min.js” OR “/web6/assets/js/pages-head-web.min.js")
    此查询基于执行Tycoon 2FA钓鱼工具包核心功能的特定JavaScript代码的名称,例如使用WebSockets泄露数据,以及动态构建2FA中继页面。到2024年3月,这种启发式在urlscan上产生了约3000个结果,与Tycoon 2FA钓鱼页面高度相关。
    然而,Tycoon 2FA近期的变化导致这些特定资源的重命名和修改。同时,这些资源在解决Cloudflare Turnstile挑战之前不会被加载。因此,最新版本的钓鱼页面在被URL扫描服务分析时不再加载这些特定资源。

当使用最新版本扫描Tycoon 2FA钓鱼页面时,仅发送第0和第1阶段的请求,因为必须首先解决Turnstile挑战。如果钓鱼页面的URL前没有重定向步骤,扫描将导致5个请求,例如:

Requests for stage 0 and 1 解释
GET hxxps://i9152.cisele0[.]com/NOZcbtTxxEiGj/ Tycoon 2FA 钓鱼页面
GET hxxps://7374.ginvet9[.]com/ Central server to approve the Turnstile challenge
GET hxxps://code.jquery[.]com/jquery-3.6.0.min.js Jquery库
GET hxxps://challenges.cloudflare[.]com/turnstile/v0/api.js?render=explicit Cloudflare Turnstile
GET hxxps://challenges.cloudflare[.]com/cdn-cgi/challenge-platform/h/g/turnstile/if/ov2/av0/rcv0/0/8jtx6/0x4AAAAAAAS4S8P1a9d4qbbW/auto/ Cloudflare Turnstile

要在urlscan[.]io上找到一个启发式以列出使用最新版本的Tycoon 2FA钓鱼页面,我们可以使用以下元素:

  • C2服务器的响应哈希值,大多返回“0”来批准挑战显示(SHA256: 5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9);
  • Turnstile挑战之前,钓鱼页面请求的资源;
  • 发送有限数量的请求(如果没有重定向步骤,则为5个),且接收的数据总量不超过150KB

Sekoia分析师在urlscan上使用类似的查询,如下所示:

  • filename:("code.jquery.com/jquery-3.6.0.min.js” AND “challenges.cloudflare.com/turnstile/v0/api.js") hash:5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9

此查询使用了中央C2服务器响应的哈希值。到2024年3月,该启发式在urlscan上产生了超过500个结果,我们以高度置信度将其与Tycoon 2FA钓鱼页面关联。

  • filename:("code.jquery.com/jquery-3.6.0.min.js" AND “challenges.cloudflare.com/turnstile/v0/api.js”) stats.requests:<7 stats.dataLength:<150000

此查询使用了请求的数量和所有资源的数据大小。到2024年3月,该启发式在urlscan上产生了超过700个结果,我们以中等置信度将其与Tycoon 2FA钓鱼页面关联。
如今,追踪Tycoon 2FA变得更加复杂,因为开发者增强了钓鱼工具包的隐蔽能力。即使我们不能继续使用具有特征性的文件名来追踪钓鱼页面,Sekoia因此通过将合法资源名称与中央C2服务器的响应,或数据的长度以及资源的大小相关联,找到了合适的方法。

0X07 结论


Tycoon 2FA的首次是在2023年8月,Tycoon 2FA是一个中间人钓鱼工具包,按照服务化钓鱼(Phishing-as-a-Service, PhaaS)模型分发。它的主要目标是收集Microsoft 365会话cookie,以在后续认证过程中绕过多因素认证(MFA)Tycoon 2FA在发布后的几个月内变得广泛流行,并且目前在众多钓鱼活动中被大量使用。我们对Tycoon 2FA主要操作的分析揭示,开发者在最新版本的钓鱼工具包中增强了隐蔽能力。最近的更新可能降低了安全产品对Tycoon 2FA钓鱼页面和基础设施的检测率。此外,它的易用性和相对低廉的价格使其在威胁行为者中非常流行。
Sekoia积极监视Tycoon 2FA的钓鱼基础设施,自2023年8月以来已识别出超过1200个域名。使用上述共享的跟踪启发式方法,我们将继续积极监视基础设施。通过研究据称归属于Saad Tycoon Group的比特币交易,Sekoia分析师认为Tycoon Group的操作非常有利可图,我们预计Tycoon 2FA PhaaS将在2024年继续在AiTM钓鱼市场中保持显著威胁。
为了为我们的客户提供可操作的情报,TDR分析师将继续监控流行的PhaaS,并积极搜索相关基础设施。

IoC

0q5e0.nemen9[.]com
25rw2.canweal[.]com
35fu2.ouchar[.]ru
4343w.jgu0[.]com
43rw98nop8.m1p8z[.]com
4m2swl.7e2r[.]com
5me78.methw[.]ru
6j312 .rchan0[.]com
77p3e.rimesh3[.]com
8000n.uqin[.]ru
8uecv.gnornamb[.]com
98q5e.ructin[.]com
9c43r.theq0[.]com
9oc0y2isa27.demur3[.]com
beacon.diremsto[.]com
bloggcenter[.]com
buneji.fiernmar[.]com
e85t8.nechsha[.]com
ex1uo.rhknt[.]ru
explore.atlester[.]ru
fiq75d.rexj[.]ru
fisaca.trodeckh[. ]com ]com
galume.aricente[.]com
gz238.uatimin[.]com
Horizo​​n.sologerg[.]com
jp1y36.it2ua[.]com
k348d.venti71[.]com
kjlvo.ningeona[.]com
kjsdflwe.nitertym[.] ru
l846d.ferver8[.]com
libudi.oreversa[.]com
n29k4.ilert[.]ru
n9zph.lw8opi[.]com
o6t94g.3tdx2r[.]com
oo99v.coqqwx[.]ru
p1v12.17nor[.]com
pmd8ot6xhw.3qjpc[.]com
q908q.refec7[.]com
r298y.sem01[.]com
rlpq.tk9u[.]com
roriku.orankfix[.]com
tlger-surveillance[.]com
tnyr.moporins[.]com
wasogo .shantowd[.]com
x12y.restrice[.]ru
xrs.chenebystie[.]com
xva.tjlpkcia[.]com
zaqaxu.dthiterp[.]ru
zekal6.tnjxb[.]com
zemj4f.ymarir[.]ru

加密货币钱包地址

19NReVFKJsYYCCFLq1uNKYrUqQE2bB4Jwx

外部参考:

https://twitter.com/sekoia_io/status/1717891843105366409 ↩︎
https://twitter.com/sekoia_io/status/1717891849153610153 ↩︎
https://github.com/javascript-obfuscator/javascript-obfuscator/ ↩︎
https://blockexplorer.one/bitcoin/mainnet/address/19NReVFKJsYYCCFLq1uNKYrUqQE2bB4Jwx ↩︎

0 条评论
某人
表情
可输入 255