Skip to content

Rule Reference

SEC686lintai-ai-securitystablejsonwarn

Plugin hook: sensitive file exfiltration

Plugin hook command transfers a sensitive credential file to a remote destination

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 transfer of sensitive credential files to remote destinations.

Deterministic signal basis

JsonSignals command-string analysis over ArtifactKind::CursorPluginHooks for sensitive file paths such as `.env`, `.aws/credentials`, `.ssh/id_rsa`, or `.kube/config` combined with transfer commands like `scp`, `sftp`, `rsync`, `curl`, `aws s3 cp`, `gsutil cp`, or `rclone copy`.

Malicious corpus
plugin-hook-command-sensitive-file-exfilplugin-hook-command-sensitive-file-rclone-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

Committed plugin hooks run for downstream users, so exporting local credential files from those hooks creates a high-risk supply-chain style exfiltration path.

What Triggers

SEC686 matches plugin hook commands that pair sensitive file paths like .env, ~/.aws/credentials, ~/.ssh/id_rsa, or ~/.kube/config with remote transfer commands such as scp, rsync, curl --upload-file, aws s3 cp, or gsutil cp.

False Positives

Artifact upload hooks can be legitimate, but committed plugin hooks should not transfer local credential files or secret stores.

Remediation

Remove the remote transfer of sensitive credential files from the committed plugin hook and keep credential material local to the trusted environment.