Report an Incident Become a Partner Careers Contact
Book a Demo
Threat Research

Teams Helpdesk Impersonation: Detecting Cross-Tenant Attacks

C CYBERSHIELD Threat Intelligence Team · Threat Intelligence, Wizard Cyber 21 July 2026 14 min read
Cross-tenant helpdesk impersonation in Microsoft Teams leading to data exfiltration

Introduction

A sophisticated and increasingly prevalent attack chain has been observed where threat actors abuse Microsoft Teams’ external collaboration capabilities to impersonate IT or helpdesk personnel, social-engineer users into granting remote desktop access, and then systematically pivot across the enterprise toward domain controllers, sensitive data stores and cloud infrastructure. Unlike traditional email phishing, this campaign exploits a collaboration workflow that users instinctively trust: an inbound “support call” from what appears to be an internal IT team.

Once the user grants remote access via Quick Assist or similar tools, attackers move fast. Reconnaissance takes under two minutes, payload staging follows immediately, and lateral movement toward domain controllers can occur within the same session. The campaign concludes with Rclone-based exfiltration of business-relevant documents to attacker-controlled cloud storage.

Any organisation using Microsoft Teams with external collaboration enabled is a potential target. The attack requires no vulnerability, no malware delivered via email, and no exploit — only a user who trusts an unsolicited support interaction.

Technical Details

Threat overview

The intrusion chain begins with a cross-tenant Microsoft Teams message where the attacker impersonates helpdesk personnel using lures such as “Microsoft Security Update”, “Spam Filter Update” or “Account Verification”. Voice phishing is often layered on top to increase urgency and compliance. In some cases this initial contact is preceded by a mailbombing event, followed by a “helpdesk assistance” message designed to overwhelm the user and increase the likelihood that they accept external support.

Critically, Teams presents multiple security warnings at first contact — external sender labels, Accept/Block prompts, spam and phishing indicators, and Safe Links checks. This attack succeeds only when users actively bypass those controls.

After consent is obtained, attackers establish interactive control via Quick Assist, perform rapid reconnaissance, stage DLL sideloading payloads, establish command and control infrastructure, move laterally via WinRM, deploy persistent RMM tooling, and exfiltrate data using Rclone — all within a single intrusion session.

Technical analysis

This intrusion chain begins with cross-tenant social engineering in Microsoft Teams, where external actors impersonate internal IT or helpdesk personnel to establish trust and prompt users into initiating remote support sessions. Once the user accepts the interaction and launches a tool such as Quick Assist, the attacker gains interactive control of the endpoint under the guise of legitimate support activity.

After initial access, the attacker performs rapid system reconnaissance to validate privileges, domain context and network reachability using native Windows utilities and lightweight command execution. This phase is typically short-lived and designed to quickly determine whether the host provides a viable pivot point.

The attack then transitions into execution and staging, where trusted, signed binaries are abused for DLL side-loading to execute attacker-controlled payloads under legitimate process contexts. Payloads are often placed in writable directories such as ProgramData and executed through renamed or abused vendor applications to blend into normal software behaviour.

To maintain persistence and operational flexibility, attackers may store encrypted configuration data within registry keys and decrypt it at runtime, reducing reliance on disk-based artefacts. Command and control is established over HTTPS, often using infrastructure that mimics legitimate software update traffic.

For lateral movement, adversaries leverage credential-backed remote administration protocols such as WinRM to pivot across domain-joined systems, with a focus on identity infrastructure and high-value assets. In parallel, additional remote management tools may be deployed to maintain redundant access paths.

In the final stage, targeted data exfiltration is performed using synchronisation utilities such as Rclone, with filters applied to selectively extract business-relevant data while minimising detection footprint. Throughout, the heavy reliance on legitimate tools and native protocols enables adversaries to blend into normal administrative and IT support activity.

Attack chain

#Stage
1Initial contact via Teams
2Remote access foothold
3Reconnaissance
4Payload staging and DLL sideloading
5Loader state via registry
6Command and control
7Lateral movement via WinRM
8Persistent RMM deployment
9Data exfiltration via Rclone

Attack flow from Teams helpdesk impersonation through to hands-on-keyboard activity

The stages in detail

1. Initial access via Teams social engineering. An external tenant impersonates IT or helpdesk in Microsoft Teams. The user receives a chat or call request appearing legitimate. The attacker may reinforce trust via voice phishing, and the user is convinced to launch Quick Assist or a similar remote support tool.

Initial access via Teams social engineering, stage one

Initial access via Teams social engineering, stage two

Initial access via Teams social engineering, stage three

Initial access via Teams social engineering, stage four

2. Remote access establishment. Execution of QuickAssist.exe, consent prompts handled via consent.exe, attacker gains interactive desktop control. A rapid transition from chat to system-level execution.

Remote access establishment during the intrusion

3. Reconnaissance and validation. Execution of whoami, ipconfig, nltest, route print; registry queries for OS and domain context; network reachability checks for lateral movement planning.

Reconnaissance and validation commands run by the attacker

4. Payload staging and execution. Dropped payloads in writable paths such as ProgramData, with DLL side-loading via signed binaries: AcroServicesUpdater2_x64.exe → msi.dll, ADNotificationManager.exe → vcruntime140_1.dll, DlpUserAgent.exe → mpclient.dll, werfault.exe → Faultrep.dll. Execution occurs under trusted application contexts.

Payload staging and execution from ProgramData

5. Persistence and loader behaviour. Registry-based encrypted payload storage in HKCU, in-memory decryption of configuration data, and fileless execution patterns aligned with loader frameworks.

Persistence and loader behaviour observed on the host

6. Command and control. Outbound HTTPS traffic over port 443, cloud-hosted and dynamically rotating infrastructure, beaconing disguised as legitimate update traffic.

7. Lateral movement. WinRM-based execution over TCP 5985, credential-backed movement across domain-joined systems, targeting identity infrastructure such as domain controllers.

8. Data exfiltration. Use of Rclone for selective synchronisation, file-type exclusions to reduce detection footprint, and upload to external cloud storage platforms.

Use of Rclone for selective synchronisation during exfiltration

MITRE ATT&CK Mapping

TacticTechniqueObserved behaviour
Initial AccessT1566.002Phishing via spearphishing link: Teams message delivers social engineering lure
ExecutionT1204.004Malicious copy and paste: user pastes clipboard content into Quick Assist or browser
Command & ControlT1219Remote access software: Quick Assist, AnyDesk, TeamViewer used for initial foothold
Defense EvasionT1574.001DLL sideloading: malicious DLLs loaded by signed legitimate executables
Defense EvasionT1112Modify registry: encrypted C2 config stored in HKCU registry keys
PersistenceT1053.005Scheduled task: used for payload persistence alongside RMM deployment
Lateral MovementT1021.006Remote services, WinRM: credential-backed pivot to domain controllers
Lateral MovementT1072Software deployment tools: RMM deployed via msiexec across hosts
ExecutionT1059.001PowerShell: used for download and staging activity
DiscoveryT1082System information discovery: whoami, systeminfo, hostname, nltest
DiscoveryT1016System network config discovery: ipconfig, arp, route print
Credential AccessT1552.001Credentials in files: harvested to enable WinRM lateral movement
ExfiltrationT1567Exfiltration to cloud storage: Rclone transfers to external cloud destination
Defense EvasionT1027Obfuscated files: encoded registry payloads; polyglot and encoded execution chains

Prevention and recommendations

  • Restrict external Microsoft Teams communication to trusted domains only
  • Enforce clear external tenant and sender labelling in Teams
  • Limit unsolicited cross-tenant contact and unknown helpdesk interactions
  • Apply device- and identity-based controls before allowing remote support sessions
  • Enable Safe Links for Microsoft Teams with time-of-click protection
  • Ensure Zero-hour Auto Purge is enabled for malicious message removal
  • Block or restrict remote support tools such as Quick Assist and similar RMM tools
  • Enable Attack Surface Reduction rules in block mode
  • Use Windows Defender Application Control to prevent DLL sideloading from ProgramData and AppData
  • Monitor for suspicious execution of signed or trusted binaries
  • Enforce MFA for all privileged actions
  • Require compliant and managed devices through Conditional Access policies
  • Restrict WinRM usage to authorised and hardened administrative workstations
  • Detect and monitor usage of data exfiltration tools such as Rclone
  • Enable Network Protection to block malicious or newly registered domains
  • Monitor registry modifications to persistence locations by non-installation processes
  • Detect abnormal outbound HTTPS beaconing patterns
  • Train users to identify helpdesk impersonation attempts in collaboration tools
  • Establish verbal authentication codes for IT helpdesk verification
  • Define and communicate official IT support channels and identifiers
  • Educate users on distinguishing external from internal Teams identities
  • Require reporting of unexpected helpdesk messages or security-related URLs
  • Treat all unsolicited external IT support contact as inherently suspicious

Detection

Teams to RMM correlation

let _timeFrame = 30m;
// Teams message signal
let _teams =
    MessageEvents
    | where Timestamp > ago(30d)
    | extend Recipient = parse_json(RecipientDetails)
    | mv-expand Recipient
    | extend
        VictimAccountObjectId = tostring(Recipient.RecipientObjectId),
        VictimRecipientDisplayName = tostring(Recipient.RecipientUserDisplayName)
    | project
        TTime = Timestamp,
        SenderEmailAddress,
        SenderDisplayName,
        VictimRecipientDisplayName,
        VictimAccountObjectId;

// RMM launches on endpoint side
let _rmm =
    DeviceProcessEvents
    | where Timestamp > ago(30d)
    | where FileName in~ ("QuickAssist.exe", "AnyDesk.exe", "TeamViewer.exe")
    | extend VictimAccountObjectId = tostring(InitiatingProcessAccountObjectId)
    | project
        DeviceName,
        QTime = Timestamp,
        RmmTool = FileName,
        VictimAccountObjectId;

_teams
| where isnotempty(VictimAccountObjectId)
| join kind=inner _rmm on VictimAccountObjectId
| where isnotempty(DeviceName)
| where QTime between ((TTime) .. (TTime + (_timeFrame)))
| project
    DeviceName,
    SenderEmailAddress,
    SenderDisplayName,
    VictimRecipientDisplayName,
    VictimAccountObjectId,
    TTime,
    QTime,
    RmmTool
| order by QTime desc

Execution

DeviceProcessEvents
| where Timestamp > ago(30d)
| where InitiatingProcessFileName =~ "cmd.exe"
| where FileName =~ "cmd.exe"
| where ProcessCommandLine has_all (
"/S /D /c",
"\" set /p=\"PK\"",
"1>"
)

ZIP to ProgramData service path to signed host sideload

let _timeFrame = 10m;
let _armOrDevice =
    DeviceFileEvents
    | where Timestamp > ago(30d)
    | where FolderPath startswith "C:\\ProgramData\\"
        or FolderPath startswith "D:\\ProgramData\\"
    | where ActionType in ("FileCreated", "FileRenamed")
    | where FileName endswith ".dll"
        or FileName endswith ".exe"
        or FileName endswith ".zip"
    | where FolderPath !has "\\Microsoft\\Windows Defender\\"
        and FolderPath !has "\\Microsoft\\Windows\\WER\\"
        and FolderPath !has "\\Package Cache\\"
        and FolderPath !has "\\Microsoft\\ClickToRun\\"
        and FolderPath !has "\\Dell\\"
        and FolderPath !has "\\Lenovo\\"
        and FolderPath !has "\\ASUS\\"
        and FolderPath !has "\\Adobe\\ARM\\"
    | project DeviceName, First=Timestamp, FileName, FolderPath;

let _hostRun =
    DeviceProcessEvents
    | where Timestamp > ago(30d)
    | where FileName in~ (
        "AcroServicesUpdater2_x64.exe",
        "DlpUserAgent.exe",
        "ADNotificationManager.exe",
        "werfault.exe"
    )
    | where FolderPath startswith "C:\\ProgramData\\"
        or FolderPath startswith "D:\\ProgramData\\"
    | where FolderPath !has "\\Microsoft\\Windows Defender\\"
        and FolderPath !has "\\Adobe\\ARM\\"
    | project
        DeviceName,
        Run=Timestamp,
        Host=FileName,
        ProcessCommandLine,
        ProcessFolderPath=FolderPath;

_armOrDevice
| join kind=inner _hostRun on DeviceName
| where Run between (First .. (First + (_timeFrame)))
| summarize
    First=min(First),
    Run=min(Run),
    Files=make_set(FileName, 10),
    Paths=make_set(FolderPath, 10)
    by DeviceName, Host, ProcessCommandLine, ProcessFolderPath
| order by Run desc

PowerShell to high-risk TLD, writing an EXE to AppData\Roaming

let _timeFrame = 5m;
let _psNet = DeviceNetworkEvents
| where Timestamp > ago(30d)
| where InitiatingProcessFileName in~ ("powershell.exe", "pwsh.exe")
| where RemoteUrl matches regex @"(?i)\.(top|xyz|zip|click)$"
| project DeviceName, NetTime=Timestamp, RemoteUrl, RemoteIP;

let _exeWrite = DeviceFileEvents
| where Timestamp > ago(30d)
| where FolderPath has @"\AppData\Roaming\" and FileName endswith ".exe"
| project DeviceName, WTime=Timestamp, FileName, FolderPath, SHA256;

_psNet
| join kind=inner _exeWrite on DeviceName
| where WTime between (NetTime .. (NetTime + (_timeFrame)))
| project
DeviceName,
NetTime,
RemoteUrl,
RemoteIP,
WTime,
FileName,
FolderPath,
SHA256
| order by WTime desc

Registry breadcrumbs and ASEP anomalies

DeviceRegistryEvents
| where Timestamp > ago(30d)
| where RegistryKey has @"\SOFTWARE\Classes\Local Settings\Software\Microsoft"
| where RegistryValueName in~ (
    "UCID",
    "UFID",
    "XJ01",
    "XJ02",
    "UXMP"
)
| where ActionType in (
    "RegistryValueSet",
    "RegistryValueDeleted"
)
| where InitiatingProcessFileName in~ (
    "AcroServicesUpdater2_x64.exe",
    "DlpUserAgent.exe",
    "ADNotificationManager.exe",
    "werfault.exe"
)
| project
    Timestamp,
    DeviceName,
    ActionType,
    RegistryKey,
    RegistryValueName,
    RegistryValueData,
    PreviousRegistryValueData,
    InitiatingProcessFileName
| order by Timestamp desc

Non-browser process to API Gateway, then internal AD and WinRM protocols

let _timeFrame = 10m;
let _net1 =
    DeviceNetworkEvents
    | where Timestamp > ago(30d)
    | where RemoteUrl has ".execute-api."
    | where isnotempty(InitiatingProcessFileName)
    | where InitiatingProcessFileName !in~ (
        "chrome.exe",
        "msedge.exe",
        "firefox.exe",
        "opera.exe",
        "brave.exe",
        "iexplore.exe"
    )
    | where InitiatingProcessFolderPath !startswith "C:\\Program Files"
        and InitiatingProcessFolderPath !startswith "C:\\Program Files (x86)"
    | project
        DeviceName,
        Proc=InitiatingProcessFileName,
        ProcPath=InitiatingProcessFolderPath,
        AccountName=InitiatingProcessAccountName,
        OutTime=Timestamp,
        RemoteUrl,
        C2IP=RemoteIP;

let _net2 =
    DeviceNetworkEvents
    | where Timestamp > ago(30d)
    | where RemotePort in (135, 389, 445, 636, 5985, 5986)
    | where isnotempty(InitiatingProcessFileName)
    | where InitiatingProcessFileName !in~ (
        "chrome.exe",
        "msedge.exe",
        "firefox.exe",
        "svchost.exe",
        "lsass.exe",
        "System"
    )
    | project
        DeviceName,
        Proc=InitiatingProcessFileName,
        InTime=Timestamp,
        InternalIP=RemoteIP,
        RemotePort;

_net1
| join kind=inner _net2 on DeviceName, Proc
| where InTime between (OutTime .. (OutTime + (_timeFrame)))
| project
    DeviceName,
    Proc,
    ProcPath,
    AccountName,
    OutTime,
    RemoteUrl,
    C2IP,
    InTime,
    InternalIP,
    RemotePort
| order by InTime desc

DLL side-loading through trusted signed applications, with HTTPS and WinRM outbound

let _timeFrame = 10m;
let _c2 =
    DeviceNetworkEvents
    | where Timestamp > ago(30d)
    | where InitiatingProcessFileName in~ (
        "AcroServicesUpdater2_x64.exe",
        "DlpUserAgent.exe",
        "ADNotificationManager.exe",
        "werfault.exe"
    )
    | where RemotePort == 443
    | project
        DeviceName,
        C2Time=Timestamp,
        InitiatingProcessFileName,
        C2IP=RemoteIP,
        C2Url=RemoteUrl;

let _winrm =
    DeviceNetworkEvents
    | where Timestamp > ago(30d)
    | where InitiatingProcessFileName in~ (
        "AcroServicesUpdater2_x64.exe",
        "DlpUserAgent.exe",
        "ADNotificationManager.exe",
        "werfault.exe"
    )
    | where RemotePort in (5985, 5986)
    | project
        DeviceName,
        WinRMTime=Timestamp,
        InitiatingProcessFileName,
        WinRMTarget=RemoteIP,
        WinRMPort=RemotePort;

_c2
| join kind=inner _winrm on DeviceName, InitiatingProcessFileName
| where WinRMTime between (C2Time .. (C2Time + (_timeFrame)))
| project
    DeviceName,
    InitiatingProcessFileName,
    C2Time,
    C2IP,
    C2Url,
    WinRMTime,
    WinRMTarget,
    WinRMPort
| order by C2Time desc

PowerShell history deletion

DeviceFileEvents
| where Timestamp > ago(30d)
| where FileName =~ "ConsoleHost_history.txt"
| where ActionType == "FileDeleted"
| where InitiatingProcessFileName in~ (
    "AcroServicesUpdater2_x64.exe",
    "DlpUserAgent.exe",
    "ADNotificationManager.exe",
    "werfault.exe",
    "cmd.exe",
    "powershell.exe",
    "pwsh.exe"
)
| project
    Timestamp,
    DeviceName,
    InitiatingProcessFileName,
    InitiatingProcessCommandLine,
    FolderPath
| order by Timestamp desc

Reconnaissance burst via cmd or PowerShell

let _reconWindow = 10m;
let _rmm =
    DeviceProcessEvents
    | where Timestamp > ago(30d)
    | where FileName in~ ("QuickAssist.exe", "AnyDesk.exe", "TeamViewer.exe")
    | project DeviceName, RMMTime=Timestamp;

let _recon =
    DeviceProcessEvents
    | where Timestamp > ago(30d)
    | where FileName in~ ("cmd.exe", "powershell.exe", "pwsh.exe")
    | where ProcessCommandLine has_any (
        "whoami",
        "nltest",
        "net user",
        "ipconfig /all",
        "arp -a",
        "route print",
        "query user",
        "whoami /all",
        "whoami /groups",
        "whoami /priv"
    )
    | where InitiatingProcessFileName !in~ (
        "m_agent_service.exe",
        "updater.exe",
        "msiexec.exe",
        "asussplendid.exe",
        "icloudhome.exe",
        "dropbox.exe",
        "code.exe",
        "TiWorker.exe",
        "MsMpEng.exe",
        "ccmexec.exe",
        "cscript.exe",
        "wscript.exe"
    )
    | where InitiatingProcessFileName !has "agent"
        and InitiatingProcessFileName !has "update"
        and InitiatingProcessFileName !has "install"
    | project
        Timestamp,
        DeviceName,
        FileName,
        InitiatingProcessFileName,
        ProcessCommandLine;

_rmm
| join kind=inner _recon on DeviceName
| where Timestamp between (RMMTime .. (RMMTime + (_reconWindow)))
| summarize
    RMMTime=min(RMMTime),
    eventCount=count(),
    FileNames=make_set(FileName),
    InitiatingProcessFileNames=make_set(InitiatingProcessFileName),
    ProcessCommandLines=make_set(ProcessCommandLine, 5)
    by DeviceName
| where eventCount > 2
| project
    DeviceName,
    RMMTime,
    eventCount,
    FileNames,
    InitiatingProcessFileNames,
    ProcessCommandLines
| order by eventCount desc

Data exfiltration

DeviceProcessEvents
| where Timestamp > ago(30d)
| where FileName =~ "rclone.exe" or ProcessVersionInfoOriginalFileName =~ "rclone.exe"
| where ProcessCommandLine has_all (
    "copy ",
    "--config rclone_uploader.conf",
    "--transfers 16",
    "--checkers 16",
    "--buffer-size 64M",
    "--max-age=3y",
    "--exclude *.mdf"
)

Quick Assist-anchored recon with no staging writes within ten minutes

let _reconWindow = 10m;
let _stageWindow = 15m;
let _rmm =
    DeviceProcessEvents
    | where Timestamp > ago(30d)
    | where FileName in~ ("QuickAssist.exe", "AnyDesk.exe", "TeamViewer.exe")
    | project DeviceName, RMMTime=Timestamp;

let _recon =
    DeviceProcessEvents
    | where Timestamp > ago(30d)
    | where FileName in~ ("cmd.exe", "powershell.exe", "pwsh.exe")
    | where ProcessCommandLine has_any (
        "whoami",
        "whoami /all",
        "whoami /groups",
        "whoami /priv",
        "nltest",
        "net user",
        "net localgroup",
        "query user",
        "ipconfig /all",
        "arp -a",
        "route print"
    )
    | where InitiatingProcessFileName !in~ (
        "m_agent_service.exe",
        "updater.exe",
        "msiexec.exe",
        "asussplendid.exe",
        "icloudhome.exe",
        "dropbox.exe",
        "code.exe",
        "explorer.exe",
        "TiWorker.exe",
        "MsMpEng.exe",
        "ccmexec.exe",
        "GoogleUpdate.exe",
        "setup.exe"
    )
    | where InitiatingProcessFileName !has "agent"
        and InitiatingProcessFileName !has "update"
        and InitiatingProcessFileName !has "install"
        and InitiatingProcessFileName !has "deploy"
    | where ProcessCommandLine !has "Program Files"
        and ProcessCommandLine !has "uninstall"
        and ProcessCommandLine !has "InventoryInstall"
        and ProcessCommandLine !has "spool\\drivers"
        and ProcessCommandLine !has "AppData\\Roaming\\Apple"
        and ProcessCommandLine !has "AppData\\Local\\Apple"
    | project
        DeviceName,
        ReconTime=Timestamp,
        ReconCmd=ProcessCommandLine,
        ReconProc=FileName,
        InitiatingProc=InitiatingProcessFileName;

let _staging =
    DeviceFileEvents
    | where Timestamp > ago(30d)
    | where ActionType in ("FileCreated", "FileRenamed")
    | where FileName endswith ".zip"
        or FileName endswith ".exe"
        or FileName endswith ".dll"
    | where FolderPath !has "\\Program Files"
        and FolderPath !has "\\Windows\\Temp"
        and FolderPath !has "\\Google\\"
        and FolderPath !has "\\Apple\\"
    | project
        DeviceName,
        STime=Timestamp,
        StageFile=FileName,
        StagePath=FolderPath;

let _rmmRecon =
    _rmm
    | join kind=inner _recon on DeviceName
    | where ReconTime between (RMMTime .. (RMMTime + (_reconWindow)))
    | project DeviceName, RMMTime, ReconTime, ReconProc, ReconCmd, InitiatingProc;

_rmmRecon
| join kind=leftouter _staging on DeviceName
| extend HasStagingInWindow = iff(
    STime between (RMMTime .. (RMMTime + (_stageWindow))), 1, 0)
| summarize HasStagingInWindow=max(HasStagingInWindow)
    by DeviceName, RMMTime, ReconTime, ReconProc, ReconCmd, InitiatingProc
| where HasStagingInWindow == 0
| project
    DeviceName,
    RMMTime,
    ReconTime,
    ReconProc,
    ReconCmd,
    InitiatingProc
| order by ReconTime desc

Trends and impact

This technique reflects a broader shift from traditional phishing to interactive social engineering attacks inside collaboration platforms. Rather than delivering payloads directly, attackers rely on users to initiate compromise themselves through trusted workflows.

Key trends include:

  • Increased abuse of Microsoft Teams external collaboration
  • Heavy reliance on legitimate remote support tools
  • Growth in helpdesk impersonation as a primary intrusion vector
  • Blending of human manipulation with legitimate administrative tooling

Impacted technologies

  • Microsoft Teams external collaboration features
  • Quick Assist and other remote support tools
  • Windows WinRM and native admin protocols
  • Microsoft Entra ID authentication workflows
  • Microsoft Defender for Endpoint telemetry
  • Cloud storage services used for exfiltration via Rclone

Why this is important

This campaign represents a meaningful evolution in enterprise social engineering: it requires no vulnerability, no malicious email attachment and no exploit kit. The attacker’s primary weapon is the enterprise’s own collaboration infrastructure, and the mechanism of delivery is a user who believes they are receiving legitimate IT support.

The business and operational risks are severe and compounding:

  • Domain controller compromise. WinRM-based lateral movement targeting identity infrastructure can result in full Active Directory takeover, enabling attackers to create persistent admin accounts, modify GPOs and establish long-term footholds that survive endpoint remediation.
  • Credential exfiltration at scale. Harvested credentials from a single endpoint can provide access to dozens of downstream systems, VPNs, cloud workloads and SaaS platforms.
  • Business data exfiltration. Rclone’s targeted file-type filtering indicates deliberate selection of commercially sensitive documents, contracts, financial data and strategic plans, creating regulatory breach notification risk under GDPR and sector-specific frameworks.
  • Stealth and dwell time. The use of signed legitimate executables, encrypted C2 configuration and commercial RMM platforms means this campaign consistently evades signature-based and network-level detection. Dwell time before detection significantly amplifies impact.
  • Compounding threat actor handoffs. In some campaigns, initial access brokers hand off to different threat actors mid-intrusion, meaning later stages can differ materially in objective and tooling.

This profile underscores how attackers increasingly weaponise the trust users place in enterprise collaboration platforms, and why identity-aware, behaviour-based detection across Teams, endpoint and network telemetry is now a fundamental requirement rather than an enhancement.

How Wizard Cyber can help

  • 24/7 monitoring through Microsoft Sentinel for cross-tenant impersonation patterns
  • Managed detection and response using Microsoft Defender for Endpoint
  • Threat hunting across identity and collaboration telemetry for early-stage social engineering indicators
  • Incident response support for containment of remote access abuse and lateral movement
  • Continuous exposure assessment aligned with Microsoft security best practices
  • Detection engineering for Teams-based impersonation and WinRM lateral movement patterns
Threat DetectionSocial EngineeringMicrosoft DefenderSecurity Operations

Ready to see the agents work?

Book a demo of CYBERSHIELD AI against a real scenario.