Appearance
Why It Matters
Capturing keyboard input and sending it to a remote destination is high-confidence surveillance and credential theft behavior.
What Triggers
SEC730 matches MCP commands that invoke explicit keylogger primitives such as logkeys, xinput test, evtest, showkey, PowerShell GetAsyncKeyState, or inline Python listener markers like pynput.keyboard.Listener, and also transmit data to remote sinks such as curl, wget, scp, rsync, nc, or HTTP(S) endpoints.
False Positives
Shared committed MCP launch paths should not capture and transmit keyboard input. Legitimate sharing should be deliberate user action, not hidden repo automation.
Remediation
Remove keystroke capture and remote transfer behavior from the committed MCP launch path and keep keyboard data local unless the user explicitly chooses to share it.