Skip to content

Microsoft Teams Forensics & Collaboration Triage

1. The Microsoft Teams Substrate Storage Disparity

Section titled “1. The Microsoft Teams Substrate Storage Disparity”

To investigate Teams incidents, forensic practitioners must master the underlying storage architecture that maps Teams communication artifacts to backing workloads:

graph TD
subgraph TeamsClient ["Microsoft Teams Presentation Tier (Client Apps & Web)"]
Chat11["1:1 & Group Private Chats"]
ChanMsg["Standard & Shared Channel Messages"]
ChanFiles["Channel File Attachments"]
ChatFiles["1:1 Chat File Attachments"]
Recordings["Meeting Audio/Video Recordings"]
Voice["Voicemails & Call Transcripts"]
end
subgraph BackingWorkloads ["Azure Substrate Storage Subsystems"]
UserMBX["User Mailbox (Exchange Online)<br/>Hidden Folder: /TeamsChat"]
GroupMBX["Group Mailbox (Exchange Online)<br/>Hidden Folder: /Conversation History/Teams"]
SPOSite["SharePoint Team Site<br/>Document Library: /Shared Documents/ChannelName/"]
ODBDrive["Sender's OneDrive for Business<br/>Folder: /Documents/Microsoft Teams Chat Files/"]
MediaSPO["SharePoint / OneDrive Root<br/>Folder: /Recordings/"]
end
Chat11 --> UserMBX
ChanMsg --> GroupMBX
ChanFiles --> SPOSite
ChatFiles --> ODBDrive
Recordings --> MediaSPO
Voice --> UserMBX
Communication ArtifactPrimary Underlying StorageSecondary Compliance IngestionRetention & Discovery Engine
1:1 & Group ChatsAzure Chat Service (Middle Tier)Ingested into each participant’s Exchange Mailbox (TeamsChat)Purview eDiscovery (Exchange Location)
Channel MessagesAzure Chat Service (Middle Tier)Ingested into the M365 Group Mailbox (Conversation History/Teams)Purview eDiscovery (Exchange Location)
Private Channel ChatsAzure Chat Service (Middle Tier)Ingested into the personal mailboxes of private channel membersPurview eDiscovery (Exchange Location)
Channel FilesSharePoint Team Site CollectionStored in document library: Shared Documents/<ChannelName>SharePoint Forensics (FileAccessed, FileDownloaded)
1:1 Chat FilesSender’s OneDrive for BusinessStored under Documents/Microsoft Teams Chat Files with auto-shared ACLsOneDrive Forensics (FileDownloaded, SharingSet)
Meeting RecordingsSharePoint (Channel) or OneDrive (1:1)Media blob saved under Recordings/Purview UAL (FileDownloaded)

2. Teams Attack Vectors & External Federation Risks

Section titled “2. Teams Attack Vectors & External Federation Risks”

Adversaries exploit Microsoft Teams to achieve initial access, execute social engineering, and exfiltrate sensitive files.

flowchart TD
AttackVector[Teams Threat Vectors] --> ExtFed[1. External Federation & Guest Access]
AttackVector --> PhishLure[2. Weaponized File Sharing]
AttackVector --> AppSvc[3. Malicious Teams Bots / Webhooks]
ExtFed --> ExtChat[Attacker initiates 1:1 chat from external tenant]
ExtChat --> Evasion[Bypasses email security gateway / SEG filters]
PhishLure --> CloudStorage[Attacker shares OneDrive link to malware in chat]
CloudStorage --> AutoPermission[Teams auto-provisions access permissions to victim]
AppSvc --> WebhookExfil[Incoming Webhook deployed to exfiltrate channel messages]

1. External Federation Exploitation (Cross-Tenant Social Engineering)

Section titled “1. External Federation Exploitation (Cross-Tenant Social Engineering)”

If the tenant’s external access policies allow communication with external domains, an attacker in an unvetted Microsoft 365 tenant can initiate direct 1:1 chats with internal employees.

  • Bypass Advantage: Communication completely circumvents Secure Email Gateways (SEGs), Cisco SEG, Proofpoint, and standard email DMARC/SPF defenses.
  • Visual Deception: Threat actors configure their external tenant display name to match “IT Support”, “Helpdesk Security”, or “Payroll Department”.

When a user uploads a file into a 1:1 Teams chat, Teams automatically stores the file in the sender’s OneDrive and grants view permissions to all chat participants. Threat actors use this automated sharing pipeline to drop malicious payloads (.vhd, .iso, or password-protected archives) that appear natively hosted on trusted corporate SharePoint infrastructure.

3. Malicious Incoming Webhooks & Rogue Apps

Section titled “3. Malicious Incoming Webhooks & Rogue Apps”

Adversaries who compromise a Teams team create Incoming Webhooks to continuously exfiltrate sensitive chat threads to external C2 listeners without requiring interactive sign-ins.


Teams audit events are captured in the Purview Unified Audit Log under the MicrosoftTeams workload.

OperationAction LoggedCritical FieldsForensic Utility
MemberAddedUser or external guest added to a teamMembers, TeamName, TeamGuidIdentifies unauthorized guest insertion
TeamCreatedNew team provisionedTeamName, Owner, PrivacyTracks shadow IT and adversary command teams
ChannelAddedStandard or private channel createdChannelName, ChannelTypeDetects staging channels created by attackers
AppInstalledThird-party bot or integration installedAppId, AddOnNameUncovers malicious data-scraping applications
MessageSentMessage compliance audit (E5 required)MessageId, Sender, RecipientReconstructs chat communications via eDiscovery
TabAddedNew tab or external website embedded in channelTabName, TabUrlDetects credential harvesting sites embedded in Teams

4. Detection Engineering: Teams Hunting Queries

Section titled “4. Detection Engineering: Teams Hunting Queries”
// Detect external guests added to sensitive teams
CloudAppEvents
| where TimeGenerated >= ago(14d)
| where ActionType == "MemberAdded"
| extend Workload = tostring(RawEventData.Workload)
| where Workload =~ "MicrosoftTeams"
| extend TeamName = tostring(RawEventData.TeamName)
| extend MemberList = RawEventData.Members
| mv-expand MemberList
| extend MemberUPN = tostring(MemberList.UPN)
| where MemberUPN contains "#EXT#" or MemberUPN !endswith "@contoso.com"
| project TimeGenerated, AccountDisplayName, TeamName, MemberUPN, IPAddress, RawEventData
| sort by TimeGenerated desc

5. Forensic Extraction via Purview eDiscovery

Section titled “5. Forensic Extraction via Purview eDiscovery”

Because chat messages are synchronized into the Azure Substrate, investigators extract complete chat transcripts using Purview Content Search:

  1. Target Exchange Mailboxes of Chat Participants: To extract 1:1 chats, target the individual Exchange Online mailboxes of all suspected participants:

    Terminal window
    Connect-IPPSSession
    New-ComplianceSearch -Name "IR_TeamsChat_Investigation" `
    -ExchangeLocation "victim@contoso.com", "suspect@contoso.com" `
    -ContentMatchQuery '(kind:im) AND (Received >= "2026-09-01" AND Received <= "2026-09-17")'
    Start-ComplianceSearch -Name "IR_TeamsChat_Investigation"
  2. Target Group Mailboxes for Channel Chats: To extract standard channel messages, target the backing Office 365 Group mailbox:

    Terminal window
    New-ComplianceSearch -Name "IR_TeamsChannel_Investigation" `
    -ExchangeLocation "FinanceTeam@contoso.com" `
    -ContentMatchQuery '(kind:im)'
    Start-ComplianceSearch -Name "IR_TeamsChannel_Investigation"
  3. Export and Reconstruct Threads: Export search results as .pst or individual .eml files. Review the hidden TeamsChat folder using forensic email parsers to inspect message timestamps, reactions, and embedded file sharing cards.


Section titled “6. Related Intelligence & Cross-References”