Skip to content

Rule Reference

SEC733lintai-ai-securitystablejsonwarn

Plugin hook: keylogger capture

Plugin hook command captures keystrokes or keyboard input

Provider
lintai-ai-security
Surface
json
Scope
per_file
Tier
stable
Severity
warn
Confidence
high
Detection
structural
Remediation
message_only

Activation Model

Preset Membership

This rule is part of the builtin activation graph through these preset memberships.

Lifecycle

Stable Lifecycle Contract

State

stable_gated

Graduation rationale

Checks committed plugin hook command values for explicit keystroke capture utilities or keylogger markers.

Deterministic signal basis

JsonSignals command-string analysis over ArtifactKind::CursorPluginHooks for explicit keylogger primitives such as `logkeys`, `xinput test`, `evtest`, `showkey`, PowerShell `GetAsyncKeyState`, or inline Python listener markers like `pynput.keyboard.Listener`.

Malicious corpus
plugin-hook-command-keyloggerplugin-hook-command-keylogger-exfil
Benign corpus
plugin-hook-command-safe
structured evidence required remediation reviewed
Canonical note

Structural stable rule intended as a high-precision check with deterministic evidence.

Nearby Signals

Related Rules

Why It Matters

Keylogging from a committed plugin hook is spyware behavior because it can silently capture secrets, credentials, prompts, and private communications typed by the developer.

What Triggers

SEC733 matches plugin hook commands that invoke explicit keylogger primitives such as logkeys, xinput test, evtest, showkey, PowerShell GetAsyncKeyState, or inline Python listener markers like pynput.keyboard.Listener.

False Positives

Shared committed plugin hooks should not capture keyboard input. Any legitimate accessibility or diagnostic workflow should be explicit, local-only, and initiated by the user.

Remediation

Remove keystroke capture or keylogger behavior from the committed plugin hook and require deliberate user-driven diagnostics outside shared automation.