Skip to main content

Command Palette

Search for a command to run...

Tycoon2FA: Khi Takedown Không Phải Là Kết Thúc — Phân Tích Chiến Dịch PhaaS Phục Hồi Sau Triệt Phá

Updated
15 min read
Tycoon2FA: Khi Takedown Không Phải Là Kết Thúc — Phân Tích Chiến Dịch PhaaS Phục Hồi Sau Triệt Phá

Tóm tắt

Ngày 4/3/2026, liên minh gồm Europol, Microsoft, Trend Micro, Cloudflare và các đối tác thực thi pháp luật tại 6 quốc gia đã đánh sập Tycoon2FA — nền tảng Phishing-as-a-Service (PhaaS) chiếm tới 62% tổng số cuộc tấn công AiTM (adversary-in-the-middle) bị Microsoft chặn vào đầu 2026, tương đương hơn 30 triệu email độc hại mỗi tháng. Tổng cộng 330 domain cấu thành hạ tầng cốt lõi của nền tảng bị thu giữ.

Kết quả: trong ngày 4 và 5/3, lưu lượng tấn công giảm xuống còn 25% mức bình thường. Sau đó, mọi thứ trở lại như cũ — trong vài ngày.

Đây là câu chuyện về lý do tại sao takedown hạ tầng không đủ để tiêu diệt một nền tảng PhaaS trưởng thành, và Tycoon2FA đang tiếp tục tiến hóa ra sao sau khi phục hồi.

Cập nhật mới nhất (tháng 5/2026): Tycoon2FA đã tích hợp kỹ thuật device code phishing — lạm dụng OAuth 2.0 Device Authorization Grant flow của Microsoft để chiếm quyền truy cập Microsoft 365 mà không cần đánh cắp password hay bypass MFA theo cách truyền thống. Người dùng bị lừa xác thực trên hạ tầng Microsoft hợp lệ, nhưng vô tình cấp OAuth token cho thiết bị do kẻ tấn công kiểm soát.


Bối cảnh: Tycoon2FA là gì và tại sao đây là mối đe dọa quan trọng

Lịch sử hình thành

Tycoon2FA xuất hiện lần đầu vào khoảng tháng 8/2023. Không như các phishing kit thông thường, đây là một nền tảng PhaaS hoàn chỉnh — cung cấp infrastructure, panel quản lý chiến dịch, và kỹ thuật bypass MFA như một dịch vụ thuê bao cho khoảng 2.000 subscriber và hàng nghìn tội phạm mạng.

Mô hình kinh doanh của nó đơn giản và hiệu quả: khách hàng trả phí, nhận access vào panel điều khiển, tự thiết lập chiến dịch phishing AiTM nhắm vào Microsoft 365 và các nền tảng đám mây khác. Tycoon2FA xử lý phần kỹ thuật phức tạp — relay session thời gian thực, bypass MFA, obfuscation — để khách hàng không cần kỹ năng cao vẫn có thể thực hiện tấn công hiệu quả.

Timeline:

  • 2023: Ra mắt, bắt đầu nhắm vào Microsoft 365
  • Giữa 2025: Chiếm 62% tổng AiTM phishing bị Microsoft chặn, hơn 30 triệu email/tháng
  • Cuối 2025: Được ghi nhận hybridize với Salty 2FA
  • Jan–Feb 2026: Gia tăng chiến dịch dùng TLD mới và hybrid kits
  • 4/3/2026: Europol/Microsoft takedown — 330 domain bị thu giữ
  • Cùng ngày 4/3: Operators bắt đầu rebuild (theo CrowdStrike)
  • 24/3/2026: Chiến dịch mới được xác nhận hoạt động từ infrastructure Nga
  • Tháng 4/2026: Trở về mức hoạt động bình thường
  • Tháng 5/2026: Tích hợp device code phishing — vector tấn công hoàn toàn mới Tycoon2FA đã nhắm vào các tổ chức thuộc nhiều lĩnh vực: giáo dục, y tế, tài chính, chính phủ, phi lợi nhuận. Microsoft định danh operator chính là Storm-1747. Civil complaint do Microsoft và Health-ISAC nộp đặt tên cá nhân nghi phạm là Saad Fridi.

Phân Tích Kỹ Thuật: Chuỗi Tấn Công 7 Giai Đoạn (Sau Takedown)

Abnormal AI đã phân tích chiến dịch được xác nhận hoạt động ngày 2/4/2026 — 20 ngày sau takedown — chạy từ infrastructure mới đăng ký tại Nga. Đây là phân tích đầy đủ của chuỗi tấn công.

Tycoon2FA attack flow diagram

Giai đoạn 1: Lure Page trên AWS S3

Trang lure là bản clone Microsoft Power Pages portal, host trên AWS S3 bucket. Nội dung giả mạo thông báo chia sẻ file OneDrive: "You have received files from a member of External Client Share for your review" với procurement lure — "RFQ/#PO Enquiry - Microsoft Spreadsheet."

Template Power Pages (v9.7.3.10) được clone từ Azure tenant thật thuộc khu vực Saudi Arabia, mang theo đầy đủ Microsoft framework code, telemetry scripts và styling hợp lệ. Sau 3 giây, setTimeout redirect nạn nhân đến giai đoạn tiếp theo.

Tại sao S3? URL của S3 bucket mang domain reputation của AWS, vượt qua phần lớn URL reputation check sẽ flag domain mới đăng ký.

Redirect đến một instance 66biolinks — nền tảng quản lý link thương mại (bản nulled/pirate) chạy trên infrastructure do kẻ tấn công kiểm soát. Mục đích kép: thêm redirect hop che giấu destination cuối khỏi email gateway scanner, đồng thời cung cấp URL shortening và tracking cho operator.

Infrastructure: LiteSpeed + CyberPanel trên IPXO-leased IP (212.81.47.99), fronted bởi Cloudflare.

Giai đoạn 3: IP Blocklist Gate

Trước khi hiển thị bất kỳ nội dung phishing nào, JavaScript query ipinfo[.]io để kiểm tra tổ chức sở hữu IP của visitor. Nếu IP thuộc 16 cloud/hosting provider được hardcode, visitor bị redirect đến các ecommerce platform hợp lệ (Volusion, PrestaShop, Ecwid, Square).

Kỹ thuật đáng chú ý: tên các cloud provider được lưu đảo ngược (ví dụ: "etatssewa" thay vì "awsstate") để tránh static string scanning.

Giai đoạn 4: Dual Fake CAPTCHA Gates

Visitor vượt qua IP check sẽ thấy trang "Human Check" giả — hai CAPTCHA gate tuần tự, một trên link management platform, một trên credential harvesting domain (criopiochio[.]ru).

Kỹ thuật ẩn: hai gate dùng cùng UX nhưng với polymorphic CSS class names khác nhau (gate 1: .r0, .w2, .of4; gate 2: .o0, .f7, .ru2). Form IDs, checkbox IDs và variable names đều khác nhau giữa các lần render — tương tự với mắt người dùng, hoàn toàn khác với signature-based detection.

Hidden form dùng HTML entity obfuscation: method="POST" → giải mã thành POST.

Giai đoạn 5: Encrypted Payload — Fingerprint Không Đổi

Sau CAPTCHA thứ hai, server trả về JavaScript payload được mã hóa bằng Caesar+XOR cipher kết hợp Linear Congruential Generator (LCG). Đây là dấu vân tay mã hóa đặc trưng nhất định danh Tycoon2FA:

LCG constants: multiplier=9301, increment=49297, modulus=233280
Payload format: base64_payload : seed_integer : base64_key

Chuỗi giải mã:

  1. Generate XOR keystream từ PRNG seed với seed + decoded_key[0]
  2. Generate Caesar shift values từ PRNG seed với seed + 99
  3. Reverse Caesar cipher trên alphabetic characters theo per-position shift
  4. XOR từng byte với keystream tương ứng
  5. Execute qua eval Điểm mấu chốt: Các LCG constants này giống hệt nhau across tất cả deployment đã quan sát, kể cả pre-takedown domains (freasiju[.]ru, edistolygrag[.]ru) và chiến dịch post-takedown. Infrastructure có thể thay đổi. Fingerprint mã hóa thì không.

Kỹ thuật mới trong biến thể post-takedown: eval được gọi gián tiếp qua frames["eval"] thông qua Symbol.toPrimitive. String "eval" được trích xuất từ CSS color-like values không hợp lệ (#e64D00 → 'e', #v05235 → 'v', ...). String atob được xây dựng qua XOR: [0x63, 0x66, 0x61, 0x66] XOR [0x02, 0x12, 0x0e, 0x04].

Giai đoạn 6: Anti-Analysis Suite

Payload sau giải mã chứa bộ chống phân tích toàn diện:

Kỹ thuật Cơ chế
Automation detection Kiểm tra navigator.webdriver, window.callPhantom, window._phantom, "Burp" trong user agent → redirect about:blank
DevTools blocking Chặn toàn bộ keyboard shortcut: F12, Ctrl+U, Ctrl+Shift+I/C/J/K, Cmd+Alt+I/C; disable right-click
Debugger trap setInterval gọi debugger mỗi 100ms; nếu DevTools mở → phát hiện delay qua performance.now() → redirect ecommerce decoy
Platform blocking Blank toàn bộ page với document.write("") khi detect Linux desktop (trừ Android)

Domain-level deception: Mỗi route trên phishing domain trả về một AI-generated fake website khác nhau. URL scanner, reputation service hay analyst probe domain từ góc độ khác sẽ không thấy nội dung phishing.

Giai đoạn 7: Kill Switch và Credential Harvesting

Trước khi render credential harvester, payload gửi GET request đến C2 kill switch. Phản hồi "0" → campaign active; giá trị khác → redirect sang trang benign.

Kill switch domains: founiodrai[.]digitalziostohou[.]digital, host trên BunnyCDN (84.17.63.178) — thay thế Cloudflare bị thu giữ trong takedown.

Khi kill switch xác nhận active, JavaScript POST đến randomized endpoint với parameters bltpg (campaign identifier) và sid (per-session token). Server xác nhận {"status":"success"} và trang reload để deliver AiTM credential harvesting page — hoạt động như real-time proxy đến Microsoft login flow, capture cả credentials lẫn session token.


Cập Nhật Tháng 5/2026: Device Code Phishing — Vector Tấn Công Không Cần Đánh Cắp Password

eSentire Threat Response Unit (TRU) đã phân tích chiến dịch Tycoon2FA mới vào cuối tháng 4/2026 tích hợp OAuth 2.0 Device Authorization Grant flow — kỹ thuật device code phishing.

OAuth Device Code Flow là gì?

Đây là authentication flow được Microsoft thiết kế cho thiết bị có khả năng input hạn chế (smart TV, thiết bị IoT, máy in). Thay vì đăng nhập trực tiếp, thiết bị hiển thị một code và yêu cầu người dùng truy cập microsoft.com/devicelogin từ thiết bị khác để nhập code đó.

Tycoon2FA lạm dụng flow này như sau:

1. Kẻ tấn công khởi tạo Device Authorization Request đến Microsoft
   → Microsoft trả về: device_code + user_code + verification_uri
   
2. Email lure gửi đến nạn nhân (giả mạo voicemail notification M365)
   → Chứa user_code + link đến microsoft.com/devicelogin
   
3. Nạn nhân truy cập microsoft.com/devicelogin (domain Microsoft THẬT)
   → Nhập user_code, MFA được trigger và hoàn thành bình thường
   
4. Microsoft issue OAuth access token + refresh token
   → Token được cấp cho device_code do KẺ TẤN CÔNG kiểm soát
   
5. Kẻ tấn công có full access Microsoft 365 của nạn nhân
   → Không cần password, không cần bypass MFA

Tại sao nguy hiểm: Nạn nhân tương tác với microsoft.com thật. MFA được hoàn thành thật. Không có gì "sai" trong quy trình từ góc nhìn của người dùng — họ vừa vô tình cấp quyền truy cập cho kẻ tấn công thông qua một flow hợp lệ.

Delivery mechanism: Lure email dùng Trustifi click-tracking URL — Trustifi là platform email security hợp lệ, domain của nó có reputation tốt với email gateway. Từ click đó, nạn nhân đi qua 4-layer delivery chain mang đầy đủ Tycoon2FA tradecraft trước khi đến trang device code entry.


Kill Switch & Infrastructure IOC

# Kill Switch Domains (post-takedown)
founiodrai[.]digital      → BunnyCDN (84.17.63.178)
ziostohou[.]digital       → BunnyCDN (84.17.63.178)
 
# Credential Harvesting Domain
criopiochio[.]ru
 
# Pre-takedown domains (fingerprint reference)
freasiju[.]ru
edistolygrag[.]ru
 
# Link Management Platform
212.81.47.99              → IPXO-leased, LiteSpeed/CyberPanel, fronted Cloudflare
 
# Tycoon2FA Kit Parameter (stable across campaigns)
bltpg                     → Campaign/page identifier (POST parameter)
sid                       → Per-session token
 
# LCG Constants (cryptographic fingerprint)
multiplier: 9301
increment: 49297
modulus: 233280
 
# Trustifi click-tracking (abused for delivery)
URLs bắt đầu bằng: track.trustifi.com (hợp lệ, bị lạm dụng để ẩn destination)

MITRE ATT&CK Mapping

Phase Technique ID Tên kỹ thuật Chi tiết
Initial Access T1566.002 Phishing: Spearphishing Link Email lure với Trustifi tracking URL
Credential Access T1557 Adversary-in-the-Middle AiTM relay session — capture creds + session token
Credential Access T1528 Steal Application Access Token OAuth device code flow abuse — steal access token
Defense Evasion T1027 Obfuscated Files or Information Caesar+XOR+LCG encryption, polymorphic CSS, reversed strings
Defense Evasion T1036 Masquerading Clone Microsoft Power Pages, giả mạo OneDrive notification
Defense Evasion T1497 Virtualization/Sandbox Evasion navigator.webdriver check, debugger trap, Linux platform block
Defense Evasion T1583.008 Acquire Infrastructure: Malvertising AWS S3 lure page, BunnyCDN kill switch
Collection T1539 Steal Web Session Cookie Session cookie capture qua AiTM proxy
Persistence T1078 Valid Accounts Dùng stolen credentials/tokens để maintain access

Detection Rules

KQL (Microsoft Sentinel) — Device Code Phishing

// Phát hiện OAuth Device Code sign-in từ unfamiliar location hoặc trong thời gian ngắn bất thường
SigninLogs
| where AuthenticationProtocol == "deviceCode"
| where ResultType == 0 // Successful sign-in
| where NetworkLocationDetails == "[]" // No trusted location
| extend TimeSinceLastSignIn = datetime_diff('minute', TimeGenerated, 
    prev(TimeGenerated, 1, UserId == UserId))
| where TimeSinceLastSignIn < 5 // Suspiciously fast back-to-back device code auth
| project TimeGenerated, UserPrincipalName, IPAddress, Location, 
    AppDisplayName, AuthenticationProtocol, DeviceDetail
 
// Hunt Tycoon2FA kill switch domain lookups
DnsEvents
| where Name in ("founiodrai.digital", "ziostohou.digital", "criopiochio.ru")
| project TimeGenerated, Computer, ClientIP, Name, IPAddresses
 
// Phát hiện POST với parameter bltpg (Tycoon2FA kit fingerprint)
CommonSecurityLog
| where RequestURL contains "bltpg="
| where RequestMethod == "POST"
| project TimeGenerated, SourceIP, DestinationIP, RequestURL, RequestContext
 
// Alert trên sign-in từ OAuth Device Code sau khi nhận email từ domain lạ
union SigninLogs, EmailEvents
| where AuthenticationProtocol == "deviceCode" or EmailDirection == "Inbound"
| summarize DeviceCodeSignIns = countif(AuthenticationProtocol == "deviceCode"),
    InboundEmails = countif(EmailDirection == "Inbound")
  by UserPrincipalName, bin(TimeGenerated, 1h)
| where DeviceCodeSignIns > 0 and InboundEmails > 0

KQL — AiTM Session Token Replay

// Phát hiện session token được sử dụng từ IP khác với IP đăng nhập ban đầu
let InitialSignIn = SigninLogs
    | where ResultType == 0
    | project UserId, SessionId, InitialIP = IPAddress, InitialTime = TimeGenerated;
SigninLogs
| where ResultType == 0
| join kind=inner InitialSignIn on UserId, SessionId
| where IPAddress != InitialIP
| where TimeGenerated > InitialTime
| project TimeGenerated, UserId, UserPrincipalName, 
    OriginalIP = InitialIP, ReplayIP = IPAddress, 
    TimeDelta = datetime_diff('minute', TimeGenerated, InitialTime)
| where TimeDelta < 60 // Token replay trong vòng 1 giờ

Sigma Rule — Tycoon2FA LCG Payload Fingerprint

title: Tycoon2FA Cryptographic Fingerprint in JavaScript Payload
id: t2fa-001-lcg-fingerprint
status: experimental
description: >
  Detects Tycoon2FA's stable LCG constants used in Caesar+XOR payload encryption.
  Constants 9301/49297/233280 have remained unchanged across all observed deployments.
author: SOC Team
date: 2026/05/26
references:
  - https://abnormal.ai/blog/tycoon2fa-post-takedown-rebuild
logsource:
  category: proxy
detection:
  selection:
    cs-uri-query|contains:
      - '9301'
      - '49297'
      - '233280'
  selection_param:
    cs-uri-query|contains: 'bltpg'
  condition: selection_param
falsepositives:
  - Mathematical applications using similar constants (extremely unlikely in combination)
level: high
tags:
  - attack.credential_access
  - attack.t1557
  - attack.t1528

Nhận Định Chuyên Gia

Về bài học từ takedown:

Kết quả của ngày 4/3/2026 là 330 domain bị thu giữ, lưu lượng tấn công giảm xuống 25% trong 2 ngày, rồi trở về bình thường. Đây không phải thất bại của law enforcement — đây là đặc điểm cấu trúc của PhaaS hiện đại.

Nền tảng Tycoon2FA không tồn tại trong 330 domain đó. Nó tồn tại trong codebase, cryptographic fingerprint, subscriber network, và operational knowledge của operators. Infrastructure là disposable. Phần còn lại thì không.

Về device code phishing:

Đây là bước leo thang quan trọng nhất trong evolution của Tycoon2FA. AiTM truyền thống vẫn cần người dùng gõ credentials vào trang giả — có thể phát hiện nếu người dùng kiểm tra URL. Device code phishing hoàn toàn loại bỏ yếu tố này: nạn nhân tương tác với microsoft.com thật, hoàn thành MFA thật, và không có gì để nhận ra là đã bị tấn công.

Điều đáng lo ngại hơn: tháng 5/2026 cũng chứng kiến Kali365 (PhaaS mới nổi trên Telegram từ tháng 4/2026) và EvilTokens cùng adopt device code phishing. Đây không còn là kỹ thuật của riêng Tycoon2FA — đây đang trở thành standard trong PhaaS ecosystem.

Về relevance đối với tổ chức tại Việt Nam:

Microsoft 365 là nền tảng được sử dụng rộng rãi trong enterprise Việt Nam. Từ góc nhìn SOC, hai điểm cần ưu tiên kiểm tra:

  1. OAuth Device Code flow có đang bị hạn chế trong Conditional Access policy không? Đa số tổ chức để flow này mở mặc định vì đây là feature hợp lệ của Microsoft.
  2. Có đang monitor SigninLogs cho authenticationProtocol == "deviceCode" không? Đây là signal phát hiện sớm quan trọng, đặc biệt khi kết hợp với các dấu hiệu phishing khác.

Khuyến Nghị

Immediate (0–24h)

  • Restrict OAuth Device Code flow trong Conditional Access nếu không có nhu cầu sử dụng hợp lệ:
    Azure AD → Conditional Access → New Policy
    Users: All users
    Cloud apps: All cloud apps
    Conditions: Authentication flows → Device code flow → Yes
    Grant: Block
    
  • Block IOC đã biết: Domain founiodrai[.]digital, ziostohou[.]digital, criopiochio[.]ru tại DNS/proxy/firewall.
  • Hunt POST với bltpg= parameter trong proxy/WAF logs — đây là Tycoon2FA-specific parameter.

Short-term (1–7 ngày)

  • Deploy KQL detection rules cho device code phishing và AiTM session token replay vào Sentinel.
  • Enable Token Protection (Token Binding) cho Microsoft 365 critical apps — đảm bảo captured token không thể replay từ thiết bị/location khác.
  • Review Sign-in Logs cho authenticationProtocol == "deviceCode" trong 30 ngày qua — tìm sign-in bất thường từ location/device không quen.
  • User awareness: Train người dùng nhận diện device code phishing lure — đặc biệt email voicemail notification yêu cầu truy cập microsoft.com/devicelogin.

Long-term

  • Phased Conditional Access maturity: Tiến đến mô hình Zero Trust — mọi authentication context đều phải được verify, kể cả những flow "hợp lệ" của Microsoft.
  • SIEM alert trên OAuth token issuance cho device code flow kết hợp với inbound email từ unknown sender trong cùng time window.
  • Threat hunting hypothesis: "Có tài khoản nào receive device code authentication request sau khi click link từ external email không?" — Hunt này nên chạy định kỳ.

Tài Liệu Tham Khảo

  1. Abnormal AI — Tycoon2FA Rebounds Post-Takedown with 6 Layers of Obfuscation
  2. BleepingComputer — Europol-coordinated action disrupts Tycoon2FA phishing platform
  3. BleepingComputer — Tycoon2FA hijacks Microsoft 365 accounts via device-code phishing
  4. BleepingComputer — Tycoon2FA phishing platform returns after recent police disruption
  5. eSentire TRU — Tycoon 2FA Operators Adopt OAuth Device Code Phishing
  6. Microsoft On the Issues — How a global coalition disrupted Tycoon 2FA

More from this blog

F

FPT IS Security

801 posts

Dedicated to providing insightful articles on cybersecurity threat intelligence, aimed at empowering individuals and organizations to navigate the digital landscape safely.