Detect Clipboard Data in Sumo Logic CSE
Adversaries may collect data stored in the clipboard from users copying information within or between applications. On Windows, adversaries can read clipboard contents using PowerShell's Get-Clipboard cmdlet, the Win32 API functions OpenClipboard() and GetClipboardData(), or by invoking clip.exe in combination with scripting. macOS and Linux provide pbpaste and xclip/xsel utilities respectively. Clipboard content frequently contains high-value data including passwords copied from password managers, authentication tokens, cryptocurrency wallet addresses, PII, and internal URLs. Advanced malware such as Agent Tesla, RTM, Astaroth, CHIMNEYSWEEP, and DarkComet implement persistent clipboard monitoring loops that exfiltrate captured content, while crypto-clippers (a subclass) additionally replace clipboard content with attacker-controlled values to hijack cryptocurrency transactions.
MITRE ATT&CK
- Tactic
- Collection
- Technique
- T1115 Clipboard Data
- Canonical reference
- https://attack.mitre.org/techniques/T1115/
Sumo Detection Query
_sourceCategory="*windows*sysmon*" OR _sourceCategory="*endpoint*process*"
| json auto
| where EventID = "1" OR event_id = "1"
| eval image = lower(Image)
| eval cmdline = lower(CommandLine)
| eval parent = lower(ParentImage)
// Branch 1: Script engines using clipboard APIs
| eval is_script_engine = if(image matches "/(powershell\.exe|pwsh\.exe|python[0-9]*\.exe|wscript\.exe|cscript\.exe|mshta\.exe|perl\.exe|ruby\.exe|node\.exe)$/", 1, 0)
| eval has_clipboard_api = if(cmdline matches "/(get-clipboard|getclipboard|openclipboard|getclipboarddata|win32clipboard|pyperclip|clipboard\.paste|system\.windows\.forms\.clipboard|clipboard::gettext|clipboard\.gettext|getopencl ipboardwindow)/", 1, 0)
// Branch 2: Native clipboard utilities from suspicious parents
| eval is_clip_util = if(image matches "/(clip\.exe|xclip|xsel|xdotool|pbpaste)$/", 1, 0)
| eval suspicious_parent = if(parent matches "/(winword\.exe|excel\.exe|powerpnt\.exe|outlook\.exe|mshta\.exe|wscript\.exe|cscript\.exe|regsvr32\.exe|rundll32\.exe|msiexec\.exe|python[0-9]*\.exe|perl\.exe|ruby\.exe|node\.exe)/", 1, 0)
// Branch 3: Clipboard monitoring loop
| eval is_clipboard_loop = if((cmdline matches "/get-clipboard/") AND (cmdline matches "/(while|start-sleep|foreach|-loop)/"), 1, 0)
// Scoring
| eval clipboard_score = has_clipboard_api + is_clip_util + is_clipboard_loop
| eval suspicion_score = clipboard_score
+ if(is_script_engine = 1 AND has_clipboard_api = 1, 1, 0)
+ if(is_clip_util = 1 AND suspicious_parent = 1, 1, 0)
+ if(is_clipboard_loop = 1, 2, 0)
| where suspicion_score > 0
| eval detection_branch = if(is_clipboard_loop = 1, "ClipboardMonitoringLoop",
if(is_script_engine = 1 AND has_clipboard_api = 1, "ScriptClipboardAccess",
if(is_clip_util = 1 AND suspicious_parent = 1, "ClipboardUtilitySuspiciousParent",
"Informational")))
| fields _messageTime, ComputerName, User, Image, CommandLine, ParentImage, ParentCommandLine, detection_branch, has_clipboard_api, is_clip_util, is_clipboard_loop, suspicion_score
| sort by suspicion_score desc, _messageTime desc Sumo Logic CSE query targeting Sysmon process creation events (EventID 1) to detect clipboard data theft across three behavioral branches: scripting engines calling clipboard APIs, native clipboard utilities spawned from suspicious parents, and persistent clipboard monitoring loops. Outputs a suspicion score and detection branch for analyst triage.
Data Sources
Required Tables
False Positives & Tuning
- Legitimate clipboard manager applications (e.g., Ditto, ClipboardFusion) that use system APIs to monitor and persist clipboard history on user workstations
- Accessibility software and screen readers that access clipboard content as part of assistive technology workflows
- Enterprise endpoint management agents or MDM tools that run PowerShell clipboard operations during provisioning or configuration management tasks
Other platforms for T1115
Testing Methodology
Validate this detection against 5 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.
- Test 1PowerShell Clipboard Harvest via Get-Clipboard
Expected signal: Sysmon Event ID 1: Process Create with Image=powershell.exe, CommandLine containing 'Get-Clipboard'. Sysmon Event ID 11: File Create for %TEMP%\df00tech-clip-test.txt. PowerShell ScriptBlock Log Event ID 4104 showing the full Get-Clipboard invocation. Security Event ID 4688 if command line auditing is enabled.
- Test 2PowerShell Persistent Clipboard Monitoring Loop
Expected signal: Sysmon Event ID 1: Process Create with CommandLine containing 'Get-Clipboard', 'while', 'Start-Sleep', and '-WindowStyle Hidden'. PowerShell ScriptBlock Log Event ID 4104 showing the full loop. Sysmon Event ID 11: File Create and multiple File Modify events for the staging file. Multiple writes to the staging file visible in DeviceFileEvents.
- Test 3Python Clipboard Theft via win32clipboard
Expected signal: Sysmon Event ID 1: Process Create with Image=python.exe, CommandLine containing 'win32clipboard', 'OpenClipboard', and 'GetClipboardData'. Security Event ID 4688 if command line auditing is enabled. Note: requires pywin32 package installed (pip install pywin32).
- Test 4Linux Clipboard Exfiltration via xclip
Expected signal: Auditd syscall log with EXECVE for xclip with arguments '-selection clipboard -o'. Syslog process creation event for xclip. File creation event for /tmp/df00tech-clipboard-capture.txt. If Sysmon for Linux is deployed: EventCode=1 with Image=/usr/bin/xclip.
- Test 5macOS Clipboard Collection via pbpaste
Expected signal: macOS Unified Log (ULS): process creation for pbpaste with arguments. File creation for /tmp/df00tech-clipboard-macos.txt. If Jamf or similar MDM telemetry is deployed, process execution event with parent shell context. ESF (Endpoint Security Framework) events if EDR is deployed.
References (10)
- https://attack.mitre.org/techniques/T1115/
- https://msdn.microsoft.com/en-us/library/ms649012
- https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/clip
- https://www.cisa.gov/uscert/ncas/alerts/aa21-200b
- https://blog.reversinglabs.com/blog/mining-for-malicious-ruby-gems
- https://medium.com/rvrsh3ll/operating-with-empyre-ea764eda3363
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1115/T1115.md
- https://learn.microsoft.com/en-us/defender-endpoint/advanced-hunting-deviceprocessevents-table
- https://github.com/SigmaHQ/sigma/tree/master/rules/windows
- https://www.fortinet.com/blog/threat-research/analysis-of-new-agent-tesla-spyware-variant
Unlock Pro Content
Get the full detection package for T1115 including response playbook, investigation guide, and atomic red team tests.