T1025 CrowdStrike LogScale · LogScale

Detect Data from Removable Media in CrowdStrike LogScale

Adversaries may search connected removable media on computers they have compromised to find files of interest. Sensitive data can be collected from any removable media (optical disk drive, USB memory, etc.) connected to the compromised system prior to exfiltration. Threat actors including APT28, Gamaredon Group, and OilRig have leveraged this technique. Malware families such as USBStealer, GravityRAT, Rover, Crimson, Crutch, and BADNEWS implement automated USB harvesting — copying files matching predefined extension lists (documents, credentials, archives) to staging directories for later exfiltration.

MITRE ATT&CK

Tactic
Collection
Technique
T1025 Data from Removable Media
Canonical reference
https://attack.mitre.org/techniques/T1025/

LogScale Detection Query

CrowdStrike LogScale (LogScale)
cql
// Branch 1: Bulk sensitive file writes to removable media
#event_simpleName = "PeNewExecutableWritten" OR #event_simpleName = "NewExecutableWritten" OR #event_simpleName = "MotionFileStat"
| TargetDirectoryName = /(?i)^[D-Z]:\\/
| TargetDirectoryName != /(?i)^C:\\/
| TargetFileName = /\.(doc|docx|xls|xlsx|pdf|ppt|pptx|txt|csv|kdbx|pfx|pem|key|p12|zip|rar|7z|bak|sql|db|sqlite|conf|config|xml|json)$/i
| groupBy([ComputerName, UserName, FileName], function=[
    count(aid, as=EventCount),
    collect(TargetFileName, limit=10, as=FileList),
    collect(TargetDirectoryName, limit=5, as=FolderList),
    min(@timestamp, as=FirstSeen),
    max(@timestamp, as=LastSeen)
  ])
| EventCount >= 20
| eval Severity = if(EventCount >= 100, "Critical",
    if(EventCount >= 50, "High",
    if(EventCount >= 20, "Medium", "Low")))
| eval DetectionType = "BulkRemovableMediaAccess"

// Branch 2: Suspicious process accessing removable media
// Run separately or union
#event_simpleName = "ProcessRollup2"
| CommandLine = /(?i)[D-Z]:\\/
| CommandLine != /(?i)C:\\/
| FileName = /(?i)(powershell|pwsh|cmd|wscript|cscript|mshta|rundll32|python|xcopy|robocopy|forfiles)\.exe$/
| groupBy([ComputerName, UserName, FileName, CommandLine], function=[
    count(aid, as=EventCount),
    min(@timestamp, as=FirstSeen),
    max(@timestamp, as=LastSeen)
  ])
| EventCount >= 1
| eval DetectionType = "SuspiciousProcessRemovableAccess"
| eval Severity = "High"
high severity medium confidence

CrowdStrike LogScale (Falcon) CQL query detecting T1025 data collection from removable media. Branch 1 detects bulk writes of sensitive file types to non-C drive paths using file write events, aggregating by host/user with a 20+ event threshold. Branch 2 detects known suspicious processes (PowerShell, cmd, xcopy, robocopy, etc.) with command lines referencing removable drive letters via ProcessRollup2 events.

Data Sources

CrowdStrike Falcon EDRCrowdStrike Falcon LogScale (Humio)Falcon Insight XDR endpoint telemetry

Required Tables

ProcessRollup2PeNewExecutableWrittenNewExecutableWrittenMotionFileStat

False Positives & Tuning

  • CrowdStrike Falcon's own USB quarantine or scanning processes writing to removable drives
  • IT endpoint management tools (SCCM, Intune) deploying via USB media
  • Legitimate user file transfers to USB drives for data portability
  • Automated kiosk or conference room systems using USB-based content delivery
Download portable Sigma rule (.yml)

Other platforms for T1025


Testing Methodology

Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1Bulk File Collection from USB Drive via PowerShell Copy-Item

    Expected signal: Sysmon Event ID 1: Process Create for powershell.exe with CommandLine containing 'Get-ChildItem', 'Copy-Item', and the fake USB path. Sysmon Event ID 11: File Create events for each copied file in the staging directory. DeviceFileEvents: multiple FileRead and FileCreated entries for the extension sweep. DeviceProcessEvents: PowerShell process with copy pipeline command line.

  2. Test 2Removable Media Enumeration via CMD dir and xcopy

    Expected signal: Sysmon Event ID 1: Process Create for cmd.exe and xcopy.exe with command lines showing the target path. Sysmon Event ID 11: File Create events for each file copied to usb_collect. Security Event ID 4688 (with command line auditing enabled) for cmd.exe and xcopy.exe. DeviceFileEvents: xcopy.exe performing FileRead on source and FileCreated on destination.

  3. Test 3Credential File Targeted Collection from Removable Media

    Expected signal: Sysmon Event ID 1: PowerShell process with Get-ChildItem filtering .kdbx/.pfx/.key extensions and Copy-Item to staging. Sysmon Event ID 11: File Create events for .kdbx, .pfx, id_rsa, .key in the staging directory. DeviceFileEvents: FileRead on credential-extension files. The credential-targeted hunting query will match immediately on file extensions.

  4. Test 4Robocopy Mirroring of Removable Media to Network Share

    Expected signal: Sysmon Event ID 1: Process Create for robocopy.exe with source path, destination path, /E /COPYALL flags. Sysmon Event ID 11: File Create events for all mirrored files in staging directory. Sysmon Event ID 11: Log file creation (%TEMP%\robocopy_collection.log). DeviceFileEvents: robocopy.exe FileRead from source and FileCreated at destination.

Unlock Pro Content

Get the full detection package for T1025 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections